Skip to content

Use nightly rust for rustfmt job #3

Use nightly rust for rustfmt job

Use nightly rust for rustfmt job #3

Workflow file for this run

on:
push:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- uses: taiki-e/install-action@nextest
- run: cargo nextest run --locked --all-features
- run: cargo test --doc --locked --all-features
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- uses: taiki-e/install-action@v2
with:
tool: clippy-sarif,sarif-fmt
- name: run clippy
run: |
cargo clippy --all-targets --all-features --message-format json \
| clippy-sarif \
| tee clippy.sarif \
| sarif-fmt
continue-on-error: true
- uses: actions/upload-artifact@v3
with:
name: clippy-sarif
path: clippy.sarif
clippy-upload:
runs-on: ubuntu-latest
needs: [clippy]
permissions:
security-events: write
steps:
- uses: actions/checkout@v3
- uses: actions/download-artifact@v3
with:
name: clippy-sarif
- uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: clippy.sarif
rustfmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
with:
components: rustfmt
- run: cargo fmt --check
check-success:
name: verify all tests pass
runs-on: ubuntu-latest
if: always()
needs:
- test
- clippy
- rustfmt
steps:
- name: fail if any dependencies failed
if: contains(needs.*.result, 'failure')
shell: bash
run: exit 1