Create stack to deploy nitro contracts

This commit is contained in:
Neeraj
2024-08-22 16:48:28 +05:30
parent 3c3fc333f4
commit dd57b1c5bb
6 changed files with 158 additions and 31 deletions
@@ -8,9 +8,7 @@ services:
environment:
CERC_SCRIPT_DEBUG: ${CERC_SCRIPT_DEBUG}
GETH_URL: ${GETH_URL}
OPTIMISM_URL: ${OPTIMISM_URL}
GETH_CHAIN_ID: ${GETH_CHAIN_ID:-1212}
OPTIMISM_CHAIN_ID: ${OPTIMISM_CHAIN_ID:-42069}
GETH_DEPLOYER_PK: ${GETH_DEPLOYER_PK}
OPTIMISM_DEPLOYER_PK: ${GETH_DEPLOYER_PK}
TOKEN_NAME: ${TOKEN_NAME}
@@ -7,15 +7,10 @@ fi
addresses_deployment_file="packages/nitro-protocol/addresses.json"
nitro_addresses_file="/app/deployment/nitro-addresses.json"
bridge_assets_map_file="/app/deployment/bridge-assets-map.toml"
echo "Using the following environment variables:"
echo "GETH_URL: ${GETH_URL}"
echo "OPTIMISM_URL: ${OPTIMISM_URL}"
echo "GETH_CHAIN_ID: ${GETH_CHAIN_ID}"
echo "OPTIMISM_CHAIN_ID: ${OPTIMISM_CHAIN_ID}"
echo "GETH_DEPLOYER_PK: ${GETH_DEPLOYER_PK}"
echo "OPTIMISM_DEPLOYER_PK: ${OPTIMISM_DEPLOYER_PK}"
echo "TOKEN_NAME: ${TOKEN_NAME}"
echo "TOKEN_SYMBOL: ${TOKEN_SYMBOL}"
echo "INITIAL_TOKEN_SUPPLY: ${INITIAL_TOKEN_SUPPLY}"
@@ -34,29 +29,6 @@ else
cp ${addresses_deployment_file} ${nitro_addresses_file}
fi
# Check if L1 chain id key is present for L1 deployment
if [ -f "$nitro_addresses_file" ] && jq -e "has(\"$OPTIMISM_CHAIN_ID\")" ${nitro_addresses_file} > /dev/null; then
echo "L2 addresses found in ${nitro_addresses_file}, skipping deployment"
else
# Deploy Nitro contracts
yarn contracts:deploy-optimism
# Deploy custom token
yarn contracts:deploy-token-optimism
cp ${addresses_deployment_file} ${nitro_addresses_file}
fi
L1_ASSET_ADDRESS=$(jq -r ".\"$GETH_CHAIN_ID\"[0].contracts.Token.address" ${nitro_addresses_file})
L2_ASSET_ADDRESS=$(jq -r ".\"$OPTIMISM_CHAIN_ID\"[0].contracts.Token.address" ${nitro_addresses_file})
# Deploy custom tokens and create bridge-assets-map.toml
cat <<EOF > "$bridge_assets_map_file"
[[assets]]
l1AssetAddress = "$L1_ASSET_ADDRESS"
l2AssetAddress = "$L2_ASSET_ADDRESS"
EOF
echo "Done"
# Keep the container running for future asset transfers
@@ -0,0 +1 @@
# TODO: Update README
@@ -0,0 +1,9 @@
version: "1.0"
name: nitro-contracts
description: "Deploy nitro contracts"
repos:
- github.com/cerc-io/go-nitro
containers:
- cerc/nitro-client
pods:
- nitro-contracts