Skip to content

Commit 3f10404

Browse files
committed
chore(eth-multisig-v4): add arbeth and opeth config
WIN-1097
1 parent 0b2ba88 commit 3f10404

File tree

4 files changed

+77
-8
lines changed

4 files changed

+77
-8
lines changed

.github/workflows/deploy_and_release.yml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ jobs:
2424
ALCHEMY_POLYGON_API_KEY: ${{ secrets.ALCHEMY_POLYGON_API_KEY }}
2525
POLYGONSCAN_API_KEY: ${{ secrets.POLYGONSCAN_API_KEY }}
2626
BSCSCAN_API_KEY: ${{ secrets.BSCSCAN_API_KEY }}
27+
ARBISCAN_API_KEY: ${{ secrets.ARBISCAN_API_KEY }}
28+
OPTIMISTIC_ETHERSCAN_API_KEY: ${{ secrets.OPTIMISTIC_ETHERSCAN_API_KEY }}
2729
get-network:
2830
runs-on: ubuntu-latest
2931
needs: [lint-and-test]
@@ -38,13 +40,13 @@ jobs:
3840
result-encoding: string
3941
script: |
4042
const tag = process.env.GITHUB_REF_NAME;
41-
const regex = /v.*\-(eth|hteth|matic|tmatic|bsc|tbsc)$/;
43+
const regex = /v.*\-(eth|hteth|matic|tmatic|bsc|tbsc|arbeth|tarbeth|opeth|topeth)$/;
4244
const network = tag.match(regex);
4345
return network ? network[1] : "hteth";
4446
deploy-to-test:
4547
runs-on: ubuntu-latest
4648
needs: [lint-and-test, get-network]
47-
if: ${{ (needs.get-network.outputs.network == 'hteth' ) || (needs.get-network.outputs.network == 'tmatic' ) || (needs.get-network.outputs.network == 'tbsc' ) }}
49+
if: ${{ (needs.get-network.outputs.network == 'hteth' ) || (needs.get-network.outputs.network == 'tmatic' ) || (needs.get-network.outputs.network == 'tbsc' ) || (needs.get-network.outputs.network == 'tarbeth' ) || (needs.get-network.outputs.network == 'topeth' ) }}
4850
environment: testnet
4951
steps:
5052
- uses: actions/checkout@v2
@@ -64,6 +66,8 @@ jobs:
6466
ALCHEMY_POLYGON_API_KEY: ${{ secrets.ALCHEMY_POLYGON_API_KEY }}
6567
POLYGONSCAN_API_KEY: ${{ secrets.POLYGONSCAN_API_KEY }}
6668
BSCSCAN_API_KEY: ${{ secrets.BSCSCAN_API_KEY }}
69+
ARBISCAN_API_KEY: ${{ secrets.ARBISCAN_API_KEY }}
70+
OPTIMISTIC_ETHERSCAN_API_KEY: ${{ secrets.OPTIMISTIC_ETHERSCAN_API_KEY }}
6771
- name: Update release notes
6872
uses: actions/github-script@v6
6973
with:
@@ -95,7 +99,7 @@ jobs:
9599
deploy-to-prod:
96100
runs-on: ubuntu-latest
97101
needs: [lint-and-test, get-network]
98-
if: ${{ (needs.get-network.outputs.network == 'eth' ) || (needs.get-network.outputs.network == 'matic' ) || (needs.get-network.outputs.network == 'bsc' ) }}
102+
if: ${{ (needs.get-network.outputs.network == 'eth' ) || (needs.get-network.outputs.network == 'matic' ) || (needs.get-network.outputs.network == 'bsc' ) || (needs.get-network.outputs.network == 'arbeth' ) || (needs.get-network.outputs.network == 'opeth' ) }}
99103
environment: mainnet
100104
steps:
101105
- uses: actions/checkout@v2
@@ -115,6 +119,8 @@ jobs:
115119
ALCHEMY_POLYGON_API_KEY: ${{ secrets.ALCHEMY_POLYGON_API_KEY }}
116120
POLYGONSCAN_API_KEY: ${{ secrets.POLYGONSCAN_API_KEY }}
117121
BSCSCAN_API_KEY: ${{ secrets.BSCSCAN_API_KEY }}
122+
ARBISCAN_API_KEY: ${{ secrets.ARBISCAN_API_KEY }}
123+
OPTIMISTIC_ETHERSCAN_API_KEY: ${{ secrets.OPTIMISTIC_ETHERSCAN_API_KEY }}
118124
- name: Update release notes
119125
uses: actions/github-script@v6
120126
with:

.github/workflows/push.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,6 @@ jobs:
3232
ALCHEMY_POLYGON_API_KEY: ${{ secrets.ALCHEMY_POLYGON_API_KEY }}
3333
POLYGONSCAN_API_KEY: ${{ secrets.POLYGONSCAN_API_KEY }}
3434
BSCSCAN_API_KEY: ${{ secrets.BSCSCAN_API_KEY }}
35+
ARBISCAN_API_KEY: ${{ secrets.ARBISCAN_API_KEY }}
36+
OPTIMISTIC_ETHERSCAN_API_KEY: ${{ secrets.OPTIMISTIC_ETHERSCAN_API_KEY }}
3537
- run: npm run lint

