ci: see if this basic matrix of build targets and runners works for checking, building, and testing

This commit is contained in:
J / Jacob Babich
2024-10-04 16:59:08 -04:00
parent e4e2efafb9
commit 65487b2378

View File

@@ -11,30 +11,55 @@ env:
jobs: jobs:
check-build-and-test: check-build-and-test:
runs-on: ubuntu-latest strategy:
matrix:
supporteds:
- runner: macos-latest
target: aarch64-apple-darwin
- runner: macos-latest
target: x86_64-apple-darwin
- runner: ubuntu-latest
target: aarch64-unknown-linux-gnu
- runner: ubuntu-latest
target: aarch64-unknown-linux-musl
- runner: ubuntu-latest
target: x86_64-unknown-linux-gnu
- runner: ubuntu-latest
target: x86_64-unknown-linux-musl
- runner: windows-latest
target: aarch64-pc-windows-gnu
- runner: windows-latest
target: aarch64-pc-windows-msvc
- runner: windows-latest
target: x86_64-pc-windows-gnu
- runner: windows-latest
target: x86_64-pc-windows-msvc
runs-on: ${{ matrix.supporteds.runner }}
timeout-minutes: 15 timeout-minutes: 15
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v4 uses: actions/checkout@v4
- name: Install Rust toolchain - name: Install stable Rust toolchain
uses: dtolnay/rust-toolchain@stable uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.supporteds.target }}
- name: Install Nextest - name: Install Nextest
uses: taiki-e/install-action@cargo-nextest uses: taiki-e/install-action@cargo-nextest
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
- name: Check - name: Check
run: cargo check --verbose run: cargo check --verbose --target ${{ matrix.supporteds.target }}
- name: Formatting - name: Formatting
run: cargo fmt --check --verbose run: cargo fmt --check --verbose --target ${{ matrix.supporteds.target }}
- name: Build - name: Build
run: cargo build --verbose run: cargo build --verbose --target ${{ matrix.supporteds.target }}
- name: Test - name: Test
run: cargo nextest run run: cargo nextest run --target ${{ matrix.supporteds.target }}
minimal-dependencies-check-build-and-test: minimal-dependencies-check-build-and-test:
runs-on: ubuntu-latest runs-on: ubuntu-latest