curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
cargo install --force --locked cargo-contract
rustup toolchain install stable-2023-12-28
rustup component add rust-src --toolchain stable-2023-12-28
After installing the pre-reqs above (especially the required stable toolchain), contracts must be compiled. This is done with the build-all.sh script which can be run simply via the following command. All contract artifacts will be saved in the deployments directory.
pnpm run build
The integration tests are located in contract_tests and can be run simply via the following command.
pnpm test
Contract deployment is configured with the following environment variables.
ACCOUNT_URI
- deployer accountVALIDATOR_ADDRESSES
- comma separated list of validators used for nomination
pnpm run deploy
Use the script convert.py to generate the json file needed for upload to subscan
From the root cargo.toml directory
python scripts/utils/convert.py --manifest ./Cargo.toml > verify.json
After, drop the verify.json file into subscan with all default settings, or non default. Drop contract address and verify