name: CI
on:
push: { branches: [main] }
pull_request: { branches: [main] }
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Prepare A3S workspace crates
run: bash .github/scripts/checkout-a3s-workspace.sh
- uses: dtolnay/rust-toolchain@stable
with: { components: "rustfmt, clippy" }
- run: cargo fmt --all -- --check
- run: cargo clippy --all-targets -- -D warnings
- run: cargo test --all-targets
- run: cargo build --release
cross:
strategy:
fail-fast: false
matrix:
os: [windows-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Prepare A3S workspace crates
shell: bash
run: bash .github/scripts/checkout-a3s-workspace.sh
- uses: dtolnay/rust-toolchain@stable
- run: cargo build --release