#11985 Build ARM minimal disk image with osbuild instead of ImageFactory
Closed: Fixed a month ago by pbrobinson. Opened 2 months ago by adamwill.

  • Describe the issue
    Per https://fedoraproject.org/wiki/Changes/ArmMinimalImageOSBuild , we should switch the ARM minimal disk image to be built with osbuild instead of ImageFactory.

  • When do you need this? (YYYY/MM/DD)
    ASAP, as it is a late Fedora 40 Change and we are in Beta freeze already. We need an osbuild-produced image to test as soon as possible.

  • When is this no longer needed or useful? (YYYY/MM/DD)
    If the Change gets deferred or dropped.

  • If we cannot complete your request, what is the impact?
    The Change will not be implemented as intended.


CC @pbrobinson @kevin . I believe the change should be more or less this:

[adamw@xps13a pungi-fedora (main)]$ git diff
diff --git a/fedora.conf b/fedora.conf
index 147413e..cde0bfd 100644
--- a/fedora.conf
+++ b/fedora.conf
@@ -383,19 +383,6 @@ image_build = {
         },
         ],
     '^Spins': [
-        {
-            'image-build': {
-                    'format': [('raw-xz','raw.xz')],
-                    'name': 'Fedora-Minimal',
-                    'kickstart': 'fedora-disk-minimal.ks',
-                    'distro': 'Fedora-30',
-                    'disk_size': 6,
-                    'arches': ['aarch64'],
-                    'repo': 'Everything',
-                    'install_tree_from': 'Everything',
-                    'subvariant': 'Minimal',
-                     }
-        },
         {
             'image-build': {
                     'format': [('raw-xz','raw.xz')],
@@ -1033,6 +1020,17 @@ ostree_installer = [
 ]

 osbuild = {
+    '^Spins$': [
+        {
+            'name': 'Fedora-Minimal',
+            'distro': 'fedora-41',
+            'image_types': ["minimal-raw"],
+            'arches': ['aarch64'],
+            'repo': ['Everything'],
+            'manifest_type': 'raw-xz',
+            'subvariant': 'Minimal,
+        }
+    ]
     '^Workstation$': [
         {
             'name': 'Fedora-Workstation-Live-osb',

but there's a question mark about the image size - the default size set in osbuild for this "minimal-raw" type is 2GiB, and I don't immediately see whether or how we can override that in this configuration. Following out the codepath from pungi through to koji-osbuild I don't immediately see anywhere any kind of size setting gets passed through.

@pbrobinson ping? go/no-go is this Thursday, if this Change is going to happen we need something soon.

So we tried that, and it failed, because osbuild calls the image Fedora-Minimal-Rawhide-20240307.n.1.aarch64.img.xz, and Koji does not understand that extension - "Could not import build into koji: Fault(1000): unsupported file extension: Fedora-Minimal-Rawhide-20240307.n.1.aarch64.img.xz". ImageFactory gave the file the extension .raw.xz, not .img.xz. Can we change this for osbuild? Would changing filename: "raw.img.xz", to filename: "raw.raw.xz", or something like that in the minimal-raw imageType definition do the trick, or no? I could not figure out the codepaths there, too much code, variable names too commonly repeated.

As an alternative we could teach Koji (and Pungi, which will also choke on it) to accept img.xz as an extension, I guess.

oh, it looks like https://github.com/osbuild/images/pull/492 was intended to fix this - maybe it is not deployed to prod yet?

oh, it looks like https://github.com/osbuild/images/pull/492 was intended to fix this - maybe it is not deployed to prod yet?

Correct, it's been deployed to the workers and we're now awaiting the composer FE to be updated, I am told it's in process.

OK, so for now we've had to revert the pungi-fedora PR. We'll re-apply it when someone says this is deployed to prod and ready to go.

It's been updated, just testing

yeah, we already kicked off a rawhide without it though (we are simultaneously trying to land and test the kiwi change, so we wanted to fire that without waiting). we'll retry with this once the current compose is done I guess.

Looks like this is working in rawhide and branched, but we got a weird error with rc-1.1... but that may have been some kind of transitory infra issue. ;(

Will find out in rc1.2.

Metadata Update from @pbrobinson:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

a month ago

Login to comment on this ticket.

Metadata