name: Trivy Security Scan on: schedule: - cron: '0 0 * * *' pull_request: branches: - master push: branches: - master workflow_dispatch: jobs: trivy-scan: name: Trivy Security Scan runs-on: ubuntu-latest permissions: contents: read security-events: write actions: read steps: - name: Checkout code uses: actions/checkout@v4 - name: Run Trivy vulnerability scanner in repo mode uses: aquasecurity/trivy-action@0.33.1 with: scan-type: 'fs' scan-ref: '.' scanners: 'vuln,secret,misconfig' format: 'sarif' output: 'trivy-results.sarif' severity: 'CRITICAL,HIGH,MEDIUM' - name: Upload Trivy results to GitHub Security tab uses: github/codeql-action/upload-sarif@v3 if: always() with: sarif_file: 'trivy-results.sarif' - name: Run Trivy vulnerability scanner (table format) uses: aquasecurity/trivy-action@0.33.1 with: scan-type: 'fs' scan-ref: '.' scanners: 'vuln,secret,misconfig' format: 'table' severity: 'CRITICAL,HIGH,MEDIUM' exit-code: '1'