Mass Branching Checklist

Description

At each release’s branch point, a mass branching process is conducted to separate the pending release from devel/. This allows Rawhide to continue while the pending release goes into bugfix and polish mode.

Action

T-1 Week actions for mass branching

Signing keys for rawhide+1

  • Add a robosignatory config for resigning Rawhide with the new fedora-46 key.

  • Confirm the new key fingerprint is present in scripts_new/release-process/signing/koji_rpm_signer.py.

Mass resigning (rawhide)

  • Generate unsigned list with koji_rpm_signer.py --just-list.

  • Sign packages on autosign01 with robosignatory and verify completion.

  • Remove the temporary resigning config after branching.

  • Handle OpenH264 separately.

T-1 Day actions for mass branching

Send announcement

  • Send announcement one day prior to mass branching noting that new Koji builds for Rawhide will be disabled.

Create Bugzilla component

  • Create new Bugzilla component/version for the branched release (requires fedora-pm access).

Fedora release packages

  • Update fedora-release for rawhide and branched per SOP (dist_version, Version/Release, changelog, release_name/is_rawhide).

  • Update fedora-repos for rawhide, branched, and stable branches (new Rawhide+1 key, archmap, rawhide_release, changelog).

Ansible prep

  • Bodhi: update roles/bodhi2/* for new release, and set EOL dates.

  • FedoraBranched: set FedoraBranched to True and FedoraBranchedBodhi to preenable.

  • Koji hub: allow side tags for new rawhide; update koji-gc.conf.j2 for new keys/retention.

  • Robosignatory: disable branched signing (freeze) and add new release.

  • Poddlers: add new branch SLA and restart poddlers app after update.

Dist-git inputs

  • Prepare active package list using get_active_packages.sh (releng repo) on pkgs host.

ELN and Koschei

  • Add new rawhide key to ELN pungi config and update DistroBuildSync trigger.

  • Branch new Fedora rawhide in Koschei; temporarily disable rawhide cron during branching PRs.

T Day actions for mass branching

(This checklist is suitable to copy into the releng tracker for day-of execution.)

Merge all preparatory PRs

  • Pungi-Fedora

  • Fedora Kickstarts

  • Fedora Kiwi Descriptions

  • Fedora Comps

  • Fedora Lorax Templates

  • Workstation Ostree Config

  • Fedora Release

  • Fedora Repos

  • Poddlers (ansible)

Disable Rawhide builds in Koji

  • Block external submissions via iptables on koji01 and koji02 (block proxy01/proxy10).

  • Cancel all running Rawhide builds relevant to branching.

Merging and running ansible changes

  • Commit, push, and apply the changes using the corresponding ansible playbooks.

  • Ask someone in Fedora Infra to run the robosignatory playbook.

Dist-git

  • Create new branches.

  • Run mass-branching-git.py using the active package list.

Koji

  • Run create_koji_release_tags.sh from releng.

Bodhi

  • Link empty repos and create empty repos.

  • Create rawhide, rawhide container, and branched flatpak releases.

  • Run bodhi openshift playbook and restart fm-consumer@config.service and bodhi-celery.service.

  • Update rawhide buildroot repo symlink.

Enable Rawhide builds in Koji

  • UnBlock external submissions via iptables on koji01 and koji02 (block proxy01/proxy10).

Composes

  • Trigger branched and rawhide composes by editing /etc/cron.d on compose hosts.

MirrorManager and metadata

  • Update MirrorManager to point rawhide to the new release (no modular repos).

  • Update /srv/groups/qa/metadata/release.json on people01 (add new branched number).

Post-compose

  • Re-enable autosigning on branched after compose.

OpenH264

  • Create new f45 OpenH264 repo in Koji and update MirrorManager redirect.