Skip to content

Rumble Vulnerability Data #823

Rumble Vulnerability Data

Rumble Vulnerability Data #823

name: Rumble Vulnerability Data
on:
schedule:
- cron: "1 5 * * *"
workflow_dispatch:
push:
branches: [rumble-insights]
env:
GH_TOKEN: ${{ github.token }}
defaults:
run:
shell: bash
working-directory: ./tools/rumble
permissions: {}
jobs:
generate-csvs-and-json:
runs-on: ubuntu-latest
if: github.repository == 'chainguard-dev/edu'
permissions:
contents: read
id-token: write # federate with GCP
steps:
- name: 'Github Actions Runner'
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
with:
egress-policy: audit
- name: 'Checkout default branch to $GITHUB_WORKSPACE dir'
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Go
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
with:
go-version-file: ./tools/rumble/go.mod
check-latest: true
- name: Authenticate to Google Cloud
id: auth
uses: step-security/google-github-auth@f0e5c257a9534a30b5df12f43329c1eb7b85a5be # v3.0.0
with:
service_account: "github-chainguard-academy@chainguard-academy.iam.gserviceaccount.com"
workload_identity_provider: "projects/456977358484/locations/global/workloadIdentityPools/chainguard-academy/providers/chainguard-edu"
- name: Generate vulnerability JSON files
run: |
go run main.go vulns \
--project prod-enforce-fabc \
--db cloudevents_grype_scan_results \
--gcs-project chainguard-academy \
--bucket chainguard-academy \
--upload
- name: Generate image comparison CSVs
run: |
go run main.go image-csv \
--project prod-enforce-fabc \
--db cloudevents_grype_scan_results \
--gcs-project chainguard-academy \
--bucket chainguard-academy \
--rumble-json-path ../../data/rumble.json \
--upload
- name: Generate legacy comparison CSV
run: |
go run main.go legacy-csv \
--project prod-enforce-fabc \
--db cloudevents_grype_scan_results \
--gcs-project chainguard-academy \
--bucket chainguard-academy \
--upload
- name: Post failure notice to Slack
uses: step-security/action-slack-notify@e04c77a65bae8b6c0373478a1cb8fd7e012637e6 # v2.3.5
if: ${{ failure() }}
env:
SLACK_ICON: http://github.com/chainguard-dev.png?size=48
SLACK_USERNAME: guardian
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_CHANNEL: 'alerts-edu'
SLACK_COLOR: '#8E1600'
MSG_MINIMAL: 'true'
SLACK_TITLE: 'Rumble vuln data failed - ${{ github.repository }}'
SLACK_MESSAGE: |
For detailed logs: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}