Skip to content

Commit 0646385

Browse files
committed
wip: xlayer deployment
1 parent 1f63897 commit 0646385

File tree

7 files changed

+113
-72
lines changed

7 files changed

+113
-72
lines changed

deployments/ethereum.json

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,34 @@
11
{
2-
"arbAdapter": "0x88d6D01e08d3e64513b15fD46528dBbA7d755883",
3-
"baseAdapter": "0xa5948b0ac79f72966dFFC5C13E44f6dfDD3D58A0",
4-
"bobAdapter": "0x1e2bFEF32EdAbf6b3EF8B674044DC00f082Addff",
5-
"ccipAdapter": "0x352C71092fB60ce2f94DFF4ACda330DdffD946B0",
2+
"arbAdapter": "0x1726C13FB9d89abaD27787480ae597b3Df4D806C",
3+
"baseAdapter": "0x124A93c62dB29C2eF68b79F1709Fe377feAa108D",
4+
"bobAdapter": "0xA23EA77E2feE70CD827731cC30157691e868EC26",
5+
"ccipAdapter": "0xa85B99E7Ff340dD2bD775f8cBb4BfC80bE65B4Ec",
66
"chainId": 1,
77
"clEmergencyOracle": "0x0000000000000000000000000000000000000000",
8-
"create3Factory": "0xcc3C54B95f3f1867A43009B80ed4DD930E3cE2F7",
9-
"crossChainController": "0xEd42a7D8559a463722Ca4beD50E0Cc05a386b0e1",
10-
"crossChainControllerImpl": "0x28559c2F4B038b1E836fA419DCcDe7454d8Fe215",
8+
"create3Factory": "0x0000000000000000000000000000000000000000",
9+
"crossChainController": "0x8E0cE624befC5226dA99276c5c272f3bf83462E3",
10+
"crossChainControllerImpl": "0x04458aBf3844995FA28Fd5503034AE69A3E6a400",
1111
"emergencyRegistry": "0x0000000000000000000000000000000000000000",
12-
"executor": "0x5300A1a15135EA4dc7aD5a167152C01EFc9b192A",
13-
"gnosisAdapter": "0x7238d75fD75bb936E83b75854c653F104Ce9c9d8",
14-
"granularCCCGuardian": "0x4457cA11E90f416Cc1D3a8E1cA41C0cdEcC251d4",
12+
"executor": "0x0000000000000000000000000000000000000000",
13+
"gnosisAdapter": "0x0BED83079C2c994C54112d07110F09C9Be6d485E",
14+
"granularCCCGuardian": "0x0000000000000000000000000000000000000000",
1515
"guardian": "0xEAF6183bAb3eFD3bF856Ac5C058431C8592394d6",
16-
"hlAdapter": "0x6bda311748E6542d578b167d791A4130f3FbBc67",
17-
"inkAdapter": "0x98E78C2cD3013BF13a658E210e27C3732c8Dc48A",
18-
"lineaAdapter": "0x8097555ffDa4176C93FEf92dF473b9763e467686",
19-
"lzAdapter": "0xBA0Ee375e9d0c815097D9eB7EB9Db20b59c06792",
20-
"mantleAdapter": "0xb66FA987fa7975Cac3d12B629c9c44e459e50990",
21-
"metisAdapter": "0x6B3Dc800E7c813Db3fe8D0F30fDCaE636935dC14",
22-
"mockDestination": "0x19198689FfBE82207F023248dca175a84c52eCE1",
23-
"opAdapter": "0x0e24524778fdc67f53eEf144b8cbf50261E930B3",
16+
"hlAdapter": "0x834607F5d65451918a8fDD5D22d6eF97f84917ef",
17+
"inkAdapter": "0xC21b883bc57e963fd3214FE8E8eb80d71458Aae0",
18+
"lineaAdapter": "0x5Dc8724b62F489a98f4f86b3a9629FB3f2552d73",
19+
"lzAdapter": "0xa25eC95457536Db32080b3EBaC6d185C44378fe3",
20+
"mantleAdapter": "0xD4FE312b920218A5a3D990c85b2a67aAeb8701dc",
21+
"metisAdapter": "0x92bce04e8B33c7098AA0bEc7663cA8Eb0930f6a4",
22+
"mockDestination": "0x5eB700Fd6aE49fc9890349E4d90737C1420e7E4f",
23+
"opAdapter": "0x091A76a70D9E9Ef3eae895D3b72DCD587ae1A460",
2424
"owner": "0xEAF6183bAb3eFD3bF856Ac5C058431C8592394d6",
25-
"polAdapter": "0x1562F1b2487F892BBA8Ef325aF054Fd157510a71",
26-
"proxyAdminCCC": "0xD3cF979e676265e4f6379749DECe4708B9A22476",
25+
"polAdapter": "0x35F0e8e1f349cCA85D0F4A195112De26A57974D6",
26+
"proxyAdminCCC": "0x28D7de3839D70FD27E80b5cCE9CDea7a26a55184",
2727
"proxyFactory": "0xB4e496f70602fE2AC6Ae511D028BA4D194773B29",
28-
"sameChainAdapter": "0x6cfbd2aA4691fc18B9C209bDd43DC3943C228FCf",
29-
"scrollAdapter": "0xA4dC3F123e1c601A19B3DC8382BB9311F678cafA",
30-
"soneiumAdapter": "0xe66973c4571F733CafEb1BDE1fa58Ff35416d901",
31-
"wormholeAdapter": "0x42206271373675661500F8a4d6A6CE2FDc6b5De5",
28+
"sameChainAdapter": "0x0000000000000000000000000000000000000000",
29+
"scrollAdapter": "0x525EC320AbD05FF316683BA3e38023CEe72f9868",
30+
"soneiumAdapter": "0x4e00fD05aBb32F3eAF8C4D0773284ae10675C225",
31+
"wormholeAdapter": "0x7458fd003C60D6B581D20249386188eA976e0556",
3232
"xlayerAdapter": "0x0000000000000000000000000000000000000000",
33-
"zksyncAdapter": "0x6aD9d4147467f08b165e1b6364584C5d28898b84"
33+
"zksyncAdapter": "0x22b56CC7c45ed007eA7E4Ea10D28967d36E314D6"
3434
}

