| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- import yargs from "yargs";
- import { hideBin } from "yargs/helpers";
- import { CosmWasmChain } from "../src/chains";
- import { CosmWasmPriceFeedContract } from "../src/contracts/cosmwasm";
- import { DefaultStore } from "../src/store";
- import { COMMON_DEPLOY_OPTIONS } from "./common";
- const parser = yargs(hideBin(process.argv))
- .scriptName("deploy_cosmwasm.ts")
- .usage(
- "Usage: $0 --code <path/to/artifact.wasm> --private-key <private-key> --chain <chain>"
- )
- .options({
- code: {
- type: "string",
- demandOption: true,
- desc: "Path to the artifact .wasm file",
- },
- "private-key": COMMON_DEPLOY_OPTIONS["private-key"],
- chain: {
- type: "string",
- demandOption: true,
- desc: "Chain to upload the code on. Can be one of the chains available in the store",
- },
- wormholeContract: {
- type: "string",
- demandOption: true,
- desc: "Wormhole contract address deployed on this chain",
- },
- });
- async function main() {
- const argv = await parser.argv;
- const { code, wormholeContract } = argv;
- console.log(
- await CosmWasmPriceFeedContract.deploy(
- DefaultStore.chains[argv.chain] as CosmWasmChain,
- wormholeContract,
- argv["private-key"],
- code
- )
- );
- }
- main();
|