diff --git a/.github/workflows/_trivy.yml b/.github/workflows/_trivy.yml new file mode 100644 index 000000000..e18423b27 --- /dev/null +++ b/.github/workflows/_trivy.yml @@ -0,0 +1,35 @@ +name: Trivy vulnerability scan + +on: + workflow_call: + +jobs: + scan_container: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v7 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v4 + + - name: Build and export to Docker local cache + uses: docker/build-push-action@v7 + env: + DOCKER_BUILD_RECORD_UPLOAD: false + with: + context: . + load: true + tags: tag_for_scanning + + - name: Run Trivy vulnerability scanner + uses: aquasecurity/trivy-action@v0.36.0 + with: + image-ref: 'tag_for_scanning' + version: 'v0.74.0' + format: 'table' + exit-code: '1' + ignore-unfixed: true + vuln-type: 'os,library' + severity: 'CRITICAL,HIGH' diff --git a/.github/workflows/periodic.yml b/.github/workflows/periodic.yml index 18b419c5f..21541d9d3 100644 --- a/.github/workflows/periodic.yml +++ b/.github/workflows/periodic.yml @@ -11,3 +11,6 @@ jobs: uses: ./.github/workflows/_tox.yml with: tox: docs -- -b linkcheck + + trivy: + uses: ./.github/workflows/_trivy.yml