This a CosmWasm smart contract that demonstrates the Inter-Blockchain Communication protocol capabilities.
This contract does not have any direct user initiated messages. It can only receive messages from the local contract.
Compile and optimize the smart contract Wasm.
make && make optimize
- provenanced cli
See the Overview for end-to-end steps
This contract is intended to be used with the other two projects in the ibc
directory:
To simplify the setup and execution, several scripts are provided in the scripts directory.
-
The
setup_remote_chain
script will start a Provenance chain with 3 funded accounts:validator
,remoteaccount
, andrelayer
. This "remote" chain will use ports that are slightly modified from default so that the two chains can run simultaneously. -
store_and_init_remote_contract.sh
The
store_and_init_remote_contract
script stores and initializes the "remote" smart contract. This step must be performed before starting therelayer
-
#[cw_serde] pub enum PacketMsg { WhoAmI {}, }
-
#[cw_serde] pub struct WhoAmIResponse { pub account: String, pub block_info: BlockInfo, }