run wasm32-wasip1
and wasm32-wasip2
tests on CI
#373
Workflow file for this run
This file contains hidden or 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
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
name: CI | |
jobs: | |
deny: | |
name: Cargo deny | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: EmbarkStudios/cargo-deny-action@v2 | |
timeout-minutes: 10 | |
build_and_test: | |
name: OS Test | |
strategy: | |
fail-fast: false | |
matrix: | |
rust-version: | |
- nightly | |
- stable | |
- "1.63" | |
os: | |
- ubuntu-latest | |
- windows-latest | |
- macos-latest | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ matrix.rust-version }} | |
- name: Generating the Cargo.lock | |
run: cargo generate-lockfile | |
- name: Downgrading once_cell | |
if: matrix.rust-version == 1.63 | |
run: cargo update -p once_cell --precise 1.20.3 | |
- name: Build | |
run: cargo build | |
- name: Test | |
run: cargo test | |
wasip1: | |
name: WASI P1 Test Build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@nightly | |
with: | |
targets: wasm32-wasip1 | |
- name: Install wasmtime | |
run: curl https://wasmtime.dev/install.sh -sSf | bash | |
- name: Test | |
env: | |
RUST_BACKTRACE: 1 | |
RUSTFLAGS: "" | |
CARGO_TARGET_WASM32_WASIP1_RUNNER: "/home/runner/.wasmtime/bin/wasmtime --dir /tmp/" | |
run: cargo test --target wasm32-wasip1 --features nightly | |
wasip2: | |
name: WASI P2 Test Build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@nightly | |
with: | |
targets: wasm32-wasip2 | |
- name: Install wasmtime | |
run: curl https://wasmtime.dev/install.sh -sSf | bash | |
- name: Test | |
env: | |
RUST_BACKTRACE: 1 | |
RUSTFLAGS: "" | |
CARGO_TARGET_WASM32_WASIP2_RUNNER: "/home/runner/.wasmtime/bin/wasmtime --dir /tmp/" | |
run: cargo test --target wasm32-wasip2 --features nightly | |
wasm: | |
name: WASM Test Build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
targets: wasm32-unknown-unknown | |
- name: Build | |
run: cargo build --target wasm32-unknown-unknown | |
lint: | |
name: Clippy and fmt | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
components: clippy, rustfmt | |
- name: Check formatting | |
run: cargo fmt --check | |
- name: Check for clippy lints | |
run: cargo clippy |