Skip to content

Commit

Permalink
feat: add contract name when deploying
Browse files Browse the repository at this point in the history
  • Loading branch information
0xAustrian committed Sep 11, 2024
1 parent 4b207be commit ab5aa16
Show file tree
Hide file tree
Showing 9 changed files with 35 additions and 18 deletions.
5 changes: 3 additions & 2 deletions script/DeployBase.sol
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,12 @@ import {Script, console} from "forge-std/Script.sol";
abstract contract DeployBase is Script {
function run() public {
vm.startBroadcast();
address _contract = _deploy();
(address _contract, string memory _contractName) = _deploy();
vm.stopBroadcast();

console.log("Contract name: %s", _contractName);
console.log("Deployed contract at address: %s", _contract);
}

function _deploy() internal virtual returns (address _contract) {}
function _deploy() internal virtual returns (address _contract, string memory _contractName) {}
}
6 changes: 4 additions & 2 deletions script/DeployDirectAllocation.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ import {DeployBase} from "script/DeployBase.sol";
import {DirectAllocationStrategy} from "contracts/strategies/examples/direct-allocation/DirectAllocation.sol";

contract DeployDirectAllocation is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
return address(new DirectAllocationStrategy(_allo));

_contract = address(new DirectAllocationStrategy(_allo));
_contractName = "DirectAllocationStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployDonationVotingMerkleDistribution.sol
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@ import {DonationVotingMerkleDistribution} from
"contracts/strategies/examples/donation-voting/DonationVotingMerkleDistribution.sol";

contract DeployDonationVotingMerkleDistribution is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
bool _directTransfer = vm.envBool("DONATION_VOTING_MERKLE_DISTRIBUTION_IS_DIRECT_TRANSFER");
return address(new DonationVotingMerkleDistribution(_allo, _directTransfer));

_contract = address(new DonationVotingMerkleDistribution(_allo, _directTransfer));
_contractName = "DonationVotingMerkleDistributionStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployDonationVotingOffchain.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ import {DeployBase} from "script/DeployBase.sol";
import {DonationVotingOffchain} from "contracts/strategies/examples/donation-voting/DonationVotingOffchain.sol";

contract DeployDonationVotingOffchain is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
bool _directTransfer = vm.envBool("DONATION_VOTING_OFFCHAIN_IS_DIRECT_TRANSFER");
return address(new DonationVotingOffchain(_allo, _directTransfer));

_contract = address(new DonationVotingOffchain(_allo, _directTransfer));
_contractName = "DonationVotingOffchainStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployDonationVotingOnchain.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ import {DeployBase} from "script/DeployBase.sol";
import {DonationVotingOnchain} from "contracts/strategies/examples/donation-voting/DonationVotingOnchain.sol";

contract DeployDonationVotingOnchain is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
return address(new DonationVotingOnchain(_allo));

_contract = address(new DonationVotingOnchain(_allo));
_contractName = "DonationVotingOnchainStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployEasyRPGF.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ import {DeployBase} from "script/DeployBase.sol";
import {EasyRPGF} from "contracts/strategies/examples/easy-rpgf/EasyRPGF.sol";

contract DeployEasyRPGF is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
return address(new EasyRPGF(_allo));

_contract = address(new EasyRPGF(_allo));
_contractName = "EasyRPGFStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployQVImpactStream.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ import {DeployBase} from "script/DeployBase.sol";
import {QVImpactStream} from "contracts/strategies/examples/impact-stream/QVImpactStream.sol";

contract DeployQVImpactStream is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
return address(new QVImpactStream(_allo));

_contract = address(new QVImpactStream(_allo));
_contractName = "QVImpactStreamStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployQVSimple.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ import {DeployBase} from "script/DeployBase.sol";
import {QVSimple} from "contracts/strategies/examples/quadratic-voting/QVSimple.sol";

contract DeployQVSimple is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
return address(new QVSimple(_allo));

_contract = address(new QVSimple(_allo));
_contractName = "QVSimpleStrategy";
}
}
6 changes: 4 additions & 2 deletions script/DeployRFPSimple.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ import {DeployBase} from "script/DeployBase.sol";
import {RFPSimple} from "contracts/strategies/examples/rfp/RFPSimple.sol";

contract DeployRFPSimple is DeployBase {
function _deploy() internal override returns (address _contract) {
function _deploy() internal override returns (address _contract, string memory _contractName) {
address _allo = vm.envAddress("ALLO_ADDRESS");
return address(new RFPSimple(_allo));

_contract = address(new RFPSimple(_allo));
_contractName = "RFPSimpleStrategy";
}
}

0 comments on commit ab5aa16

Please sign in to comment.