Skip to content

feat(major-interchain-token-service): apply token balance invariants #3573

feat(major-interchain-token-service): apply token balance invariants

feat(major-interchain-token-service): apply token balance invariants #3573

Workflow file for this run

# Based on https://github.com/actions-rs/example/blob/master/.github/workflows/quickstart.yml
name: Basic
on:
pull_request:
push:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Test Suite
runs-on: blacksmith-32vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.78.0
override: true
- name: Install protoc
uses: arduino/setup-protoc@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Cache build artifacts
uses: useblacksmith/rust-cache@v3.0.1
id: cache
with:
shared-key: "cache-tests"
- name: Log crates.toml
if: steps.cache.outputs.cache-hit == 'true'
run: cat /home/runner/.cargo/.crates.toml
- name: Run tests
uses: actions-rs/cargo@v1
with:
command: test
args: --locked
env:
RUSTFLAGS: --cfg tracing_unstable
RUST_BACKTRACE: 1
cosmwasm-compilation:
name: Cosmwasm Compilation
runs-on: blacksmith-32vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.78.0
target: wasm32-unknown-unknown
default: true
override: true
- name: Install cosmwasm-check compatible toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.75.0
target: wasm32-unknown-unknown
default: false
override: false
- name: Cache build artifacts
id: cache
uses: useblacksmith/rust-cache@v3.0.1
with:
shared-key: "cache-cosmwasm-compilation"
- name: Log crates.toml
if: steps.cache.outputs.cache-hit == 'true'
run: cat /home/runner/.cargo/.crates.toml
- name: Build wasm release
run: |
for C in ./contracts/*/
do
echo "Compiling `basename $C`..."
(cd $C && cargo build --release --lib --target wasm32-unknown-unknown --locked)
done
# cosmwasm-check v1.3.x is used to check for compatibility with wasmvm v1.3.x used by Axelar
# Older rust toolchain is required to install cosmwasm-check v1.3.x
- name: Install cosmwasm-check
uses: actions-rs/cargo@v1
with:
command: install
toolchain: 1.75.0
args: --version 1.3.4 --locked cosmwasm-check
- name: Check wasm contracts
run: cosmwasm-check ./target/wasm32-unknown-unknown/release/*.wasm
ampd-compilation:
name: Ampd Release Compilation
runs-on: blacksmith-16vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.78.0
target: wasm32-unknown-unknown
override: true
- name: Install protoc
uses: arduino/setup-protoc@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Cache build artifacts
id: cache
uses: useblacksmith/rust-cache@v3.0.1
with:
shared-key: "cache-ampd-compilation"
- name: Log crates.toml
if: steps.cache.outputs.cache-hit == 'true'
run: cat /home/runner/.cargo/.crates.toml
- name: Build ampd
working-directory: ./ampd
run: cargo build --release --locked
lints:
name: Lints
runs-on: blacksmith-16vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install nightly toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
components: rustfmt
override: true
- name: Install protoc
uses: arduino/setup-protoc@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Cache build artifacts
uses: useblacksmith/rust-cache@v3.0.1
id: cache
with:
shared-key: "cache-lints"
- name: Log crates.toml
if: steps.cache.outputs.cache-hit == 'true'
run: cat /home/runner/.cargo/.crates.toml
- name: Install cargo-sort
uses: baptiste0928/cargo-install@v2
with:
crate: cargo-sort
- name: Run cargo fmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.78.0
components: clippy
override: true
- name: Run cargo sort
uses: actions-rs/cargo@v1
with:
command: sort
args: --workspace --check --check-format
- name: Run cargo clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: --all-targets -- -D warnings -A deprecated
- name: Check Diff
# fails if any changes not committed
run: git diff --exit-code