Add some more matrix to CI #167
Workflow file for this run
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
name: Build & Test | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
# Minumum supported Rust version is 1.56.1 | |
toolchain: [1.56.1, stable, beta, nightly] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Update Toolchain | |
run: | | |
rustup default ${{ matrix.toolchain }} | |
rustup component add --toolchain ${{ matrix.toolchain }} rustfmt | |
rustup component add --toolchain ${{ matrix.toolchain }} clippy | |
rustup update ${{ matrix.toolchain }} | |
- name: Lint | |
# Lint all packages (proxy, protocol) and all targets (library, test, etc.). | |
run: cargo clippy --all --all-targets | |
- name: Format | |
# Format all packages. | |
run: cargo fmt --all -- --check | |
- name: Build | |
# Build all packages with default features, none, all, | |
# Build the protocol package with specific feature sub-sets. | |
run: | | |
cargo build --all --verbose | |
cargo build --all --verbose --no-default-features | |
cargo build --all --verbose --all-features | |
- name: Test | |
# Test all packages with default features, none, all. | |
# Test the protocol package with specific feature sub-sets. | |
run: | | |
cargo test --all --verbose | |
cargo test --all --verbose --no-default-features | |
cargo test --all --verbose --all-features | |
- name: Check No Standard Library Support | |
run: | | |
rustup target add --toolchain ${{ matrix.toolchain }} thumbv7m-none-eabi | |
cargo install cross | |
cross build --package bip324 --target thumbv7m-none-eabi --no-default-features --features alloc | |