deployments/pre_prod_ethereum.json

Lines changed: 0 additions & 34 deletions
This file was deleted.

deployments/prod_ethereum.json

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"arbAdapter": "0x88d6D01e08d3e64513b15fD46528dBbA7d755883",
3+
"baseAdapter": "0xa5948b0ac79f72966dFFC5C13E44f6dfDD3D58A0",
4+
"bobAdapter": "0x1e2bFEF32EdAbf6b3EF8B674044DC00f082Addff",
5+
"ccipAdapter": "0x352C71092fB60ce2f94DFF4ACda330DdffD946B0",
6+
"chainId": 1,
7+
"clEmergencyOracle": "0x0000000000000000000000000000000000000000",
8+
"create3Factory": "0xcc3C54B95f3f1867A43009B80ed4DD930E3cE2F7",
9+
"crossChainController": "0xEd42a7D8559a463722Ca4beD50E0Cc05a386b0e1",
10+
"crossChainControllerImpl": "0x28559c2F4B038b1E836fA419DCcDe7454d8Fe215",
11+
"emergencyRegistry": "0x0000000000000000000000000000000000000000",
12+
"executor": "0x5300A1a15135EA4dc7aD5a167152C01EFc9b192A",
13+
"gnosisAdapter": "0x7238d75fD75bb936E83b75854c653F104Ce9c9d8",
14+
"granularCCCGuardian": "0x4457cA11E90f416Cc1D3a8E1cA41C0cdEcC251d4",
15+
"guardian": "0xEAF6183bAb3eFD3bF856Ac5C058431C8592394d6",
16+
"hlAdapter": "0x6bda311748E6542d578b167d791A4130f3FbBc67",
17+
"inkAdapter": "0x98E78C2cD3013BF13a658E210e27C3732c8Dc48A",
18+
"lineaAdapter": "0x8097555ffDa4176C93FEf92dF473b9763e467686",
19+
"lzAdapter": "0xBA0Ee375e9d0c815097D9eB7EB9Db20b59c06792",
20+
"mantleAdapter": "0xb66FA987fa7975Cac3d12B629c9c44e459e50990",
21+
"metisAdapter": "0x6B3Dc800E7c813Db3fe8D0F30fDCaE636935dC14",
22+
"mockDestination": "0x19198689FfBE82207F023248dca175a84c52eCE1",
23+
"opAdapter": "0x0e24524778fdc67f53eEf144b8cbf50261E930B3",
24+
"owner": "0xEAF6183bAb3eFD3bF856Ac5C058431C8592394d6",
25+
"polAdapter": "0x1562F1b2487F892BBA8Ef325aF054Fd157510a71",
26+
"proxyAdminCCC": "0xD3cF979e676265e4f6379749DECe4708B9A22476",
27+
"proxyFactory": "0xB4e496f70602fE2AC6Ae511D028BA4D194773B29",
28+
"sameChainAdapter": "0x6cfbd2aA4691fc18B9C209bDd43DC3943C228FCf",
29+
"scrollAdapter": "0xA4dC3F123e1c601A19B3DC8382BB9311F678cafA",
30+
"soneiumAdapter": "0xe66973c4571F733CafEb1BDE1fa58Ff35416d901",
31+
"wormholeAdapter": "0x42206271373675661500F8a4d6A6CE2FDc6b5De5",
32+
"xlayerAdapter": "0x0000000000000000000000000000000000000000",
33+
"zksyncAdapter": "0x6aD9d4147467f08b165e1b6364584C5d28898b84"
34+
}

