From 74ea961ecfbf6adfd4ae67504c6a195053eeeaff Mon Sep 17 00:00:00 2001 From: Anna Carroll Date: Mon, 22 Sep 2025 15:18:38 -0400 Subject: [PATCH] feat: make deploy params fully customizable --- .github/workflows/cd.yml | 4 ++-- script/Zenith.s.sol | 13 ++++++++----- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index ca36015..5851550 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -50,8 +50,8 @@ jobs: environment: dev forge-deployment-contract: ZenithScript forge-deployment-script-file: Zenith.s.sol - forge-deployment-signature: "deploy(uint256,address,address[],address,address)" - forge-deployment-params: "17001 0x11Aa4EBFbf7a481617c719a2Df028c9DA1a219aa [] 0x29403F107781ea45Bf93710abf8df13F67f2008f 0x000000000022D473030F116dDEE9F6B43aC78BA3" + forge-deployment-signature: "deploy(uint256,address,address,address,address[],address,uint256,uint256)" + forge-deployment-params: "17001 0x29403F107781ea45Bf93710abf8df13F67f2008f 0x11Aa4EBFbf7a481617c719a2Df028c9DA1a219aa 0x29403F107781ea45Bf93710abf8df13F67f2008f [] 0x000000000022D473030F116dDEE9F6B43aC78BA3 30000000 5000000" etherscan-url: https://holesky.etherscan.io chain-id: 17000 deployer-address: ${{ vars.HOLESKY_DEPLOYER_ADDRESS }} diff --git a/script/Zenith.s.sol b/script/Zenith.s.sol index 091358e..b0ea3ad 100644 --- a/script/Zenith.s.sol +++ b/script/Zenith.s.sol @@ -11,19 +11,22 @@ import {Script} from "forge-std/Script.sol"; contract ZenithScript is Script { // deploy: - // forge script ZenithScript --sig "deploy(uint256,address,address[],address,address)" --rpc-url $RPC_URL --etherscan-api-key $ETHERSCAN_API_KEY --private-key $PRIVATE_KEY --broadcast --verify $ROLLUP_CHAIN_ID $WITHDRAWAL_ADMIN_ADDRESS $INITIAL_ENTER_TOKENS_ARRAY $SEQUENCER_AND_GAS_ADMIN_ADDRESS $PERMIT_2 + // forge script ZenithScript --sig "deploy(uint256,address,address,address,address[],address,uint256,uint256)" --rpc-url $RPC_URL --broadcast $ROLLUP_CHAIN_ID $SEQUENCER_ADMIN_ADDRESS $WITHDRAWAL_ADMIN_ADDRESS $GAS_ADMIN_ADDRESS $INITIAL_ENTER_TOKENS_ARRAY $PERMIT2_ADDRESS $PER_BLOCK_GAS_LIMIT $PER_TRANSACT_GAS_LIMIT [signing args] [--etherscan-api-key $ETHERSCAN_API_KEY --verify] function deploy( uint256 defaultRollupChainId, + address sequencerAdmin, address withdrawalAdmin, + address gasAdmin, address[] memory initialEnterTokens, - address sequencerAndGasAdmin, - address permit2 + address permit2, + uint256 perBlockGasLimit, + uint256 perTransactGasLimit ) public returns (Zenith z, Passage p, Transactor t, HostOrders m) { vm.startBroadcast(); - z = new Zenith{salt: "zenith.zenith "}(sequencerAndGasAdmin); + z = new Zenith{salt: "zenith.zenith "}(sequencerAdmin); p = new Passage{salt: "zenith.passage "}(defaultRollupChainId, withdrawalAdmin, initialEnterTokens, permit2); t = new Transactor{salt: "zenith.transactor "}( - defaultRollupChainId, sequencerAndGasAdmin, p, 30_000_000, 5_000_000 + defaultRollupChainId, gasAdmin, p, perBlockGasLimit, perTransactGasLimit ); m = new HostOrders{salt: "zenith.hostOrders "}(permit2); }