name: Security Audit
on:
  pull_request:
    paths:
      - .github/workflows/security-audit.yml
      - Cargo.lock
  push:
    branches: master
    paths: Cargo.lock
  schedule:
    - cron: "0 0 * * *"

jobs:
  security_audit:
    name: Security Audit
    runs-on: ubuntu-24.04
    steps:
      - uses: actions/checkout@v5
      - uses: RustCrypto/actions/cargo-cache@master
      - name: Cache cargo bin
        uses: actions/cache@v4
        with:
          path: ~/.cargo/bin
          key: ${{ runner.os }}-cargo-audit-v0.20-ubuntu-v24.04
      - uses: rustsec/audit-check@v2
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
