on:
workflow_call:
inputs:
os:
required: true
type: string
env:
CARGO_INCREMENTAL: 0
CARGO_NET_RETRY: 10
RUSTUP_MAX_RETRIES: 10
RUST_BACKTRACE: short
jobs:
tests:
name: Run tests
runs-on: ${{ inputs.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
override: true
- name: Generate lockfile for cache
uses: actions-rs/cargo@v1
with:
command: generate-lockfile
- name: Setup cache
uses: Swatinem/rust-cache@v1
- name: Build tests
uses: actions-rs/cargo@v1
with:
command: test
args: --all-features --all-targets --no-run
- name: Run tests
uses: actions-rs/cargo@v1
with:
command: test
args: --all-features --all-targets --no-fail-fast