posit-dev / posit-dev/images-shared
Port Trivy image scanning from rstudio-docker-products
Open
@bschwedler is already working on this.
Since Aug 10, 2026.
cvp:1
docker
security
tdp:1
- Dominant language
- Python
- Stars
- 2
- Forks
- 0
- Avg merge
- 4d 13h
- Merged PRs (30d)
- 22
Description
Trivy is a widely-used open-source security scanner. We would like to implement scanning with Trivy so that we can preview what customers using it will see when they scan our images. Trivy is also the scanner customers can run themselves — bakery wizcli scan covers internal scanning, but Wiz is not available to customers.
Port from rstudio-docker-products
Trivy scanning is already implemented in rstudio-docker-products, where it replaced Snyk:
Implementation to port:
tools/trivy_bake_artifacts.py— expands adocker buildx bake --printgroup into child image targets, runstrivy imageon each (HIGH/CRITICAL severity), and merges per-target SARIF into onecontainer.sarif; always exits 0 so findings never fail the build- Per-image
trivy.yamlconfigs for image-specific settings (e.g.workbench/trivy.yaml); present for all products and init images Justfiletrivy-test/preview-trivy-testrecipes as the local entry points.github/actions/bake-test-push/action.yml— installs Trivy viaaquasecurity/setup-trivy, runs the scan behind ascan-imageflag, and uploads SARIF to GitHub code scanning with a per-target category
Desired behavior
-
bakery trivy scansubcommand alongsidebakery wizcli scan - Per-image Trivy config support (equivalent of the per-image
trivy.yaml) - SARIF output suitable for
github/codeql-action/upload-sarif - Wired into the shared CI workflows
- https://github.com/posit-dev/images-shared/pull/722
Related
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.