I’ve recently noticed a problem since the release of 8.7 and hoping someone can help point me in the right direction. I have a job that uses the openstack/diskimage-builder project to help build updated customized qcow2 images periodically, based on the image Rocky-8-GenericCloud.latest.x86_64.qcow2
Something significant seems to have changed with that image between 8.6 and 8.7. The original 8.6 image size was ~2.67 GB, while the 8.7 version of the same image is ~1.66 GB. The size difference is pretty significant, but I’m not sure if it actually relates to my problem or not - just something I noticed, but I normally don’t expect to see such size differences going from one minor release to another.
The main problem I see is that once the new 8.7 image is processed through the diskimage-builder job, the resulting customized qcow2 image no longer contains any kernel-related files in /boot/, so if I try to launch an openstack instance with the new image, it simply fails to boot and stops at a grub console prompt.
For the time being, I modified my job to work with the archived (vault) 8.6 image, and the job once again completes successfully with a bootable image.
So far, I’ve not been able to determine the root of the problem. It’s possible that the structure of the new cloud images has changed in some way and the diskimage-builder project needs to be updated to accommodate that change, or something is fundamentally missing in the images starting with 8.7.
When we released 8.7 and 9.1, we attempted to make the images boot universally. This means that if someone boots the generic cloud image on BIOS or UEFI, it should just work. To do this, the gpt had to be set for the disk image and additional partitions were set. This was done intentionally to try to inherit what Fedora does with their cloud images.
As for the package reduction, this is because we use templates now to build our images. Most cloud images inherit the same package set now as a result, and this is likely why you’re seeing a reduced size.
I maintain the rocky images in DIB, and I think there might be some confusion here.
The Rocky Linux images built in DIB are not built using the genericcloud qcow2 image, but rather by starting from the Rocky Linux Container images and buidling on top.
Either here (or preferably in the launchpad bug), can you describe exactly what it is you are doing with the QCOW to run it through DIB?
For reference, the images produced by DIB are run in CI on the OpenStack projects many times a day with BIOS/UEFI boot.