name: Security Audit
# Scans the dependency tree for known vulnerabilities (RustSec advisories).
# Runs when dependencies change and weekly, to catch newly-disclosed advisories.
on:
push:
branches:
paths:
- "**/Cargo.toml"
- "**/Cargo.lock"
pull_request:
branches:
paths:
- "**/Cargo.toml"
- "**/Cargo.lock"
schedule:
# Weekly, so newly-disclosed advisories are caught even without code changes.
- cron: "0 6 * * 1"
permissions:
contents: read
issues: write
jobs:
audit:
name: Vulnerability Scan (cargo-audit)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: rustsec/audit-check@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}