CI #539
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: CI | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
schedule: | |
- cron: '0 19 * * 3' | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
check: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
steps: | |
- name: Install rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
# We need to install the source of the standard library for the integration tests to check that links | |
# to the standard library are correctly generated. | |
components: rust-src, rustfmt | |
- name: Install cargo plugins | |
run: | | |
cargo install cargo-deadlinks | |
cargo install cargo-machete | |
cargo install taplo-cli | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Check everything | |
run: bash ./tools/check.sh basic doc_url_links unused_deps packaging fmt toml_fmt readme | |
- name: Code coverage | |
if: ${{ runner.os == 'Linux' }} | |
run: | | |
cargo install cargo-tarpaulin | |
./tools/codecov.sh --xml | |
bash <(curl -s https://codecov.io/bash) | |
msrv: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install rust | |
uses: dtolnay/rust-toolchain@stable | |
- name: Install cargo plugins | |
run: cargo install cargo-msrv | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Check the minimum supported rust version | |
run: bash ./tools/check.sh msrv | |
clippy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install rust | |
uses: dtolnay/rust-toolchain@stable | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Run clippy | |
run: bash ./tools/check.sh clippy |