nitro-stack/stack-orchestrator/config/go-nitro/run-bridge.sh

59 lines
2.0 KiB
Bash
Raw Normal View History

#!/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