pyth-crosschain/target_chains/cosmwasm/tools
Mohammad Amin Khashkhashi Moghaddam 92b295bd7a
[contract-manager] Cosmwasm contracts (#986)
* Add stable testnet contracts

* Fix bug in creating InjectiveExecutor from mnemonic

* Import only from root library

* Code verification on proposals for cosmwasm

* Minimal script to upload wasm codes

* Use the netwrok parameter for InjectiveChain executor instead of endpoints
2023-07-27 14:36:16 +02:00
..
src [contract-manager] Cosmwasm contracts (#986) 2023-07-27 14:36:16 +02:00
store Remove osmosis testnet 4 as it is deprecated and we already have testnet 5 (#974) 2023-07-24 19:37:55 +09:00
README.md [target_chains] Add deployment information for neutron mainnet (#930) 2023-06-30 14:33:25 +02:00
deploy.sh [refactor] Convert hyphen to underscore in the directory tree (#524) 2023-01-24 19:06:22 +01:00
package.json Abolish xc governance sdk (#957) 2023-07-17 15:24:54 +02:00
tsconfig.json Expose pythnet message buffer idls (#865) 2023-06-09 14:10:28 +02:00

README.md

How to add a new chain for deployment

  1. Add the chain name to ChainId enum in chains-manager/chains.ts
  2. Add the network configs to CHAINS_NETWORK_CONFIG in chains-manager/chains.ts. You can lookup for rpc endpoints in this repo. The gasPrice is the average_gas_price of the chain + the chain token denom (Available in chain-registry chain.json file).
  3. Add the contract configs to CHAINS_CONTRACT_CONFIG in configs.ts
  4. Add the ChainId either to getChainIdsForStableDeployment or getChainIdsForEdgeDeployment functions in helper.ts
  5. If the wormhole contract is not deployed on the target chain run the following command:
ts-node src/wormhole-stub.ts --mnemonic "<YOUR_MNEMONIC>" --deploy <stable or edge>
  1. Deploy the pyth contract:
ts-node src/instantiate-pyth.ts --contract-version <X.Y.Z> --mnemonic "<YOUR_MNEMONIC>" --deploy <stable or edge>
  1. Test the new contract:
ts-node src/test.ts --mnemonic "<YOUR_MNEMONIC>" --deploy <stable or edge>
  1. Commit the new json files to the repo
  2. Update documentation repos and add the new contract address