-
Notifications
You must be signed in to change notification settings - Fork 3
AMPL Meter Passport prod deployment
Aalavandhan edited this page Oct 4, 2022
·
9 revisions
- Setup deployer key
# create keyfile
export KEYFILE=[Path to key file]
export PASSPHRASE=
- Deploy AMPL contracts
# use existing deployment
yarn hardhat --network prodEthereumBaseChain deploy:use_deployed \
--ampleforth-deployment-yaml "https://raw.githubusercontent.com/ampleforth/uFragments-eth-integration/master/migrations/deployments/mainnet-prod.yaml?token=ABPZMDVRUTAMJAQJVMZO7M3AVZRYA"
# deploy on bsc
export ETHERSCAN_API_KEY=BSC_API_KEY
yarn hardhat \
--network prodBscSatChain \
deploy:ampleforth_xc \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--token-name "Ampleforth secured by Meter Passport" \
--token-symbol "AMPL" \
--base-chain-network prodEthereumBaseChain
# deploy on avax-c-chain, verify manually
yarn hardhat \
--network prodAvaxSatChain \
deploy:ampleforth_xc \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--token-name "Ampleforth secured by Meter Passport" \
--token-symbol "AMPL" \
--base-chain-network prodEthereumBaseChain
# deploy on meter chain, verify manually
yarn hardhat \
--network prodMeterSatChain \
deploy:ampleforth_xc \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--token-name "Ampleforth secured by Meter Passport" \
--token-symbol "AMPL" \
--base-chain-network prodEthereumBaseChain
- Use deployed chain bridge contract and deploy handlers
export ETHERSCAN_API_KEY=ETH_API_KEY
yarn hardhat --network prodEthereumBaseChain deploy:chain_bridge_use_deployed \
--bridge-address "0xa7E2cE557980618253D9dafdEDb27ecCe2F82167" \
--generic-handler-address "0x5945432d6c0A4b30c1178888F776a4d430d5BC94"
yarn hardhat --network prodEthereumBaseChain deploy:chain_bridge_base_chain \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--use-deployed true
#deploy on bsc
export ETHERSCAN_API_KEY=BSC_API_KEY
yarn hardhat --network prodBscSatChain deploy:chain_bridge_use_deployed \
--bridge-address "0x8209815136b35F21B8C0f5AA2E2f915a73530dF9" \
--generic-handler-address "0x431a7Bb43b6242225Ceb97Bde140219b4d043116"
yarn hardhat --network prodBscSatChain deploy:chain_bridge_satellite_chain \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--use-deployed true
# deploy on avax-c-chain, verify manually
yarn hardhat --network prodAvaxSatChain deploy:chain_bridge_use_deployed \
--bridge-address "0xB447acD21831F6615e208c9EEa7E6049dB3391Cd" \
--generic-handler-address "0x0B9709FE3aa76068f07d054fd4417445D5c7DA9A"
yarn hardhat --network prodAvaxSatChain deploy:chain_bridge_satellite_chain \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--use-deployed true
# deploy on meter, verify manually
yarn hardhat --network prodMeterSatChain deploy:chain_bridge_use_deployed \
--bridge-address "0x23894d2937A2a4A479f0407909DA5B028049568E" \
--generic-handler-address "0x701627e8638c452732eceCC7d0238746654fb365"
yarn hardhat --network prodMeterSatChain deploy:chain_bridge_satellite_chain \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--use-deployed true
- Inspect state
# prints ampl state
yarn hardhat info:ampl \
--networks "[\"prodEthereumBaseChain\", \"prodBscSatChain\", \"prodAvaxSatChain\", \"prodMeterSatChain\"]" \
--bridge chainBridge
# prints ampl balances across chains
yarn hardhat info:ampl:balance \
--networks "[\"prodEthereumBaseChain\", \"prodBscSatChain\", \"prodAvaxSatChain\", \"prodMeterSatChain\"]" \
--wallet "0x5A617f363674489339226E8A448307763a43108F"
# prints the configuration
yarn hardhat info:ampl:setup \
--networks "[\"prodEthereumBaseChain\", \"prodBscSatChain\", \"prodAvaxSatChain\", \"prodMeterSatChain\"]" \
--wallet "0x5A617f363674489339226E8A448307763a43108F"
# prints bridge state
yarn hardhat info:chain_bridge \
--networks "[\"prodEthereumBaseChain\", \"prodBscSatChain\", \"prodAvaxSatChain\", \"prodMeterSatChain\"]"
# get transaction history
yarn hardhat info:cb_ampl_tx --networks "[\"prodEthereumBaseChain\", \"prodBscSatChain\", \"prodAvaxSatChain\"]" --output-csv-path prod-tx.csv
- Cross-chain transactions
# report rebase from base-chain to satellite-chains
yarn hardhat --network prodEthereumBaseChain chain_bridge:report_rebase \
--satellite-chain-networks "[\"prodBscSatChain\", \"prodAvaxSatChain\"]" \
--keyfile $KEYFILE --passphrase $PASSPHRASE
# wait for relayer to report rebase execute rebase on satellite chains
yarn hardhat rebase:satellite_chain \
--networks "[\"prodBscSatChain\"]" \
--keyfile $KEYFILE --passphrase $PASSPHRASE
# cross-chain transfer from base to satellite
yarn hardhat --network prodEthereumBaseChain chain_bridge:xc_transfer \
--target-chain-network prodBscSatChain \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--recipient-address "0x5A617f363674489339226E8A448307763a43108F" \
--amount 1 \
--bridge chainBridge
# cross-chain transfer from satellite to base
yarn hardhat --network prodBscSatChain xc_transfer \
--target-chain-network prodEthereumBaseChain \
--keyfile $KEYFILE --passphrase $PASSPHRASE \
--recipient-address "0x5A617f363674489339226E8A448307763a43108F" \
--amount 1 \
--bridge chainBridge