Skip to content

Rumble Vulnerability Data #464

Rumble Vulnerability Data

Rumble Vulnerability Data #464

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
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@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: audit
- name: 'Checkout default branch to $GITHUB_WORKSPACE dir'
uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
- name: Set up Go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # actions/setup-go@v4
with:
go-version-file: ./tools/rumble/go.mod
check-latest: true
- name: Authenticate to Google Cloud
id: auth
uses: google-github-actions/auth@62cf5bd3e4211a0a0b51f2c6d6a37129d828611d # v2.1.5
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: rtCamp/action-slack-notify@4e5fb42d249be6a45a298f3c9543b111b02f7907 # v2.3.0
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 }}