Skip to content

Commit

Permalink
feat: upgrade integrator governance docs to mainnet v1.0 (#1127)
Browse files Browse the repository at this point in the history
  • Loading branch information
ffe9f8 committed Sep 4, 2024
1 parent 1705306 commit d4ee689
Showing 1 changed file with 45 additions and 43 deletions.
88 changes: 45 additions & 43 deletions src/pages/dev/amplifier/chain-integration/governance-proposals.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { Callout } from "/src/components/callout"

New chains are onboarded to the Axelar Amplifier through [community governance](/resources/community/community-pool-proposals). In general, you will need to submit five governance proposals to integrate your chain:

- Proposal to instantiate the verifier contract
- Proposal to instantiate the voting verifier contract
- Proposal to instantiate the gateway contract
- Proposal to instantiate the prover contract
- Proposal to register your chain with the router
Expand Down Expand Up @@ -34,22 +34,23 @@ All of your on-chain proposals will refer back to this introduction, so make sur
Examples were created with contracts on the `ethereum-sepolia` chain. Please refer to [`devnet-amplifier.json`](https://github.com/axelarnetwork/axelar-contract-deployments/blob/main/axelar-chains-config/info/devnet-amplifier.json) for contracts associated with other chains.
</Callout>

## Proposal to instantiate the verifier contract
## Proposal to instantiate the voting verifier contract

<tabs>

<tab-item title="EVM integrators">

If you are integrating an EVM chain, you can submit a proposal to instantiate the pre-deployed voting verifier contract with the [proper instantiation parameters](https://github.com/axelarnetwork/axelar-amplifier/blob/deab56a75209a158c082cbf9b77caf500eb4ec7c/contracts/voting-verifier/src/msg.rs#L9) using its existing `code_id` (`500`):
If you are integrating an EVM chain, you can submit a proposal to instantiate the pre-deployed voting verifier contract with the [proper instantiation parameters](https://github.com/axelarnetwork/axelar-amplifier/blob/deab56a75209a158c082cbf9b77caf500eb4ec7c/contracts/voting-verifier/src/msg.rs#L9) using its existing `code_id` (`626`):

```bash
export CODE_ID=500
export CODE_ID=626
export INTERCHAIN_GOV_ADDRESS="axelar10d07y265gmmuvt4z0w9aw880jnsr700j7v9daj"
export AXELAR_SERVICE_REGISTRY_ADDRESS="axelar1c9fkszt5lq34vvvlat3fxj6yv7ejtqapz04e97vtc9m5z9cwnamq8zjlhz"
export SOURCE_GATEWAY_ADDRESS="0xeE9E463Fd8bE9AF266e1B143C27F7D42648f4006"
export SOURCE_CHAIN_NAME="ethereum-sepolia"
export REWARDS_ADDRESS="axelar1vaj9sfzc3z0gpel90wu4ljutncutv0wuhvvwfsh30rqxq422z89qnd989l"
export MSG_ID_FORMAT="hex_tx_hash_and_event_index"
export ADDRESS_FORMAT="eip55"
export CHAIN_NAME="AmplifiedChain"
export NETWORK_GOV_ADDRESS="axelar10d07y265gmmuvt4z0w9aw880jnsr700j7v9daj"
export RPC="http://devnet-amplifier.axelar.dev:26657"
Expand All @@ -63,20 +64,21 @@ axelard tx gov submit-proposal instantiate-contract $CODE_ID \
"service_name":"validators",
"source_gateway_address":"'"$SOURCE_GATEWAY_ADDRESS"'",
"voting_threshold":["1","1"],
"block_expiry":10,
"block_expiry":"10",
"confirmation_height":1,
"source_chain":"'"$SOURCE_CHAIN_NAME"'",
"rewards_address":"'"$REWARDS_ADDRESS"'",
"msg_id_format":"'"$MSG_ID_FORMAT"'"
"msg_id_format":"'"$MSG_ID_FORMAT"'",
"address_format":"'"$ADDRESS_FORMAT"'"
}' \
--title="Instantiate verifier contract for "'"$CHAIN_NAME"'" \
--description="Instantiate verifier contract for "'"$CHAIN_NAME"'" \
--title="Instantiate verifier contract for $CHAIN_NAME" \
--description="Instantiate verifier contract for $CHAIN_NAME" \
--run-as $NETWORK_GOV_ADDRESS \
--label "'"$CHAIN_NAME"'" \
--label "$CHAIN_NAME" \
--deposit=100000000uamplifier \
--keyring-backend test \
--from wallet \
--gas auto --gas-adjustment 1.5 --gas-prices 0.007uamplifier \
--gas auto --gas-adjustment 1.5 --gas-prices 0.00005uamplifier \
--chain-id=devnet-amplifier \
--no-admin \
--node $RPC
Expand All @@ -91,10 +93,10 @@ axelard tx gov submit-proposal instantiate-contract $CODE_ID \
<tabs>

<tab-item title="EVM integrators">
If you are integrating an EVM chain, you can submit a proposal to instantiate the pre-deployed gateway contract with the [proper instantiation parameters](https://github.com/axelarnetwork/axelar-amplifier/blob/deab56a75209a158c082cbf9b77caf500eb4ec7c/contracts/gateway/src/msg.rs#L4) using its existing `code_id` (`493`):
If you are integrating an EVM chain, you can submit a proposal to instantiate the pre-deployed gateway contract with the [proper instantiation parameters](https://github.com/axelarnetwork/axelar-amplifier/blob/deab56a75209a158c082cbf9b77caf500eb4ec7c/contracts/gateway/src/msg.rs#L4) using its existing `code_id` (`616`):

```bash
export CODE_ID=493
export CODE_ID=616
export VOTING_VERIFIER_ADDRESS="axelar1e6jnuljng6aljk0tjct6f0hl9tye6l0n9p067pwx2374h82dmr0s9qcqy9"
export AXELAR_ROUTER_ADDRESS="axelar14jjdxqhuxk803e9pq64w4fgf385y86xxhkpzswe9crmu6vxycezst0zq8y"
```
Expand All @@ -105,14 +107,14 @@ axelard tx gov submit-proposal instantiate-contract $CODE_ID \
"verifier_address": "'"$VOTING_VERIFIER_ADDRESS"'",
"router_address": "'"$AXELAR_ROUTER_ADDRESS"'"
}' \
--title="Instantiate gateway contract for "'"$CHAIN_NAME"'" \
--description="Instantiate gateway contract for "'"$CHAIN_NAME"'" \
--title="Instantiate gateway contract for $CHAIN_NAME" \
--description="Instantiate gateway contract for $CHAIN_NAME" \
--run-as $NETWORK_GOV_ADDRESS \
--label "'"$CHAIN_NAME"'" \
--label "$CHAIN_NAME" \
--deposit=100000000uamplifier \
--keyring-backend test \
--from wallet \
--gas auto --gas-adjustment 1.5 --gas-prices 0.007uamplifier \
--gas auto --gas-adjustment 1.5 --gas-prices 0.00005uamplifier \
--chain-id=devnet-amplifier \
--no-admin \
--node $RPC
Expand All @@ -126,10 +128,10 @@ axelard tx gov submit-proposal instantiate-contract $CODE_ID \
<tabs>

<tab-item title="EVM integrators">
If you are integrating an EVM chain, you can submit a proposal to instantiate the pre-deployed prover contract with the [proper instantiation parameters](https://github.com/axelarnetwork/axelar-amplifier/blob/deab56a75209a158c082cbf9b77caf500eb4ec7c/contracts/multisig-prover/src/msg.rs#L12) using its existing `code_id` (`495`):
If you are integrating an EVM chain, you can submit a proposal to instantiate the pre-deployed prover contract with the [proper instantiation parameters](https://github.com/axelarnetwork/axelar-amplifier/blob/deab56a75209a158c082cbf9b77caf500eb4ec7c/contracts/multisig-prover/src/msg.rs#L12) using its existing `code_id` (`618`):

```bash
export CODE_ID=495
export CODE_ID=618
export MULTISIG_PROVER_ADMIN_ADDRESS="axelar1zlr7e5qf3sz7yf890rkh9tcnu87234k6k7ytd9"
MULTISIG_PROVER_GOV_ADDRESS="axelar1zlr7e5qf3sz7yf890rkh9tcnu87234k6k7ytd9"
export SOURCE_GATEWAY_ADDRESS="axelar1hdx49xndyxzrs3t5jkzart00taqysu6kmaf77waxv8regwxxpp4qcsea2w"
Expand All @@ -142,31 +144,31 @@ export DOMAIN_SEPARATOR="6973c72935604464b28827141b0a463af8e3487616de69c5aa0c785
```bash
axelard tx gov submit-proposal instantiate-contract $CODE_ID \
'{
"admin_address": "'"$MULTISIG_PROVER_ADMIN_ADDRESS"'",
"governance_address": "'"$MULTISIG_PROVER_GOV_ADDRESS"'",
"gateway_address": "'"$SOURCE_GATEWAY_ADDRESS"'",
"multisig_address": "'"MULTISIG_PROVER_ADDRESS"'",
"coordinator_address":"'"$AXELAR_COORDINATOR_ADDRESS"'",
"service_registry_address":"'"$AXELAR_SERVICE_REGISTRY_ADDRESS"'",
"voting_verifier_address": "'"$SOURCE_VERIFIER_GOV_ADDRESS"'",
"signing_threshold": ["1","1"],
"service_name": "validators",
"chain_name": "'"$CHAIN_NAME"'",
"verifier_set_diff_threshold": 1,
"encoder": "abi",
"key_type": "ecdsa",
"domain_separator": "'"$DOMAIN_SEPARATOR"'"
"admin_address": "'"$MULTISIG_PROVER_ADMIN_ADDRESS"'",
"governance_address": "'"$MULTISIG_PROVER_GOV_ADDRESS"'",
"gateway_address": "'"$SOURCE_GATEWAY_ADDRESS"'",
"multisig_address": "'"MULTISIG_PROVER_ADDRESS"'",
"coordinator_address":"'"$AXELAR_COORDINATOR_ADDRESS"'",
"service_registry_address":"'"$AXELAR_SERVICE_REGISTRY_ADDRESS"'",
"voting_verifier_address": "'"$SOURCE_VERIFIER_GOV_ADDRESS"'",
"signing_threshold": ["1","1"],
"service_name": "validators",
"chain_name": "'"$CHAIN_NAME"'",
"verifier_set_diff_threshold": 1,
"encoder": "abi",
"key_type": "ecdsa",
"domain_separator": "'"$DOMAIN_SEPARATOR"'"
}' \
--title="Instantiate prover contract for "'"$CHAIN_NAME"'" \
--description="Instantiate prover contract for "'"$CHAIN_NAME"'" \
--title="Instantiate prover contract for $CHAIN_NAME" \
--description="Instantiate prover contract for $CHAIN_NAME" \
--run-as $NETWORK_GOV_ADDRESS \
--label "'"$CHAIN_NAME"'" \
--label "$CHAIN_NAME" \
--deposit=100000000uamplifier \
--keyring-backend test \
--from wallet \
--gas auto --gas-adjustment 1.5 --gas-prices 0.007uamplifier \
--gas auto --gas-adjustment 1.5 --gas-prices 0.00005uamplifier \
--chain-id=devnet-amplifier \
--admin="axelar1zlr7e5qf3sz7yf890rkh9tcnu87234k6k7ytd9"
--admin="axelar1zlr7e5qf3sz7yf890rkh9tcnu87234k6k7ytd9" \
--node $RPC
```
</tab-item>
Expand All @@ -189,13 +191,13 @@ axelard tx gov submit-proposal execute-contract $ROUTER_CONTRACT_ADDRESS \
"msg_id_format": "'"$MSG_ID_FORMAT"'"
}
}' \
--title="Register "'"$CHAIN_NAME"'" chain with the Amplifier router" \
--description="Register "'"$CHAIN_NAME"'" chain with the Amplifier router" \
--title="Register $CHAIN_NAME chain with the Amplifier router" \
--description="Register $CHAIN_NAME chain with the Amplifier router" \
--run-as $ROUTER_GOV_ADDRESS \
--deposit=100000000uamplifier \
--keyring-backend test \
--from wallet \
--gas auto --gas-adjustment 1.5 --gas-prices 0.007uamplifier \
--gas auto --gas-adjustment 1.5 --gas-prices 0.00005uamplifier \
--chain-id=devnet-amplifier \
--node $RPC
```
Expand All @@ -218,13 +220,13 @@ axelard tx gov submit-proposal execute-contract $MULTISIG_CONTRACT_ADDRESS \
"contract_address":"'"$CHAIN_PROVER_ADDRESS"'"
}
}' \
--title="Authorize "'"$CHAIN_NAME"'" prover with the Amplifier multisig contract" \
--description="Authorize "'"$CHAIN_NAME"'" prover with the Amplifier multisig contract" \
--title="Authorize $CHAIN_NAME prover with the Amplifier multisig contract" \
--description="Authorize $CHAIN_NAME prover with the Amplifier multisig contract" \
--run-as $MULTISIG_GOV_ADDRESS \
--deposit=100000000uamplifier \
--keyring-backend test \
--from wallet \
--gas auto --gas-adjustment 1.5 --gas-prices 0.007uamplifier \
--gas auto --gas-adjustment 1.5 --gas-prices 0.00005uamplifier \
--chain-id=devnet-amplifier \
--node $RPC
```
Expand Down

0 comments on commit d4ee689

Please sign in to comment.