watchexec/.github/workflows/tests.yml

63 lines
1.5 KiB
YAML
Raw Normal View History

2022-09-07 02:36:55 +02:00
name: Test suite
on:
workflow_dispatch:
pull_request:
push:
branches:
- main
tags-ignore:
- "*"
2022-09-07 04:15:38 +02:00
env:
CARGO_TERM_COLOR: always
CARGO_UNSTABLE_SPARSE_REGISTRY: "true"
2022-09-07 02:36:55 +02:00
jobs:
test:
strategy:
matrix:
platform:
- macos
- ubuntu
- windows
toolchain:
- stable
- 1.60.0
name: Test ${{ matrix.platform }} with Rust ${{ matrix.toolchain }}
runs-on: "${{ matrix.platform }}-latest"
steps:
2022-09-07 04:15:38 +02:00
- uses: actions/checkout@v3
- name: Configure toolchain
run: |
rustup toolchain install --profile minimal --no-self-update ${{ matrix.toolchain }}
rustup default ${{ matrix.toolchain }}
2022-09-07 05:41:34 +02:00
# https://github.com/actions/cache/issues/752
- if: ${{ runner.os == 'Windows' }}
name: Use GNU tar
shell: cmd
run: |
echo "Adding GNU tar to PATH"
echo C:\Program Files\Git\usr\bin>>"%GITHUB_PATH%"
2022-09-07 04:15:38 +02:00
- name: Configure caching
uses: actions/cache@v3
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ matrix.toolchain }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-${{ matrix.toolchain }}-
${{ runner.os }}-cargo-
- name: Run test suite
run: cargo test
- name: Check that CLI runs
run: cargo run -p watchexec-cli -- -1 echo