deployments/xlayer.json

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"arbAdapter": "0x0000000000000000000000000000000000000000",
3+
"baseAdapter": "0x0000000000000000000000000000000000000000",
4+
"bobAdapter": "0x0000000000000000000000000000000000000000",
5+
"ccipAdapter": "0x0000000000000000000000000000000000000000",
6+
"chainId": 0,
7+
"clEmergencyOracle": "0x0000000000000000000000000000000000000000",
8+
"create3Factory": "0x0000000000000000000000000000000000000000",
9+
"crossChainController": "0x0000000000000000000000000000000000000000",
10+
"crossChainControllerImpl": "0x0000000000000000000000000000000000000000",
11+
"emergencyRegistry": "0x0000000000000000000000000000000000000000",
12+
"executor": "0xE2E8Badc5d50f8a6188577B89f50701cDE2D4e19",
13+
"gnosisAdapter": "0x0000000000000000000000000000000000000000",
14+
"granularCCCGuardian": "0x0000000000000000000000000000000000000000",
15+
"guardian": "0xEAF6183bAb3eFD3bF856Ac5C058431C8592394d6",
16+
"hlAdapter": "0x0000000000000000000000000000000000000000",
17+
"inkAdapter": "0x0000000000000000000000000000000000000000",
18+
"lineaAdapter": "0x0000000000000000000000000000000000000000",
19+
"lzAdapter": "0x0000000000000000000000000000000000000000",
20+
"mantleAdapter": "0x0000000000000000000000000000000000000000",
21+
"metisAdapter": "0x0000000000000000000000000000000000000000",
22+
"mockDestination": "0x0000000000000000000000000000000000000000",
23+
"opAdapter": "0x0000000000000000000000000000000000000000",
24+
"owner": "0xEAF6183bAb3eFD3bF856Ac5C058431C8592394d6",
25+
"polAdapter": "0x0000000000000000000000000000000000000000",
26+
"proxyAdminCCC": "0x0000000000000000000000000000000000000000",
27+
"proxyFactory": "0xEB0682d148e874553008730f0686ea89db7DA412",
28+
"sameChainAdapter": "0x0000000000000000000000000000000000000000",
29+
"scrollAdapter": "0x0000000000000000000000000000000000000000",
30+
"soneiumAdapter": "0x0000000000000000000000000000000000000000",
31+
"wormholeAdapter": "0x0000000000000000000000000000000000000000",
32+
"xlayerAdapter": "0x0000000000000000000000000000000000000000",
33+
"zksyncAdapter": "0x0000000000000000000000000000000000000000"
34+
}

foundry.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ ink="${RPC_INK}"
6969
soneium="${RPC_SONEIUM}"
7070
bob="${RPC_BOB}"
7171
plasma="${RPC_PLASMA}"
72+
xlayer="${RPC_XLAYER}"
7273

