Conversation
Just getting an SELinux error in the finalize step. However, I'm getting fairly confident that Debian just isn't ready for stable Bootc images yet. I'm going to abandon this branch for now, but keep it around to look at later.
Largely cloned from `st-exim`. This will supersede the need for that distinct project.
`just build` now produces a Debian artifact! Add stub files for SpamTagger builds. Update README.md for Debian Move ARCH definition to Justfile since it is now used for both Exim and DCC.
It comes with significantly fewer dependencies than in CentOS and is depended upon by other packages, so it is much simpler to just use Debian's version.
Also move signing configuration to finalize stage.
Also re-organize many elements to where they make more sense. Move any packages which will be common to both SpamTagger and SpamTagger plus to the main package script. Prepare for per-variant package cleanup. Fix Apt (broken by missing directories) since it is required for Distrobox.
Now able to create and enter distrobox. I'll be using this to run the Perl tests, since they are failing in CI.
Tests should now pass in CI
|
As of the latest commit, the CI builds now work. Currently It looks like it is a JSON parse error. It's not entirely clear if this is caused by the |
I was having trouble actually getting bootc-image-builder to work. It appears to be fairly tightly integrated with RPM tools, so a different (simpler) method will have to do. This change just creates a virtual disk image, mounts it to a new container and uses Bootc on that container to write to the virtual disk. This works insofar as it builds seems to copy the appropriate bytes to the image and then that image can be converted to VM disk formats. It does not work insofar as the disk images are not bootable. I think this is an issue in `build-container` not `build-disk`. We probably don't have the bootloader configured properly. To be investigated next.
|
As noted in last commit, disk images are now buildable using a new method. However, the images fail to boot in KVM, so I'm not sure if I do get very close to booting if I click to customize the installation, force it to use UEFI, then enter the EFI firmware settings and disable secureboot. At that point it starts to initialize with systemd-boot, but fails at Continuing with this method means that I'll definitely need to fix secureboot. Also, BIOS boot works for Cayo, so ideally I'll get this to work as well. Also a few notes on the disk image before I finish for the day:
Those So, everything seems fine there. The problem appears to be within the BootC configuration. Another note is that my workstation seems to be out-of-date with the latest BootC. Attempting to build |
Added a few stages to build process: * bootc-base - This copies everything built by bootc-builder and will be re-used by spamtagger-base and bundler * bundler - Mounts the product of spamtagger-base as /rootfs, then creates a composefs-compatible filesystem * final - Mounts the composfs filesystem from bundler as the final image and runs the bootc lint on that Changed back to using the bootc-image-builder method for building disk images. I haven't tested this part yet, but it would be too annoying to cut out. Everything up to the bundler stage is working. I want to make sure that I capture the state here before I break something.
Images from this branch are now successfully building. We need a few things before we can be confident in this path over CentOS:
[x] - Successfully build images
[x] - Successfully test images
[x] - Successfully build disks
[x] - Successfully convert disks to all VM formats
[ ] - Boot the VM image in KVM.
[ ] - Successfully build
iso[ ] - Boot the
isoimage in KVM and install.[ ] - Successfully test an upgrade.
A bare-metal deployment may be more difficult, but this hadn't even been tested with CentOS yet, so we can handle that down the road.