hardhat.config.ts

Lines changed: 48 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,14 @@ const {
1414
TESTNET_PRIVATE_KEY_FOR_CONTRACT_DEPLOYMENT,
1515
QUICKNODE_ETH_MAINNET_API_KEY,
1616
QUICKNODE_ETH_HOLESKY_API_KEY,
17+
QUICKNODE_ARBITRUM_SEPOLIA_API_KEY,
18+
QUICKNODE_OPTIMISM_SEPOLIA_API_KEY,
1719
ETHERSCAN_API_KEY,
1820
ALCHEMY_POLYGON_API_KEY,
1921
POLYGONSCAN_API_KEY,
20-
BSCSCAN_API_KEY
22+
BSCSCAN_API_KEY,
23+
ARBISCAN_API_KEY,
24+
OPTIMISTIC_ETHERSCAN_API_KEY
2125
} = process.env;
2226

2327
const config: HardhatUserConfig = {
@@ -66,6 +70,14 @@ const config: HardhatUserConfig = {
6670
tbsc: {
6771
url: `https://data-seed-prebsc-1-s1.binance.org:8545/`,
6872
accounts: [`${TESTNET_PRIVATE_KEY_FOR_CONTRACT_DEPLOYMENT}`]
73+
},
74+
tarbeth: {
75+
url: `${QUICKNODE_ARBITRUM_SEPOLIA_API_KEY}`,
76+
accounts: [`${TESTNET_PRIVATE_KEY_FOR_CONTRACT_DEPLOYMENT}`]
77+
},
78+
topeth: {
79+
url: `${QUICKNODE_OPTIMISM_SEPOLIA_API_KEY}`,
80+
accounts: [`${TESTNET_PRIVATE_KEY_FOR_CONTRACT_DEPLOYMENT}`]
6981
}
7082
},
7183
gasReporter: {
@@ -77,12 +89,45 @@ const config: HardhatUserConfig = {
7789
//ethereum
7890
mainnet: `${ETHERSCAN_API_KEY}`,
7991
goerli: `${ETHERSCAN_API_KEY}`,
92+
holesky: `${ETHERSCAN_API_KEY}`,
8093
//polygon
8194
polygon: `${POLYGONSCAN_API_KEY}`,
8295
polygonMumbai: `${POLYGONSCAN_API_KEY}`,
8396
bscTestnet: `${BSCSCAN_API_KEY}`,
84-
bsc: `${BSCSCAN_API_KEY}`
85-
}
97+
bsc: `${BSCSCAN_API_KEY}`,
98+
// arbitrum
99+
arbitrumOne: `${ARBISCAN_API_KEY}`,
100+
arbitrumSepolia: `${ARBISCAN_API_KEY}`,
101+
// optimism
102+
optimisticEthereum: `${OPTIMISTIC_ETHERSCAN_API_KEY}`,
103+
optimisticSepolia: `${OPTIMISTIC_ETHERSCAN_API_KEY}`
104+
},
105+
customChains: [
106+
{
107+
network: 'holesky',
108+
chainId: 17000,
109+
urls: {
110+
apiURL: 'https://api-holesky.etherscan.io/api',
111+
browserURL: 'https://holesky.etherscan.io'
112+
}
113+
},
114+
{
115+
network: 'arbitrumSepolia',
116+
chainId: 421614,
117+
urls: {
118+
apiURL: 'https://api-sepolia.arbiscan.io/api',
119+
browserURL: 'https://sepolia.arbiscan.io'
120+
}
121+
},
122+
{
123+
network: 'optimisticSepolia',
124+
chainId: 11155420,
125+
urls: {
126+
apiURL: 'https://api-sepolia-optimistic.etherscan.io/api',
127+
browserURL: 'https://sepolia-optimism.etherscan.io'
128+
}
129+
}
130+
]
86131
},
87132
mocha: {
88133
timeout: 100000

scripts/deploy.ts

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ async function main() {
2020
//eth
2121
case 1:
2222
//hteth
23-
case 5:
23+
case 17000:
2424
walletImplementationContractName = 'WalletSimple';
2525
break;
2626
//matic
@@ -36,6 +36,18 @@ async function main() {
3636
walletImplementationContractName = 'RecoveryWalletSimple';
3737
walletFactoryContractName = 'RecoveryWalletFactory';
3838
break;
39+
// arbeth
40+
case 42161:
41+
// tarbeth
42+
case 421614:
43+
walletImplementationContractName = 'ArbethWalletSimple';
44+
break;
45+
// opeth
46+
case 10:
47+
// topeth
48+
case 11155420:
49+
walletImplementationContractName = 'OpethWalletSimple';
50+
break;
3951
}
4052

4153
console.log(
@@ -83,7 +95,11 @@ async function main() {
8395
await forwarderFactory.deployTransaction.wait(10);
8496

8597
console.log('Done waiting, verifying');
86-
await verifyContract('WalletSimple', walletSimple.address, []);
98+
await verifyContract(
99+
walletImplementationContractName,
100+
walletSimple.address,
101+
[]
102+
);
87103
await verifyContract('WalletFactory', walletFactory.address, [
88104
walletSimple.address
89105
]);

0 commit comments

Comments
 (0)