Conversation
There was a problem hiding this comment.
Code Review
This pull request refactors the Dockerfile build process to use rpmbuild for creating the bootc package. This is a significant improvement as it modularizes the build logic into separate, cacheable stages and scripts, making the build process cleaner and more efficient. The changes are well-structured, moving complex shell logic out of the Dockerfile into dedicated scripts.
My main feedback is a small but critical issue with build argument handling for the RPM version, which I've commented on. Once that is addressed, this looks like a great improvement to the project's build system.
78492f1 to
37b9a3c
Compare
|
I was getting quite confused until I finally realized that the failure here is specific to fedora and things work on the default c10s...digging into what the difference is in the build env there. |
This broke caching with podman 5.6; it's fixed as of containers/buildah@fb6ce9d but it's easy enough for us to just use the `LABEL` instruction anyways. Assisted-by: Claude Code (Sonnet 4.5) Signed-off-by: Colin Walters <walters@verbum.org>
This was used at one point for composefs testing, but no longer. Assisted-by: Claude Code (Sonnet 4.5) Signed-off-by: Colin Walters <walters@verbum.org>
Squashes a podman build warning; variant and base only apply to the base image. Signed-off-by: Colin Walters <walters@verbum.org>
See the comment for more info. Signed-off-by: Colin Walters <walters@verbum.org>
- The ci/Dockerfile.fcos has been unused for some time and testing with FCOS derivatives is already done outside of CI here - Drop the bits which reference git in the Makefile, a new rule I'm trying to impose here is that nothing in the build system should rely on git (or at least not rely on being built from a git repository) Signed-off-by: Colin Walters <walters@verbum.org>
We were bit before by just doing a `COPY` of our binaries overtop of the base image because that doens't remove old files. Replace the pre-build approach with rpmbuild, and then change to do an rpm-based upgrade so that we fix that problem. Note that we still preserve incremental rebuilds by overriding some of the RPM build process. Assisted-by: Claude Code (Sonnet 4.5) Signed-off-by: Colin Walters <walters@verbum.org>
|
OK I think this one is now passing tests! |
Now that we've cut over to always building + installing via an (RPM) package in our build system, we need to always install the dracut module. Signed-off-by: Colin Walters <walters@verbum.org>
jeckersb
left a comment
There was a problem hiding this comment.
I played around with this a bit, feels pretty good to me!
See individual commits.