Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add isContract check when reading contract addresses from config files #931

Merged
merged 10 commits into from
Jan 23, 2025
10 changes: 3 additions & 7 deletions config/across.json
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,7 @@
"chainId": 1135,
"acrossSpokePool": "0x9552a0a6624A23B848060AE5901659CDDa1f83f8",
"weth": "0x4200000000000000000000000000000000000006",
"tokensToApprove": [
"0x4200000000000000000000000000000000000006"
]
"tokensToApprove": ["0x4200000000000000000000000000000000000006"]
},
"blast": {
"chainId": 81457,
Expand All @@ -146,8 +144,6 @@
"chainId": 480,
"acrossSpokePool": "0x09aea4b2242abC8bb4BB78D537A67a245A7bEC64",
"weth": "0x4200000000000000000000000000000000000006",
"tokensToApprove": [
"0x4200000000000000000000000000000000000006"
]
"tokensToApprove": ["0x4200000000000000000000000000000000000006"]
}
}
}
2 changes: 1 addition & 1 deletion deployments/optimism.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,4 @@
"GasZipPeriphery": "0x9a21E33F1a78b17DAd32010CeDB9Fd2F071C17d3",
"RelayFacet": "0x424BDbbaEda89732443fb1B737b6Dc194a6Ddbd5",
"DeBridgeDlnFacet": "0x18C85B940c29ECC3c210Ea40a5B6d91F5aeE2803"
}
}
9 changes: 6 additions & 3 deletions script/deploy/facets/DeployAcrossFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,15 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/across.json");
string memory json = vm.readFile(path);

address acrossSpokePool = json.readAddress(
address acrossSpokePool = _getConfigContractAddress(
path,
string.concat(".", network, ".acrossSpokePool")
);
address weth = json.readAddress(string.concat(".", network, ".weth"));
address weth = _getConfigContractAddress(
path,
string.concat(".", network, ".weth")
);

return abi.encode(acrossSpokePool, weth);
}
Expand Down
9 changes: 5 additions & 4 deletions script/deploy/facets/DeployAcrossFacetPacked.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,16 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/across.json");
string memory json = vm.readFile(path);

address spokePool = json.readAddress(
address acrossSpokePool = _getConfigContractAddress(
path,
string.concat(".", network, ".acrossSpokePool")
);
address wrappedNative = json.readAddress(
address weth = _getConfigContractAddress(
path,
string.concat(".", network, ".weth")
);

return abi.encode(spokePool, wrappedNative, deployerAddress);
return abi.encode(acrossSpokePool, weth, deployerAddress);
}
}
9 changes: 5 additions & 4 deletions script/deploy/facets/DeployAcrossFacetPackedV3.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,16 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/across.json");
string memory json = vm.readFile(path);

address spokePool = json.readAddress(
address acrossSpokePool = _getConfigContractAddress(
path,
string.concat(".", network, ".acrossSpokePool")
);
address wrappedNative = json.readAddress(
address weth = _getConfigContractAddress(
path,
string.concat(".", network, ".weth")
);

return abi.encode(spokePool, wrappedNative, deployerAddress);
return abi.encode(acrossSpokePool, weth, deployerAddress);
}
}
9 changes: 6 additions & 3 deletions script/deploy/facets/DeployAcrossFacetV3.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,15 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/across.json");
string memory json = vm.readFile(path);

address acrossSpokePool = json.readAddress(
address acrossSpokePool = _getConfigContractAddress(
path,
string.concat(".", network, ".acrossSpokePool")
);
address weth = json.readAddress(string.concat(".", network, ".weth"));
address weth = _getConfigContractAddress(
path,
string.concat(".", network, ".weth")
);

return abi.encode(acrossSpokePool, weth);
}
Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployAllBridgeFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/allbridge.json");
string memory json = vm.readFile(path);

