DEVOPS

Block PRs when base-image CVEs exceed severity budget

Scans the base image referenced in a pull request's Dockerfile and sets a failing GitHub status check when high or critical CVEs exceed your configured budget.

CategoryDevOps
Enginesim
Difficultyintermediate
Triggerevent
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerPull request opened or updatedGitHubGitHub
  • LogicFilter: Dockerfile changed in diff
  • ActionResolve base image and scan for CVEsGitHubGitHub
  • LogicCompare severity counts to budget
  • OutputSet commit status and post PR commentGitHubGitHub

What it does

On every pull request that touches a Dockerfile, this workflow resolves the `FROM` base image, runs a vulnerability scan, and counts findings by severity. If the count breaks your budget (for example, zero criticals and at most three highs), it posts a failing commit status so the PR cannot merge. Clean images get a passing check and a short comment with the CVE tally.

When to use it

Use it as a required status check on repos that build container images. It stops a risky base bump from sneaking in during a routine feature PR, and gives reviewers an inline summary instead of forcing them to read raw scanner output.

How it works

  1. 1A pull request event fires from GitHub when files change.
  2. 2A filter checks whether a Dockerfile is in the diff; non-Docker PRs exit early.
  3. 3An action pulls the base image tag and runs the CVE scan, returning counts per severity.
  4. 4A branch compares the counts against the configured budget thresholds.
  5. 5The workflow posts a pass/fail commit status plus a summary comment back to the PR.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitHubRepos, issues, pull requests, actions.
  2. 2
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  3. 3
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  4. 4
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.