Prathamesh Musale
fe85e74425
Part of [Create bridge channel in go-nitro](https://www.notion.so/Create-bridge-channel-in-go-nitro-22ce80a0d8ae4edb80020a8f250ea270) Requires https://github.com/cerc-io/go-nitro/pull/63 Reviewed-on: #1 Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com> Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
59 lines
2.0 KiB
Bash
Executable File
59 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
if [ -n "$CERC_SCRIPT_DEBUG" ]; then
|
|
set -x
|
|
fi
|
|
|
|
nitro_addresses_file="/app/deployment/nitro-addresses.json"
|
|
bridge_assets_map_file="/app/deployment/bridge-assets-map.toml"
|
|
bridge_config_file="/app/bridge.toml"
|
|
|
|
echo "Using the following environment variables:"
|
|
echo "NITRO_L1_CHAIN_URL: ${NITRO_L1_CHAIN_URL}"
|
|
echo "NITRO_L2_CHAIN_URL: ${NITRO_L2_CHAIN_URL}"
|
|
echo "NITRO_CHAIN_PK: ${NITRO_CHAIN_PK}"
|
|
echo "NITRO_SC_PK: ${NITRO_SC_PK}"
|
|
echo "NITRO_L1_MSG_PORT: ${NITRO_L1_MSG_PORT}"
|
|
echo "NITRO_L2_MSG_PORT: ${NITRO_L2_MSG_PORT}"
|
|
echo "NITRO_RPC_PORT: ${NITRO_RPC_PORT}"
|
|
echo "NITRO_PUBLIC_P2P_HOST: ${NITRO_PUBLIC_P2P_HOST}"
|
|
echo "NITRO_L1_EXT_MULTIADDR: ${NITRO_L1_EXT_MULTIADDR}"
|
|
echo "NITRO_L2_EXT_MULTIADDR: ${NITRO_L2_EXT_MULTIADDR}"
|
|
|
|
echo "Waiting for $bridge_assets_map_file to be ready"
|
|
|
|
while [ ! -e "$bridge_assets_map_file" ]; do
|
|
sleep 3
|
|
done
|
|
|
|
echo "File $bridge_assets_map_file found"
|
|
|
|
# Create required certs
|
|
./create-certs.sh
|
|
|
|
# Create the bridge config file
|
|
cat <<EOF > "$bridge_config_file"
|
|
chainpk = "$NITRO_CHAIN_PK"
|
|
statechannelpk = "$NITRO_SC_PK"
|
|
l1chainurl = "$NITRO_L1_CHAIN_URL"
|
|
l2chainurl = "$NITRO_L2_CHAIN_URL"
|
|
nodel1msgport = $NITRO_L1_MSG_PORT
|
|
nodel2msgport = $NITRO_L2_MSG_PORT
|
|
rpcport = $NITRO_RPC_PORT
|
|
bridgepublicip = "$NITRO_PUBLIC_P2P_HOST"
|
|
nodel1ExtMultiAddr = "$NITRO_L1_EXT_MULTIADDR"
|
|
nodel2ExtMultiAddr = "$NITRO_L2_EXT_MULTIADDR"
|
|
assetmapfilepath = "$bridge_assets_map_file"
|
|
EOF
|
|
|
|
# Export contract addresses
|
|
export NA_ADDRESS=$(jq -r ".\"$GETH_CHAIN_ID\"[0].contracts.NitroAdjudicator.address" ${nitro_addresses_file})
|
|
export CA_ADDRESS=$(jq -r ".\"$GETH_CHAIN_ID\"[0].contracts.ConsensusApp.address" ${nitro_addresses_file})
|
|
export VPA_ADDRESS=$(jq -r ".\"$GETH_CHAIN_ID\"[0].contracts.VirtualPaymentApp.address" ${nitro_addresses_file})
|
|
export BRIDGE_ADDRESS=$(jq -r ".\"$OPTIMISM_CHAIN_ID\"[0].contracts.Bridge.address" ${nitro_addresses_file})
|
|
|
|
# Start bridge
|
|
echo "Starting nitro-bridge"
|
|
./nitro-bridge -config $bridge_config_file
|