name: Test
on:
push:
pull_request:
workflow_dispatch:
jobs:
skip-duplicate:
name: Skip Duplicate
permissions:
actions: write
runs-on: ubuntu-latest
outputs:
should-skip: ${{ steps.skip-duplicate.outputs.should-skip }}
steps:
- id: skip-duplicate
name: Skip Duplicate
uses: liblaf/actions/skip-duplicate@dist
with:
cancel-others: true
test:
name: Test (${{ matrix.platform.target }})
needs:
- skip-duplicate
if: needs.skip-duplicate.outputs.should-skip != 'true'
runs-on: ${{ matrix.platform.runner }}
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Build
uses: houseabsolute/actions-rust-cross@v1
with:
command: test
target: ${{ matrix.platform.target }}
args: --all-features
strategy:
matrix:
platform:
- runner: macos-latest
target: aarch64-apple-darwin
- runner: macos-latest
target: x86_64-apple-darwin
- runner: ubuntu-latest
target: x86_64-unknown-linux-gnu
- runner: ubuntu-latest
target: x86_64-unknown-linux-musl
- runner: windows-latest
target: x86_64-pc-windows-msvc
fail-fast: false