name: Dependency Audit
on:
push:
pull_request:
workflow_dispatch:
schedule:
- cron: "17 6 * * 1"
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.sha }}
cancel-in-progress: true
jobs:
rust-audit:
name: cargo audit and deny
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v5
- name: Install pinned Rust toolchain
run: rustup toolchain install 1.88.0 --profile minimal
- name: Install pinned audit tools
run: >-
cargo +1.88.0 install --locked cargo-audit --version 0.22.2 &&
cargo +1.88.0 install --locked cargo-deny --version 0.20.2
- name: Audit vulnerabilities
run: cargo +1.88.0 audit
- name: Audit licenses, bans, and sources
run: cargo +1.88.0 deny check