Download, Compile, Store
Walking before we can run...
First, we need to download the code from cosmwasm-plus.


Run the following to download the correct tag and extract it. ls should show you the folder is present once it's unpacked. You can also use git instead of wget if you prefer.
git clone
git fetch --tags
git checkout v0.9.2
cd contracts/cw1-subkeys


Unlike before, where we compiled just the one contract, we'll compile all of them, since we may want to experiment with others. Run this at the root of the cosmwasm-plus folder:
sudo docker run --rm -v "$(pwd)":/code \
--mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
--mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \


When compiling is complete (it will take a while) cd into the artifacts directory. ls should show you binaries for each of the contracts have been created. The one we care about is cw1_subkeys.wasm.
To store this on-chain, we use a similar command to last time:
junod tx wasm store cw1_subkeys.wasm --from <your-key> --chain-id <chain-id> \
--gas-prices 0.1ujunox --gas auto --gas-adjustment 1.3 -b block -y
Also like last time, look in the JSON output for the code_id value. If you would prefer to capture this as a shell variable, for the previous step you can instead do:
cd artifacts
TX=$(junod tx wasm store cw1_subkeys.wasm --from <your-key> --chain-id=<chain-id> --gas auto --output json -y | jq -r '.txhash')
CODE_ID=$(junod query tx $TX --output json | jq -r '.logs[0].events[-1].attributes[0].value')
Copy link
On this page