Migrate base image to chainguard + python package - #216
Merged
krisztianfekete merged 2 commits intoSep 10, 2026
Conversation
Signed-off-by: Fabian Gonzalez <fabian.gonzalez@solo.io>
krisztianfekete
left a comment
Contributor
There was a problem hiding this comment.
Thanks, added a few comments!
| RUN npm run build | ||
|
|
||
| FROM python:3.14-slim-bookworm | ||
| FROM ${BASE_IMAGE_REGISTRY}/chainguard/wolfi-base:latest |
Contributor
There was a problem hiding this comment.
Not blocking, just calling this out: :latest plus apk resolution means two builds of this commit a month apart differ, and CI's cache-from: type=gha can pass a PR against a base layer that is weeks old.
Worth a follow-up issue for a scheduled rebuild or a Trivy gate in the docker job.
inFocus7
marked this pull request as ready for review
September 10, 2026 14:21
Contributor
Author
|
Ah, just refreshed and saw the review comments. Going over them now! 🫡 |
…RUN, remove unecessary pip removal Signed-off-by: Fabian Gonzalez <fabian.gonzalez@solo.io>
krisztianfekete
approved these changes
Sep 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context
Migrating from the bookworm base image to a
chainguard/wolfibase for reduce CVE impact.We shouldn't directly use
chainguard/python, because it would only supportlatestpinning for free-tier consumers. This means it could upgrade minor versions under our feet, causing issues. The alternative approach as documented in chainguard docs is to use awolfi-basewith anapk addfor languages needed.CVE Findings
Measured with
trivy 0.70.0,--scanners vuln, all package types,arm64(since that's what I biult natively).High+: 61 → 1.
The 5 critical CVEs were all stemming from the Debian base: CVE-2023-45853, CVE-2025-7458, CVE-2026-13221, CVE-2026-42496, CVE-2026-8376
The single remaining High+ is CVE-2026-81726 in
nltk 3.10.3. A venv dependency without a FixedVersion.Local Validation
I wasn't sure if we had a thorough test that includes the image (or steps), so I did the below as a minor smoke test (on
arm64):Output
Output
{ "sessionId": "wolfi-1", "spanCount": 5, "isComplete": true, "invocations": [ { "userText": "Hi! Can you help me?", "agentText": "Of course! How can I assist you today?", "tools": [] }, { "userText": "Roll a 20-sided die for me", "agentText": "I rolled a 20-sided die and got a result of 18!", "tools": [ "roll_die" ] }, { "userText": "Is the number you rolled prime?", "agentText": "The number 18 is not prime.", "tools": [ "check_prime" ] } ] }This is a draft because I'm not 100% sure what would suffice for validation.