This repository contains scripts to onboard a new chain (BlockDAG Testnet) onto the Axelar Amplifier running on the devnet.
Before you begin, ensure you have the following:
-
axelardBinary: Install thev1.1.3axelardbinary. You can find instructions in the official Axelar documentation. -
Funded Devnet Wallet: You need an Axelar devnet account funded with
uamplifiertokens.- Create a wallet:
axelard keys add wallet --keyring-backend test - Get your address:
axelard keys show wallet -a --keyring-backend test - Request tokens from the
#faucetchannel in the Axelar Discord.
- Create a wallet:
All configuration is managed in the scripts/variables.sh file. You will need to populate this file with the correct values before running the scripts.
#!/bin/bash
# --- Static Code IDs (for devnet) ---
# You can verify the latest code IDs in the Axelar contract deployments repo.
export VERIFIER_CODE_ID="854"
export GATEWAY_CODE_ID="848"
export PROVER_CODE_ID="855"
# --- BlockDAG Testnet Configuration ---
export MY_CHAIN_ID="BlockDAG testnet"
export MY_SOURCE_GATEWAY_ADDRESS="<YOUR_SOURCE_CHAIN_GATEWAY_ADDRESS>" # e.g., 0xCa85f85C72df5f8428a440887CA7c449D94e0D0c
# --- Axelar Devnet Wallet ---
export MY_WALLET_ADDRESS="<YOUR_AXELAR_WALLET_ADDRESS>"
# --- Contract Addresses (populated by script outputs) ---
export MY_VERIFIER_ADDRESS=""
export MY_GATEWAY_ADDRESS=""Action Required:
- Replace
<YOUR_AXELAR_WALLET_ADDRESS>with your address. - Replace
<YOUR_SOURCE_CHAIN_GATEWAY_ADDRESS>with the gateway contract address on the BlockDAG testnet.
Follow these steps in order to instantiate the necessary contracts on the Axelar devnet.
First, ensure all the scripts are executable:
chmod +x scripts/*.shThis contract verifies votes from validators for cross-chain messages.
- Run the script:
./scripts/voting_verifier.sh
- Search the JSON output for the
_contract_addressvalue (e.g.,axelar1x39...). - Open
scripts/variables.shand setMY_VERIFIER_ADDRESSto this new contract address.
This contract receives messages from other chains and routes them through the Axelar network.
- Run the script:
./scripts/instantiate_gateway.sh
- Search the JSON output for the
_contract_addressvalue. - Open
scripts/variables.shand setMY_GATEWAY_ADDRESSto this new contract address.
This contract manages the multisig verification process.
- Run the script:
./scripts/instantiate_multisig.sh
After this step, the contracts are deployed and your chain is integrated with the Amplifier devnet.
- Chain Name: BlockDAG testnet
- Chain ID: 1043
- RPC URL:
rpc.primordial.bdagscan.com