Add BootcRootFS pipeline and use it for bootc pxe-tar-xz#2361
Add BootcRootFS pipeline and use it for bootc pxe-tar-xz#2361brlane-rht wants to merge 7 commits into
Conversation
2d85931 to
502aeb6
Compare
Yea I think I initially had something like |
a13cc96 to
5ea5e84
Compare
achilleas-k
left a comment
There was a problem hiding this comment.
Thanks. LGTM.
Minor comment about that disabled code block.
The ISOCustomizations are useful for the PXE and ISO types, so remove the check for BootISO. In the future the rootfs specific options should be moved. Related: HMS-10627
This takes a partitioned disk image created with bootc install-to-filesystem and compresses it into a rootfs.img suitable for use with PXE and ISO booting. It also copies the kernel and initrd. Includes tests. Also satisfies the TreePipeline interface by implementing Platform() Related: HMS-10627
This updates BootcPXETree to use the common rootfs pipeline which handles the compression of the bootc filesystem and copies out the kernel and initrd. This simplifies the stage, removing the need to copy and mount the partitioned disk image. Includes tests. Related: HMS-10627
Update BootcPXEImage to use the common rootfs creation pipeline. Includes tests. Related: HMS-10627
The RootfsType and ErofsOptions are used to configure the rootfs.img -- this isn't ideal since PXE isn't an ISO but until we move these options this is better than adding new settings. Related: HMS-10627
The iso_config is now used to control creation of the rootfs. This continues using squashfs for now but will allow setting the erofs compression arguments when it is switched to use erofs. Related: HMS-10627
This includes support for squashfs mount support and erofs mount support in BootcRootFS Related: HMS-10627
5ea5e84 to
8ca01fc
Compare
This moves the rootfs.img setup into its own pipeline so that it can be shared between PXE and ISO bootc creation.
One slightly ugly bit is that I'm using ISOCustomizations to control the rootfs compression type and optional erofs config settings. It's not ideal, but I think it's better than also changing everything around. But it is a good candidate for future cleanup.
This set builds on top of #2360 and needs osbuild v182 for the squashfs/erofs mount support so it's currently a daft.