From Fedora Project Wiki

Revision as of 15:52, 4 January 2025 by Supakeen (talk | contribs) (Created page with "<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name. This keeps all change proposals in the same namespace --> = Change Proposal Name <!-- The name of your change proposal --> = {{Change_Proposal_Banner}} == Summary == <!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. Note that motivation for the chang...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Change Proposal Name

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

Switch Image Builder-built images in Koji to not build through a service, but locally.

Owner


Current status

  • Targeted release: Fedora Linux 42
  • Last updated: 2025-01-04
  • [<link to devel-announce post will be added by Wrangler> Announced]
  • [<will be assigned by the Wrangler> Discussion thread]
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Several Fedora images are being built by the Image Builder service (Fedora IoT, Fedora Minimal). Image Builder acts as a content generator in Koji. Images are built external to Fedora infrastructure as requested by Koji and then delivered back.

This has led to a slew of issues over time, amongst them instability and the inability of Fedora release engineering and infrastructure teams to intervene and the inability to freeze the external infrastructure during a release window.

I plan to replace the current approach in koji-osbuild with a local-only build. Image Builder machinery and definitions will still be used for the mentioned images but the build will run locally on Fedora infrastructure and builders. In the same way that kiwi or livemediacreator-images are built.

Feedback

This change proposal does not yet provide a way for the distribution definitions to be owned by, and live inside, Fedora infrastructure. I plan to address this in a later change proposal.

Benefit to Fedora

Control over Image Builder on its own infrastructure, lessen remove the need to reach out to external parties when releases are blocked.

Scope

Proposal Owners

  • Submit the image-builder-cli package for inclusion in Fedora 42.
  • Change the koji-osbuild plugin to provide a new task type that uses image-builder-cli; alternatively: provide a new koji-image-builder plugin if that suits better.
  • Submit the above mentioned koji plugin package for inclusion in Fedora 42.
  • Install new packages on build machines.
  • Changes to pungi to be able to schedule these tasks.
  • Changes to pungi config for Fedora IoT.
  • Changes to pungi config for Fedora Minimal.

Contingency Plan

Independent of where on the above tasks I get stuck we can continue to build with the currently available system.

Release Notes