7374
[etherscan]
7475
ethereum={key="${ETHERSCAN_API_KEY}", chain=1 }
@@ -108,6 +109,7 @@ mantle-testnet={key="${ETHERSCAN_API_KEY}", chain=5003, url='https://explorer.te
108109
ink={key="${ETHERSCAN_API_KEY}", chain=57073, url='https://api.routescan.io/v2/network/mainnet/evm/57073/etherscan'}
109110
soneium={key="${ETHERSCAN_API_KEY}", chain=1868, url='https://soneium.blockscout.com/api/'}
110111
bob={key="${ETHERSCAN_API_KEY}", chain=60808, url='https://explorer.gobob.xyz/api/'}
112+
xlayer={key="any", chain=196, url='https://www.oklink.com/api/v5/explorer/contract/verify-source-code-plugin/xlayer'}
111113

112114
# See more config options https://github.com/gakonst/foundry/tree/master/config
113115
[fuzz]

scripts/BaseDeployerScript.sol

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// SPDX-License-Identifier: BUSL-1.1
22
pragma solidity ^0.8.0;
33

4+
import 'forge-std/Vm.sol';
45
import 'forge-std/Script.sol';
56
import 'adi-scripts/BaseScript.sol';
67
import {ChainHelpers} from 'solidity-utils/contracts/utils/ChainHelpers.sol';
@@ -128,24 +129,20 @@ library DeployerHelpers {
128129
json.serialize('soneiumAdapter', addresses.soneiumAdapter);
129130
json.serialize('wormholeAdapter', addresses.wormholeAdapter);
130131
json.serialize('xlayerAdapter', addresses.xlayerAdapter);
131-
json.serialize('zksyncAdapter', addresses.zksyncAdapter);
132+
json = json.serialize('zksyncAdapter', addresses.zksyncAdapter);
132133
vm.writeJson(json, path);
133134
}
134135
}
135136

136-
abstract contract BaseDeployerScript is BaseScript, Script {
137-
function getAddresses(uint256 networkId) external view returns (Addresses memory) {
137+
contract _AddrReader {
138+
function get(uint256 networkId, Vm vm) external view returns (Addresses memory) {
138139
return DeployerHelpers.decodeJson(DeployerHelpers.getPathByChainId(networkId), vm);
139140
}
141+
}
140142

143+
abstract contract BaseDeployerScript is BaseScript, Script {
141144
function _getAddresses(uint256 networkId) internal view returns (Addresses memory) {
142-
try this.getAddresses(networkId) returns (Addresses memory addresses) {
143-
return addresses;
144-
} catch (bytes memory) {
145-
Addresses memory empty;
146-
empty.chainId = TRANSACTION_NETWORK();
147-
return empty;
148-
}
145+
return DeployerHelpers.decodeJson(DeployerHelpers.getPathByChainId(networkId), vm);
149146
}
150147

151148
function _execute(Addresses memory addresses) internal virtual;
@@ -155,9 +152,17 @@ abstract contract BaseDeployerScript is BaseScript, Script {
155152
}
156153

157154
function run() public virtual {
155+
// helper exists only in the dry-run VM context (pre-broadcast)
156+
_AddrReader reader = new _AddrReader();
157+
158+
Addresses memory addresses;
159+
try reader.get(TRANSACTION_NETWORK(), vm) returns (Addresses memory a) {
160+
addresses = a;
161+
} catch {
162+
// default zeroed struct
163+
}
164+
158165
vm.startBroadcast();
159-
// ----------------- Persist addresses -----------------------------------------------------------------------------
160-
Addresses memory addresses = _getAddresses(TRANSACTION_NETWORK());
161166
// -----------------------------------------------------------------------------------------------------------------
162167
_execute(addresses);
163168
// ----------------- Persist addresses -----------------------------------------------------------------------------

scripts/InitialDeployments.s.sol

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -357,6 +357,6 @@ contract Xlayer is BaseInitialDeployment {
357357
}
358358

359359
function EXECUTOR() internal pure override returns (address) {
360-
return address(0); // GovernanceV3Xlayer.EXECUTOR_LVL_1; // TODO: add address when deployed
360+
return 0xE2E8Badc5d50f8a6188577B89f50701cDE2D4e19; // GovernanceV3Xlayer.EXECUTOR_LVL_1;
361361
}
362362
}

0 commit comments

Comments
 (0)