GitHub CI: Fix MSRV build (#45) #6
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
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow | |
# Same as file name | |
name: test | |
permissions: | |
contents: read | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
run: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
include: | |
- os: ubuntu-latest | |
rust: stable | |
workspace-extra-args: "" | |
# Minimum Supported Rust Version (MSRV) | |
- os: ubuntu-latest | |
rust: 1.62.0 | |
workspace-extra-args: "--exclude player --exclude writer" | |
steps: | |
- name: Install dependencies | |
run: sudo apt install alsa libasound2-dev libxcb-shape0-dev libxcb-xfixes0-dev | |
- name: Install Rust toolchain | |
uses: dtolnay/rust-toolchain@master | |
with: | |
# We have to use `master` and pass the toolchain explicitly | |
toolchain: ${{ matrix.rust }} | |
- name: Check out repository | |
uses: actions/checkout@v3 | |
- name: Generate Cargo.lock | |
run: cargo generate-lockfile | |
- name: Cache Rust toolchain and build artifacts | |
uses: Swatinem/rust-cache@v2 | |
with: | |
# The cache should not be shared between different workflows and jobs. | |
shared-key: ${{ github.workflow }}-${{ github.job }} | |
- name: Run workspace tests | |
run: cargo test --locked --workspace --features decode-all ${{ matrix.workspace-extra-args }} -- --nocapture --quiet |