to-disk: Export to OCI layout for composefs-backend installs - #313
Merged
Conversation
Johan-Liebert1
left a comment
Contributor
There was a problem hiding this comment.
Looks good overall. One comment though
| mount -t virtiofs mount_ociimage ${{OCI}} -o ro | ||
| fi | ||
| echo "Importing image from OCI layout..." | ||
| skopeo copy oci:${{OCI}}:latest {source_imgref} |
Contributor
There was a problem hiding this comment.
We can install from this without copying right? bootc install ... --source-imgref oci:${{OCI}}
Should be a bit faster than copying it using skopeo
When using `additionalimagestore` via virtiofs, the containers-storage library in the VM reconstructs OCI manifests with uncompressed layer digests, producing a different manifest hash than the original. This breaks bootc-operator verification and `bootc status`/`bootc upgrade` for composefs-backend installs where the manifest digest is the primary image identifier. For composefs-backend installs, export the image to an OCI layout on the host via `podman push` (preserving the original manifest), share it into the VM via virtiofs, and import it into local containers-storage via `skopeo copy` before running `bootc install`. The locally-imported image takes precedence over the additionalimagestore copy. Non-composefs installs are unchanged and keep the fast zero-copy path. Closes: #307 Assisted-by: AI Signed-off-by: gursewak1997 <gursmangat@gmail.com>
Johan-Liebert1
approved these changes
Aug 12, 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.
Summary
When using
additionalimagestorevia virtiofs, the containers-storage library in the VM reconstructs OCI manifests with uncompressed layer digests, producing a different manifest hash than the original. This breaks bootc-operator verification andbootc status/bootc upgradefor composefs-backend installs where the manifest digest is the primary image identifier.For composefs-backend installs, export the image to an OCI layout on the host via
podman push(preserving the original manifest), share it into the VM via virtiofs, and pass--source-imgref oci:/path:latesttobootc install to-diskso bootc reads directly from the OCI layout. Non-composefs installs are unchanged and keep the fast zero-copy path.podman push(already required) on the hostCloses: #307