Skip to content

Vulnerability Scanning with Trivy #301

Vulnerability Scanning with Trivy

Vulnerability Scanning with Trivy #301

Workflow file for this run

name: Vulnerability Scanning with Trivy
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * *' # Test Trivy daily at midnight
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
cancel-in-progress: true
defaults:
run:
shell: bash
jobs:
trivy-repo:
name: Trivy vulnerability scanner - Repository
runs-on: ubuntu-24.04
permissions:
contents: read
security-events: write # for uploading SARIF results to the security tab
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: main
persist-credentials: false
- name: Create Trivy cache directory
run: mkdir -p /home/runner/vuln-cache
- name: Run Trivy vulnerability scanner in repo mode
uses: aquasecurity/trivy-action@ed142fd0673e97e23eac54620cfb913e5ce36c25 # v0.36.0
with:
scan-type: "fs"
format: "sarif"
output: "trivy-lxd-repo-scan-results.sarif"
cache-dir: "/home/runner/vuln-cache"
severity: "LOW,MEDIUM,HIGH,CRITICAL"
- name: Cache trivy and vulnerability database
uses: actions/cache/save@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: /home/runner/vuln-cache
key: trivy-cache
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6
with:
sarif_file: "trivy-lxd-repo-scan-results.sarif"
sha: ${{ github.sha }}
ref: refs/heads/main