GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||
GeezerVison is showing github.com — fix: Build the Go feature server image in two stages by NopeCharon · Pull Request #7066 · feast-dev/feast Conversation
Contributor
What this PR does / why we need it:The This PR turns the Dockerfile into a two-stage build:
These stay the same: the working directory Result (linux/arm64 build):
Which issue(s) this PR fixes:Fixes #7060 Checks
Testing Strategy
Manual tests:
MiscNo Go code changes.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionsThe go-feature-server image was built and shipped from the full golang:1.26 image, so every published tag carried the Go toolchain, gcc, protoc, the module and build caches, and Debian development packages such as linux-libc-dev. Those packages are flagged by container scanners (for example DSA-6238-1, DSA-6253-1, DSA-6274-1 and DSA-6295-1 against linux-libc-dev), and users cannot remediate them because they come from the base layer. Keep the existing build steps in a builder stage and copy only the compiled binary into a debian:trixie-slim runtime stage with ca-certificates. The builder is pinned to golang:1.26-trixie, which is what golang:1.26 resolves to today, so the cgo-linked binary (needed by go-sqlite3) runs against the same glibc release. The working directory, binary path, exposed port and default command are unchanged, so existing deployments that mount a feature repo under /app or pass --chdir keep working. The runtime image no longer contains linux-libc-dev, the Go toolchain or compilers, and drops from about 3.1 GB to about 214 MB. Fixes feast-dev#7060 Signed-off-by: NopeCharon <[email protected]>
shuchu
approved these changes
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. lgtm
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
|
There was an error while loading. Please reload this page.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@ ## master #7066 +/- ## ========================================== - Coverage 50.99% 50.97% -0.02% ========================================== Files 455 455 Lines 56994 56994 Branches 8321 8321 ========================================== - Hits 29063 29055 -8 - Misses 25946 25954 +8 Partials 1985 1985
Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
go-feature-server image ships outdated linux-libc-dev with known kernel CVEs (DSA-6238-1/6253-1/6274-1/6295-1)
There was an error while loading. Please reload this page.