272f3c1984
* Use arrays instead of separate files per config * Remove redundant endpoint on cosmwasm * Add functions for upgrading the wormhole guardian sets * Add wormhole contract management on evm and cosmwasm * Add getter functions to check what sort of wormhole-deployment is used * Reorganize contract manager package to be used via other packages * Remove .env files per network and create a script that outputs the same file * Use env variables in truffle config and output config in deployments * Add executeUpdatePriceFeed to contract interface * Add update pricefeed script * Add saving functionality to store * Save new contract configs automatically on Evm * Make deploy script use the create-env.js internally * Add utility function to get implementation address for Evm Proxy contracts * Add shimmer testnet and replace evmos nunfunctional rpc * New procedure for contract verification * Update docs and remove duplicate configurations * Remove shimmer configs * Read default data source configs via contract manager * Remove flattened contract before compiling/deploying |
||
---|---|---|
.. | ||
src | ||
store | ||
README.md | ||
deploy.sh | ||
package.json | ||
tsconfig.json |
README.md
How to add a new chain for deployment
- Add the chain name to
ChainId
enum inchains-manager/chains.ts
- Add the network configs to
CHAINS_NETWORK_CONFIG
inchains-manager/chains.ts
. You can lookup for rpc endpoints in this repo. ThegasPrice
is theaverage_gas_price
of the chain + the chain tokendenom
(Available in chain-registrychain.json
file). - Add the contract configs to
CHAINS_CONTRACT_CONFIG
inconfigs.ts
- Add the ChainId either to
getChainIdsForStableDeployment
orgetChainIdsForEdgeDeployment
functions inhelper.ts
- 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>
- Deploy the pyth contract:
ts-node src/instantiate-pyth.ts --contract-version <X.Y.Z> --mnemonic "<YOUR_MNEMONIC>" --deploy <stable or edge>
- Test the new contract:
ts-node src/test.ts --mnemonic "<YOUR_MNEMONIC>" --deploy <stable or edge>
- Commit the new json files to the repo
- Update documentation repos and add the new contract address