Merge pull request #21 from opencomputeproject/fea/spec_validation #75
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: check | |
on: | |
push: | |
branches: [dev, main] | |
pull_request: | |
# only read-only for GITHUB_TOKEN | |
permissions: | |
contents: read | |
# cancel old jobs since their results will be discarded anyway | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
fmt: | |
runs-on: ubuntu-latest | |
name: stable / fmt | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install stable rust | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
components: rustfmt | |
- name: cargo fmt --check | |
run: cargo fmt --check | |
clippy: | |
runs-on: ubuntu-latest | |
name: ${{ matrix.toolchain }} / clippy | |
permissions: | |
contents: read | |
checks: write | |
strategy: | |
fail-fast: false | |
matrix: | |
# Get early warning of new lints which are regularly introduced in beta channels. | |
toolchain: [stable, beta] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install ${{ matrix.toolchain }} rust | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ matrix.toolchain }} | |
components: clippy | |
- name: cargo clippy | |
uses: giraffate/clippy-action@v1 | |
with: | |
reporter: 'github-pr-check' | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
hack: | |
runs-on: ubuntu-latest | |
name: ubuntu / stable / features | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install stable | |
uses: dtolnay/rust-toolchain@stable | |
- name: cargo install cargo-hack | |
uses: taiki-e/install-action@cargo-hack | |
- name: cargo hack | |
run: cargo hack --feature-powerset --no-dev-deps check | |
doc: | |
runs-on: ubuntu-latest | |
name: nightly / doc | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install nightly | |
uses: dtolnay/rust-toolchain@nightly | |
- name: Install cargo-docs-rs | |
uses: dtolnay/install@cargo-docs-rs | |
- name: cargo docs-rs | |
run: cargo docs-rs |