Skip to content

Trivy Container Security Scan #1341

Trivy Container Security Scan

Trivy Container Security Scan #1341

Workflow file for this run

name: Trivy Container Security Scan
on:
schedule:
# Scan the image once a day
- cron: 30 1 * * *
workflow_dispatch:
permissions:
contents: write
jobs:
scan-companion-image:
permissions:
contents: write # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Find current image
run: |
IMAGE_COMPANION=$(cat ./deployments/apps/companion-deployment.yaml | grep "image: ghcr.io" | cut -d ':' -f 2-3 | sed 's/^ *//')
echo $IMAGE_COMPANION
echo "IMAGE_COMPANION=$IMAGE_COMPANION" >> $GITHUB_ENV
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@0.35.0
with:
image-ref: ${{ env.IMAGE_COMPANION }}
format: sarif
output: trivy-results.sarif
severity: "CRITICAL,HIGH"
limit-severities-for-sarif: true
env:
TRIVY_PLATFORM: linux/arm64
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v4
if: always()
with:
sarif_file: "trivy-results.sarif"
scan-announcer_ex-image:
permissions:
contents: write # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Find current image
run: |
IMAGE_ANNOUNCER=$(cat ./deployments/apps/announcer-ex-deployment.yaml | grep "image: ghcr.io" | cut -d ':' -f 2-3 | sed 's/^ *//')
echo $IMAGE_ANNOUNCER
echo "IMAGE_ANNOUNCER=$IMAGE_ANNOUNCER" >> $GITHUB_ENV
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@0.35.0
with:
image-ref: ${{ env.IMAGE_ANNOUNCER }}
format: sarif
output: trivy-results.sarif
severity: "CRITICAL,HIGH"
limit-severities-for-sarif: true
env:
TRIVY_PLATFORM: linux/arm64
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v4
if: always()
with:
sarif_file: "trivy-results.sarif"
scan-router-ex-image:
permissions:
contents: write # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Find current image
run: |
IMAGE_ROUTER=$(cat ./deployments/apps/router-ex-deployment.yaml | grep "image: ghcr.io" | cut -d ':' -f 2-3 | sed 's/^ *//')
echo $IMAGE_ROUTER
echo "IMAGE_ROUTER=$IMAGE_ROUTER" >> $GITHUB_ENV
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@0.35.0
with:
image-ref: ${{ env.IMAGE_ROUTER }}
format: sarif
output: trivy-results.sarif
severity: "CRITICAL,HIGH"
limit-severities-for-sarif: true
env:
TRIVY_PLATFORM: linux/arm64
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v4
if: always()
with:
sarif_file: "trivy-results.sarif"
scan-streamer-image:
permissions:
contents: write # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Find current image
run: |
IMAGE_STREAMER=$(cat ./deployments/apps/video-streamer-deployment.yaml | grep "image: ghcr.io" | cut -d ':' -f 2-3 | sed 's/^ *//')
echo $IMAGE_STREAMER
echo "IMAGE_STREAMER=$IMAGE_STREAMER" >> $GITHUB_ENV
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@0.35.0
with:
image-ref: ${{ env.IMAGE_STREAMER }}
format: sarif
output: trivy-results.sarif
severity: "CRITICAL,HIGH"
limit-severities-for-sarif: true
env:
TRIVY_PLATFORM: linux/arm64
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@v4
if: always()
with:
sarif_file: "trivy-results.sarif"