address allBridge = json.readAddress(
address allBridge = _getConfigContractAddress(
path,
string.concat(".", network, ".allBridge")
);

Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployAmarokFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/amarok.json");
string memory json = vm.readFile(path);

address connextHandler = json.readAddress(
address connextHandler = _getConfigContractAddress(
path,
string.concat(".", network, ".connextHandler")
);

Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployAmarokFacetPacked.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/amarok.json");
string memory json = vm.readFile(path);

address connextHandler = json.readAddress(
address connextHandler = _getConfigContractAddress(
path,
string.concat(".", network, ".connextHandler")
);

Expand Down
7 changes: 4 additions & 3 deletions script/deploy/facets/DeployArbitrumBridgeFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,13 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/arbitrum.json");
string memory json = vm.readFile(path);

address gatewayRouter = json.readAddress(
address gatewayRouter = _getConfigContractAddress(
path,
string.concat(".", network, ".gatewayRouter")
);
address inbox = json.readAddress(
address inbox = _getConfigContractAddress(
path,
string.concat(".", network, ".inbox")
);

Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployCBridgeFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/cbridge.json");
string memory json = vm.readFile(path);

address cBridge = json.readAddress(
address cBridge = _getConfigContractAddress(
path,
string.concat(".", network, ".cBridge")
);

Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployCBridgeFacetPacked.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/cbridge.json");
string memory json = vm.readFile(path);

address cBridge = json.readAddress(
address cBridge = _getConfigContractAddress(
path,
string.concat(".", network, ".cBridge")
0xDEnYO marked this conversation as resolved.
Show resolved Hide resolved
);

Expand Down
9 changes: 6 additions & 3 deletions script/deploy/facets/DeployCelerCircleBridgeFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,15 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/celerCircle.json");
string memory json = vm.readFile(path);

address circleBridgeProxy = json.readAddress(
address circleBridgeProxy = _getConfigContractAddress(
path,
string.concat(".", network, ".circleBridgeProxy")
);
address usdc = json.readAddress(string.concat(".", network, ".usdc"));
address usdc = _getConfigContractAddress(
path,
string.concat(".", network, ".usdc")
);

return abi.encode(circleBridgeProxy, usdc);
}
Expand Down
13 changes: 7 additions & 6 deletions script/deploy/facets/DeployCelerIMFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -38,18 +38,20 @@ contract DeployScript is DeployScriptBase {
function getConstructorArgs() internal override returns (bytes memory) {
// get messageBus address
string memory path = string.concat(root, "/config/cbridge.json");
string memory json = vm.readFile(path);

address messageBus = json.readAddress(
address messageBus = _getConfigContractAddress(
path,
string.concat(".", network, ".messageBus")
);

// get address of cfUSDC token (required for mainnet only, otherwise address(0))
address cfUSDCAddress;
if (
keccak256(abi.encodePacked(network)) ==
keccak256(abi.encodePacked("mainnet"))
) {
cfUSDCAddress = json.readAddress(
cfUSDCAddress = _getConfigContractAddress(
path,
string.concat(".", network, ".cfUSDC")
);
}
Expand All @@ -63,7 +65,6 @@ contract DeployScript is DeployScriptBase {
fileSuffix,
"json"
);
json = vm.readFile(path);

// check which diamond to use (from env variable)
string memory diamondType = vm.envString("DIAMOND_TYPE");
Expand All @@ -73,8 +74,8 @@ contract DeployScript is DeployScriptBase {

// get address of the correct diamond contract from network log file
address diamondAddress = deployMutable
? json.readAddress(".LiFiDiamond")
: json.readAddress(".LiFiDiamondImmutable");
? _getConfigContractAddress(path, ".LiFiDiamond")
: _getConfigContractAddress(path, ".LiFiDiamondImmutable");

// get path of global config file
string memory globalConfigPath = string.concat(
Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployDeBridgeDlnFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/dln.json");
string memory json = vm.readFile(path);

address dlnSource = json.readAddress(
address dlnSource = _getConfigContractAddress(
path,
string.concat(".networks.", network, ".dlnSource")
);

Expand Down
3 changes: 1 addition & 2 deletions script/deploy/facets/DeployExecutor.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,8 @@ contract DeployScript is DeployScriptBase {
fileSuffix,
"json"
);
string memory json = vm.readFile(path);

address erc20Proxy = json.readAddress(".ERC20Proxy");
address erc20Proxy = _getConfigContractAddress(path, ".ERC20Proxy");

return abi.encode(erc20Proxy);
}
Expand Down
10 changes: 3 additions & 7 deletions script/deploy/facets/DeployGasZipFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,10 @@ contract DeployScript is DeployScriptBase {
}

function getConstructorArgs() internal override returns (bytes memory) {
string memory gasZipConfig = string.concat(
root,
"/config/gaszip.json"
);

string memory gasZipConfigJson = vm.readFile(gasZipConfig);
string memory path = string.concat(root, "/config/gaszip.json");

address gasZipRouter = gasZipConfigJson.readAddress(
address gasZipRouter = _getConfigContractAddress(
path,
string.concat(".gasZipRouters.", network)
);

Expand Down
25 changes: 11 additions & 14 deletions script/deploy/facets/DeployGasZipPeriphery.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -21,36 +21,33 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
// get gasZipRouter address
string memory gasZipConfig = string.concat(
root,
"/config/gaszip.json"
);

string memory gasZipConfigJson = vm.readFile(gasZipConfig);
string memory path = string.concat(root, "/config/gaszip.json");

address gasZipRouter = gasZipConfigJson.readAddress(
address gasZipRouter = _getConfigContractAddress(
path,
string.concat(".gasZipRouters.", network)
);

// get LiFiDEXAggregator address
string memory deployLog = string.concat(
path = string.concat(
root,
"/deployments/",
network,
".",
fileSuffix,
"json"
);
string memory json = vm.readFile(deployLog);

address liFiDEXAggregator = json.readAddress(".LiFiDEXAggregator");
address liFiDEXAggregator = _getConfigContractAddress(
path,
".LiFiDEXAggregator"
);

// get network's SAFE address to become contract owner for potential fund withdrawals
string memory networks = string.concat(root, "/config/networks.json");

string memory networksJson = vm.readFile(networks);
path = string.concat(root, "/config/networks.json");

address safeAddress = networksJson.readAddress(
address safeAddress = _getConfigContractAddress(
path,
string.concat(".", network, ".safeAddress")
);

Expand Down
6 changes: 2 additions & 4 deletions script/deploy/facets/DeployGenericSwapFacetV3.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,9 @@ contract DeployScript is DeployScriptBase {
// get path of global config file
string memory path = string.concat(root, "/config/networks.json");

// read file into json variable
string memory json = vm.readFile(path);

// extract network's native address
address nativeAddress = json.readAddress(
address nativeAddress = _getConfigContractAddress(
path,
string.concat(".", network, ".nativeAddress")
);

Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployGnosisBridgeFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ contract DeployScript is DeployScriptBase {

function getConstructorArgs() internal override returns (bytes memory) {
string memory path = string.concat(root, "/config/gnosis.json");
string memory json = vm.readFile(path);

address xDaiBridge = json.readAddress(
address xDaiBridge = _getConfigContractAddress(
path,
string.concat(".", network, ".xDaiBridge")
);

Expand Down
7 changes: 4 additions & 3 deletions script/deploy/facets/DeployLiFiDiamond.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,10 @@ contract DeployScript is DeployScriptBase {
fileSuffix,
"json"
);
string memory json = vm.readFile(path);

address diamondCut = json.readAddress(".DiamondCutFacet");
address diamondCut = _getConfigContractAddress(
path,
".DiamondCutFacet"
);

return abi.encode(deployerAddress, diamondCut);
}
Expand Down
4 changes: 2 additions & 2 deletions script/deploy/facets/DeployMayanFacet.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ contract DeployScript is DeployScriptBase {
function getConstructorArgs() internal override returns (bytes memory) {
// If you don't have a constructor or it doesn't take any arguments, you can remove this function
string memory path = string.concat(root, "/config/mayan.json");
string memory json = vm.readFile(path);

address bridge = json.readAddress(
address bridge = _getConfigContractAddress(
path,
string.concat(".bridges.", network, ".bridge")
);

Expand Down
Loading
Loading