ADAA #143
Workflow file for this run
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
name: Tests | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
# Run when pushing version tags, since otherwise it's impossible to | |
# restart a successful build after pushing a tag | |
- '*.*.*' | |
pull_request: | |
branches: | |
- main | |
defaults: | |
run: | |
# This otherwise gets run under dash which does not support brace expansion | |
shell: bash | |
jobs: | |
test: | |
strategy: | |
matrix: | |
os: [ubuntu-22.04, macos-11, windows-latest] | |
name: Build and test all components | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v2 | |
# Needed for git-describe to do anything useful | |
- name: Fetch all git history | |
run: git fetch --force --prune --tags --unshallow | |
- name: Install dependencies | |
if: startsWith(matrix.os, 'ubuntu') | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libasound2-dev libgl-dev libjack-dev libx11-xcb-dev libxcb1-dev libxcb-dri2-0-dev libxcb-icccm4-dev libxcursor-dev libxkbcommon-dev libxcb-shape0-dev libxcb-xfixes0-dev | |
- uses: actions/cache@v2 | |
# FIXME: Caching `target/` causes the Windows runner to blow up after some time | |
if: startsWith(matrix.os, 'windows') | |
with: | |
path: | | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
key: ${{ matrix.name }}-${{ matrix.cross-target }} | |
- uses: actions/cache@v2 | |
if: "!startsWith(matrix.os, 'windows')" | |
with: | |
path: | | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ matrix.name }}-${{ matrix.cross-target }} | |
- name: Set up Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
- name: Build all targets | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --workspace --all-features | |
- name: Run the tests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --workspace --all-features |