Skip to content

Smart contracts for Ike sA0 Liquid Staking Protocol (LSP) on Aleph Zero

License

Notifications You must be signed in to change notification settings

WaterCoolerStudiosInc/ike-contracts

Repository files navigation

Ike Contracts

Installing Environment Pre-reqs

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

Building

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

Testing (Integration Tests)

The integration tests are located in contract_tests and can be run simply via the following command.

pnpm test

Deploying

Contract deployment is configured with the following environment variables.

  • ACCOUNT_URI - deployer account
  • VALIDATOR_ADDRESSES - comma separated list of validators used for nomination
pnpm run deploy

Contract verification

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

About

Smart contracts for Ike sA0 Liquid Staking Protocol (LSP) on Aleph Zero

Resources

License

Stars

Watchers

Forks

Packages

No packages published