-
Notifications
You must be signed in to change notification settings - Fork 77
bootc-generic-iso: add container embedding #2138
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
b9ffffc to
d04d35a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is OK; though perhaps we would want to combine this (in the future?) with #2135 to define which and where such a container (or multiple) goes?
Needs checksum updates.
d04d35a to
6d34afa
Compare
|
Yes, let's add it to the list of our ideas. :) I fixed the manifest checksums, it ended up being a bigger fix than I would like but it actually makes the code cleaner. |
validate-config-list is extremely weird with bootc distros. It works for empty.json with bootc-* only because it finds some random image type coming from package mode. However, if we introduce configs that target specific bootc image types that don't have the same name as one of the package mode image type, this simply blows up because it won't find anything. Thus, as this check clearly doesn't target bootc distros, let's ignore them altogether.
Prior this commit, we mutated the build config (empty.json) when the fake containers yaml specified a payload container image. As the build config struct was shared between all fake containers, this meant the the payload container image would get propagated also to image types that don't need it. This issue manifested in the next commit after this where I add support for a payload container image for bootc-generic-iso. It added the payload even if it was not specified in the fake containers yaml because of the mutation. This commit removes the mutation. Instead, we now have a separate config for the bootc-installer which contains the payload container ref. This way, the mutation is no longer needed.
In order to produce an offline installer, we need to embed the bootc payload container into the containers storage of the ISO. This commit reuses --bootc-installer-payload-ref to do it. This means that we can currently embed only a single commit, which is something we should try to generalize in the future: I see no reason why people couldn't embed more of them.
6d34afa to
409687c
Compare
In order to produce an offline installer, we need to embed the bootc payload container into the containers storage of the ISO. This commit reuses --bootc-installer-payload-ref to do it. This means that we can currently embed only a single commit, which is something we should try to generalize in the future: I see no reason why people couldn't embed more of them.