🕹️Deploy WASM Smart Contract
How to deploy WASM binary file on Titan Chain
Note: This process require some advanced knowledge. This tutorial focuses on smart contract deployment using command line tool. You can explore other methods by yourself.
Step 1: Prepare the WASM contract file
Compile your WASM contract, and generate the binary with name
<project_name>.wasm
Step 2: Upload the WASM file to Titan Chain
Execute the upload command:
titand tx wasm store <project_name>.wasm --from <account> --gas 10000000 --gas-prices 0.0025uttnt
<account>
is your account name. Please replace it with your actual account name.
Check if the transaction is on chain and get the code id:
titand query tx <tx_hash>
<tx_hash>
is the transaction hash generated from your upload, used for query the transaction status.
Or get the code id using the following command:
titand query wasm list-code
Using list-code command, you can view all uploaded contracts and their code id.
Step 3: Instantiate the WASM contract
Instantiate the contract:
titand tx wasm instantiate <code_id> <json_encoded_init_args> --admin="$(titand keys show <account> -a)" --from <account> --gas 10000000 --gas-prices 0.0025uttnt --label <label>
<code_id>
is the code id you get in Step 2
<json_encoded_init_args>
is the parameter required for contract initiation, which should be coded in JSON format.
<label>
is the contract label
Check if the transaction is on chain and get the contract address:
titand query tx <tx_hash>
If successful, you can get the contract address for further operations.
Step 4: Query the contract state
Using the command to query cantract state:
titand query wasm contract-state smart <contract_address> <query_args>
<contract_address>
is the contract address you get in Step 3.
<query_args>
is the required parameter for the query, which should be coded in JSON format.
View contract state using Titan blockchain browser:
You can also use Titan blockchain browser to view your contract status: Titan Blockchain Browser
Key in the contract address in the browser and you can see the details and state of your contract.
Step 5: Execute the contract
Execute the contract call:
titand tx wasm execute <contract_address> <exec_args> --fees 500uttnt --from <account>
<exec_args>
is the required parameter for contract execution, which should be coded in JSON format.
Hints:
<...> in every step should be replaced by your actual value
Check the parameters in the command carefully before execute each step to ensure correct deployment and operation of the contract.
最后更新于