diff --git a/.env.dist b/.env.dist index ffed0a5..1c6febe 100644 --- a/.env.dist +++ b/.env.dist @@ -3,3 +3,4 @@ ETHERSCAN_API_KEY= DEFAULT_FEE=2800 GOERLI_RPC_URL=https://ethereum-goerli.publicnode.com HOLESKY_RPC_URL=https://ethereum-holesky.publicnode.com +MAINNET_RPC_URL=https://eth.llamarpc.com diff --git a/foundry.toml b/foundry.toml index dce38e2..319617f 100644 --- a/foundry.toml +++ b/foundry.toml @@ -8,6 +8,7 @@ libs = ["lib"] [rpc_endpoints] goerli = "${GOERLI_RPC_URL}" holesky = "${HOLESKY_RPC_URL}" +mainnet = "${MAINNET_RPC_URL}" [etherscan] all_chains = { key = "${ETHERSCAN_API_KEY}" } diff --git a/script/ChangeDefaultFee.s.sol b/script/ChangeDefaultFee.s.sol new file mode 100644 index 0000000..75006be --- /dev/null +++ b/script/ChangeDefaultFee.s.sol @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: Apache License 2.0 +pragma solidity ^0.8.13; + +import "forge-std/Script.sol"; +import "../src/FeeRewardsManager.sol"; + +contract ChangeFee is Script { + function run() external { + FeeRewardsManager feeRewardsManager = FeeRewardsManager( + FeeRewardsManager( + payable(address(vm.envAddress("FEE_REWARDS_MANAGER"))) + ) + ); + vm.startBroadcast(); + feeRewardsManager.changeDefaultFee(uint32(vm.envUint("NEW_FEE"))); + vm.stopBroadcast(); + } +} diff --git a/script/DeployCollector.s.sol b/script/DeployCollector.s.sol new file mode 100644 index 0000000..4ea79a7 --- /dev/null +++ b/script/DeployCollector.s.sol @@ -0,0 +1,20 @@ +// SPDX-License-Identifier: Apache License 2.0 +pragma solidity ^0.8.13; + +import "forge-std/Script.sol"; +import "../src/FeeRewardsManager.sol"; + +contract DeployCollector is Script { + function run() external { + vm.startBroadcast(); + FeeRewardsManager feeRewardsManager = FeeRewardsManager( + FeeRewardsManager( + payable(address(vm.envAddress("FEE_REWARDS_MANAGER"))) + ) + ); + feeRewardsManager.createFeeContract( + vm.envAddress("WITHDRAWAL_CREDENTIAL") + ); + vm.stopBroadcast(); + } +} diff --git a/script/DisplayCollectorContract.s.sol b/script/DisplayCollectorContract.s.sol new file mode 100644 index 0000000..a9dc53f --- /dev/null +++ b/script/DisplayCollectorContract.s.sol @@ -0,0 +1,20 @@ +// SPDX-License-Identifier: Apache License 2.0 +pragma solidity ^0.8.13; + +import "forge-std/Script.sol"; +import "../src/FeeRewardsManager.sol"; +import "forge-std/console.sol"; + +contract DisplayCollector is Script { + function run() external { + FeeRewardsManager feeRewardsManager = FeeRewardsManager( + FeeRewardsManager( + payable(address(vm.envAddress("FEE_REWARDS_MANAGER"))) + ) + ); + address addr = feeRewardsManager.predictFeeContractAddress( + vm.envAddress("WITHDRAWAL_CREDENTIAL") + ); + console.log(addr); + } +}