Fedora Beta Release
After the Go/No-Go Meeting, if the decision is Go, the following steps need to be taken.
Produce a Branched compose that matches the approved candidate
Quality will request a stable push of all the updates that were in the Beta candidate that was signed off. If any update was obsoleted or edited so it no longer contains the correct builds, the request should explain this, and you must apply the f44 tag to the correct builds manually. You can refer to the candidate compose request to double-check the builds to tag. Once all the correct builds are tagged, wait for (or trigger) a branched compose, which should now have the same content as the beta we are about to release. This ensures we tag the correct builds with the f44-Beta tag in the next step. It also allows for e.g. IoT and CoreOS composes to sync with the Beta package set.
Stage release to mirrors
From bodhi-backend01 (or another machine where the person running it has sigul set up and /pub is mounted), from the top level of a releng/tooling git repo checkout, run:
$ release-process/staging/stage_release_checksum_sign.sh 44_Beta Fedora-44-YYYYMMDD.0 fedora-44 1
$ sudo -u ftpsync release-process/staging/stage_release.sh 44_Beta Fedora-44-YYYYMMDD.0 fedora-44 1
Please update YYYYMMDD in the above command accordingly: this argument should be the compose ID of the approved Beta candidate.
|
Make sure to grab the directory size usage numbers which is used to send an email to mirror-admin@lists.fedoraproject.org list. |
Sync the signed checksums to stage
We need to sync the signed checksums to /pub/alt/stage/ by running the following commands:
$ pushd /mnt/koji/compose/44/Fedora-44-YYYYMMDD.N/compose
$ sudo -u ftpsync sh -c 'for checksum in $(find -name *CHECKSUM); do label=$(echo $checksum | grep -o "44_Beta-1\.[0-9]\{1,\}"); cp $checksum /pub/alt/stage/$label/$checksum; done'
$ popd
|
Replace YYYYMMDD in the above command accordingly, as per the previous step. |
Update Ansible vars
Set the infra ansible FedoraBranchedBodhi variable to postbeta
and the NextReleaseFrozen variable to False.
Run the playbooks
$ sudo rbac-playbook groups/releng-compose.yml $ sudo rbac-playbook groups/bodhi-backend.yml $ sudo rbac-playbook openshift-apps/bodhi.yml -t all,rollout $ sudo rbac-playbook groups/koji-hub.yml
Remove older betas
This cleanup step is to remove the older betas from the /pub/fedora-secondary/releases/test and /pub/fedora/linux/releases/test/ directories. This can be done using the rm command:
$ rm -rf /pub/fedora-secondary/releases/test/42_Beta
$ rm -rf /pub/fedora/linux/releases/test/42_Beta
$ rm -rf /pub/alt/releases/test/42_Beta
Note that 42_Beta should be replaced with the name(s) of any old beta releases still present, such as 36_Beta, 37_Beta, etc. Do NOT remove 44_Beta, that’s the one we just synced.
Want to help? Learn how to contribute to Fedora Docs ›