Ejemplo de cosmoWasm
Construyendo contratos
Para trabajar con CosmWasm recomendamos utilizar los marcos de desarrollo Sylvia o comenzar con la plantilla CosmWasm .
Configure su entorno de desarrollo e instale el espacio de trabajo de CosmWasm, que incluye plantillas y herramientas para crear contratos inteligentes de CosmWasm.
cargo install cargo-generate --features vendored-openssl
cargo generate --git https://github.com/CosmWasm/cw-template.git --name my-contract
cd my-contract
Escriba su contrato inteligente
Edite los archivos src/contract.rs
y src/msg.rs
para definir la l贸gica de su contrato y los mensajes que maneja.
Pruebe su contrato
Escriba pruebas unitarias en el tests
directorio.
cargo test
compilar el contrato
Compile su contrato CosmWasm en un binario WebAssembly (WASM):
RUSTFLAGS='-C link-arg=-s' cargo wasm
Optimice el binario WASM para reducir su tama帽o y prepararlo para blockchain:
docker run --rm -v "$(pwd)":/contract \
--mount type=volume,source="$(basename "$(pwd)")\_cache",target=/code/target \
--mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
cosmwasm/workspace-optimizer:0.12.6
Subir el contrato
Con茅ctese a RollApp X:
rollappd tx wasm store contract.wasm --from <your-wallet> --chain-id <chain-id> --gas auto --gas-adjustment 1.3 --gas-prices 0.025roly -y
Crear una instancia del contrato Despu茅s de cargarlo, debe crear una instancia del contrato con su configuraci贸n inicial.
rollappd tx wasm instantiate <code_id> '{"count": 100}' --label "my counter" --from <your-wallet> --chain-id <chain-id> --amount 5000roly --gas auto
Last updated