Initialize the Contract
Configure and get the contract up-and-running.
Now we've uploaded the contract, now we need to initialise it.
We're using the Poodle Coin example here - $POOD
was the first meme coin deployed to a Source Chain testnet.
Choose another name rather than Poodle Coin/POOD, as this is likely already taken on the testnet.
Generate JSON with arguments
To generate the JSON, you can use jq
, or, if you're more familiar with JS/node, write a hash and encode it using the node CLI.
This example uses the node
REPL. If you have node
installed, just type node
in the terminal and hit enter to access it.
Instantiate the contract
Note that if you use rich types like CosmWasm's Uint128
then they will be strings from the point of view of JSONSchema. If you have an int, you do not need quotes, e.g. 1
- but for a Uint128
you will need them, e.g. "1"
.
Note also that the --amount
is used to initialize the new account associated with the contract.
In the example below, 6
is the value of $CODE_ID
.
If you have set $CODE_ID
in your shell, you can instead run:
If this succeeds, look in the output and get contract address from output e.g source1a2b....
or run:
This will allow you to query using the value of $CONTRACT_ADDR
Note that although we omit --admin
when instantiating, in almost all production situations you will want to specify an admin address for the contract. if you do not do this, you will not be able to migrate the contract in future.
Last updated