fix: fix release action (#700) #3734
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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/[email protected] | |
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/[email protected] | |
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/[email protected] | |
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/[email protected] | |
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 |