Skip to content

Commit

Permalink
feat: explicitly define roles in staker deploy script
Browse files Browse the repository at this point in the history
  • Loading branch information
sandybradley committed Nov 21, 2023
1 parent 9eec56b commit e12dc92
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 2 deletions.
18 changes: 16 additions & 2 deletions script/DeployStaker.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ contract DeployStakerScript is Script {
error UnknownChain();

function run() public {
address authority = 0x617c8dE5BdE54ffbb8d92716CC947858cA38f582;
address authority = tx.origin; // make deployer initial authority for setup
address operator = 0xA0766B65A4f7B1da79a1AF79aC695456eFa28644; // manifoldfinance.eth
address multisig = 0x617c8dE5BdE54ffbb8d92716CC947858cA38f582;
uint256 chainId;
address beaconDepositContract;
address weth;
Expand All @@ -35,7 +37,19 @@ contract DeployStakerScript is Script {
vm.startBroadcast();

// deploy staking module
new WagyuStaker(authority, beaconDepositContract, mevEth, authority);
WagyuStaker wagyu = new WagyuStaker(authority, beaconDepositContract, mevEth, multisig);

// setup roles
// multisig is admin
wagyu.addAdmin(multisig);
if (authority != operator) {
// manifoldfinance.eth is operator
wagyu.addOperator(operator);
// remove deployer as operator
wagyu.deleteOperator(authority);
}
// remove deployer as admin
wagyu.deleteAdmin(authority);

vm.stopBroadcast();
}
Expand Down
24 changes: 24 additions & 0 deletions test/DeployStaker.t.sol
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/// SPDX: License-Identifier: MIT
pragma solidity ^0.8.19;

// Test utils
import "forge-std/Test.sol";

// Deploy script
import "script/DeployStaker.s.sol";

contract DeployStakerTest is Test {
string RPC_ETH_MAINNET = vm.envString("RPC_MAINNET");
uint256 FORK_ID;
DeployStakerScript deploy;

function setUp() public virtual {
FORK_ID = vm.createSelectFork(RPC_ETH_MAINNET);
deploy = new DeployStakerScript();
}

function testDeployStaker() public virtual {
vm.selectFork(FORK_ID);
deploy.run();
}
}

0 comments on commit e12dc92

Please sign in to comment.