chore: only rebuild golden image on changes#556
Conversation
Consolidated Tests Results 2026-05-04 - 14:47:51Test ResultsDetails
test-reporter: Run #1872
🎉 All tests passed!TestsView All Tests
🍂 No flaky tests in this run. Github Test Reporter by CTRF 💚 🔄 This comment has been updated |
There was a problem hiding this comment.
What we do in fhevm, is only building the golden image manually via a worfklow when needed (instead of "automatic" build as in kms).
I wonder if it makes sense to do the same here.
Tbh, it feels very hard to review (as a human), and not worth the extra complexity.
Wdyt?
Not a fan of doing this manually, tbh. The chainguard image changes in irregular intervals (unlike the pretty regular rust updates) and it seems a bit annoying to be required to check this every now and then. Maybe it's not the most critical to keep it super up-to-date, but these manual things are often forgotten until something breaks. Yes, this seems a bit complex, because it tries to capture going back and forth between old and new versions (which we just did on main), but I'd say we spend a bit of time on a proper review now and then have a solid solution that hopefully just works in the future, without requiring much attention. |
dvdplm
left a comment
There was a problem hiding this comment.
lgtm. Left some questions for my own education.
Description of changes
Previously we always built the golden image, when a docker build flow ran. This lead to more than 16.000 images built and stored: https://github.com/zama-ai/kms/pkgs/container/kms%2Frust-golden-image
Now, we check if something has actually changed, and only build the image in that case.
Issue ticket number and link
Observed CI flows
PR Checklist
I attest that all checked items are satisfied. Any deviation is clearly justified above.
chore: ...).TODO(#issue).unwrap/expect/paniconly in tests or for invariant bugs (documented if present).devopslabel + infra notified + infra-team reviewer assigned.!and affected teams notified.Zeroize+ZeroizeOnDropimplemented.unsafe; if unavoidable: minimal, justified, documented, and test/fuzz covered.