Fedora Beta Release

Based on the GO/NOGO meeting if the currnet compose is GO. The following steps need to be taken.

Wait for branched compose that matches the beta rc

QE will typically request a stable push of all the updates that were in the Beta RC that was signed off on. After that stable push we need to wait for a branched compose with them. This ensures that the nightly branched has the same content as the beta we are about to release. This is to allow us to make sure and tag all the right packages and have a common point.

Koji changes

$ koji clone-tag --all --latest-only f40 f40-Beta

Stage release to mirrors

$ sh scripts/stage-release.sh 40_Beta Fedora-40-YYYYMMDD.0 _Beta-1.2 fedora-40 1

Please update YYYYMMDD in the above command accordingly.

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 command

$ for dir in Cloud Container Everything Kinoite Labs Sericea Server Silverblue Spins Workstation metadata; do sudo -u ftpsync rsync -avhH /mnt/koji/compose/40/Fedora-40-20221105.0/compose/$dir/ /pub/alt/stage/40_RC-1.7/$dir/ --link-dest=/pub/fedora/linux/releases/40/Everything/ --link-dest=/pub/alt/stage/40_RC-1.2/Everything/ --link-dest=/pub/alt/stage/40_RC-1.3/Everything --link-dest=/pub/alt/stage/40_RC-1.4/Everything --link-dest=/pub/alt/stage/40_RC-1.5/Everything --link-dest=/pub/alt/stage/40_RC-1.6/Everything --link-dest=/pub/alt/stage/40_RC-1.7/Everything; done

Replace the RC above with the RC that was 'go'

Set release in Bodhi to pending

$ bodhi releases edit --name F40 --state pending

Lift RelEng freeze

Lift the RelEng Freeze so that the updates will be pushed to stable. This is done by editing RelEngFrozen variable in infra ansible repo.

Set also FedoraBranchedBodhi variable to postbeta

Then run both bodhi playbooks: playbooks/groups/bodhi-backend01.yml and playbooks/openshift-apps/bodhi.yml (One for the backend vm and one for the OpenShift application)

Beta Installation and Cleanup

This section outlines the steps that should be followed to ensure that older copies of Fedora betas are removed from the servers and that the correct permissions are set on the directories.

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/40_Beta
$ rm -rf /pub/fedora/linux/releases/test/40_Beta

Note that 40 should be replaced with the name of the beta release, such as 36_Beta, 37_Beta, etc.

By following these steps, one can ensure that older copies of Fedora betas are removed from the servers and that the correct permissions are set on the directories.

Run the playbooks

$ sudo rbac-playbook groups/releng-compose.yml
$ sudo rbac-playbook groups/bodhi-backend.yml
$ sudo rbac-playbook openshift-apps/bodhi.yml