Beta freeze and Bodhi Activation Point

Description

Bodhi must be activated after two weeks of Mass Branching at 14:00 UTC.

Action

Making koji changes

Make the following koji tag changes

$ koji remove-tag-inheritance f38-updates-candidate f38
$ koji remove-tag-inheritance f38-updates-testing f38
$ koji remove-tag-inheritance f38-updates-pending f38
$ koji remove-tag-inheritance f38-override f38
$ koji add-tag-inheritance f38-updates-candidate f38-updates
$ koji add-tag-inheritance f38-updates-testing f38-updates
$ koji add-tag-inheritance f38-updates-pending f38-updates
$ koji add-tag-inheritance f38-override f38-updates
$ koji edit-tag --perm=admin f38

Update bodhi rpm release

Set the bodhi rpm to release to not to automatically create the update and also bodhi knows to compose the updates

$ bodhi releases edit --name "F38" --stable-tag f38-updates --testing-repository updates-testing --package-manager dnf --no-create-automatic-updates --composed-by-bodhi --state frozen

Add the modular release

Run the following command on your own workstation to add the modular release

$ bodhi releases create --name F38M --long-name "Fedora 38 Modular" --id-prefix FEDORA-MODULAR --version 38 --branch f38m --dist-tag f38-modular --stable-tag f38-modular-updates --testing-tag f38-modular-updates-testing --candidate-tag f38-modular-updates-candidate --pending-stable-tag f38-modular-updates-pending --pending-testing-tag f38-modular-updates-testing-pending --pending-signing-tag f38-modular-signing-pending --override-tag f38-modular-override --state pending --user <fas username>

Please update fas account username in above command.

Warning

Due to a bug in Bodhi, it is critical that Bodhi processes be restarted any time bodhi releases create or bodhi releases edit are used.

Note

Add the container and flatpak releases if they weren’t already added to bodhi

Update vars

Update the FedoraBranchedBodhi and RelEngFrozen vars in infra ansible

Update all relevant projects in ansible

As in this Ansible Pull request create changes for the 38 release ==== Run the playbooks

$ rbac-playbook openshift-apps/greenwave.yml
$ rbac-playbook openshift-apps/bodhi.yml
$ rbac-playbook groups/bodhi-backend.yml
$ rbac-playbook groups/releng-compose.yml
$ rbac-playbook manual/autosign.yml

Greenwave runs in OpenShift (as implied by the playbook paths), and so the change will not be live right away when the playbook finishes. You can monitor https://greenwave-web-greenwave.app.os.fedoraproject.org/api/v1.0/policies to wait for the new policy to appear (it should take a few minutes).

Restart bodhi services

Restart bodhi services to understand the bodhi new release on bodhi-backend01 (Look at warning in https://docs.pagure.org/releng/sop_bodhi_activation.html#action and the bug is https://github.com/fedora-infra/bodhi/issues/2177)

$ sudo systemctl restart bodhi-celery
$ sudo systemctl restart fm-consumer@config
$ sudo systemctl restart koji-sync-listener

Send Announcement

Email devel-announce and test-announce lists about Bodhi Activation. Please find the body of the email in templates dir in releng repository

Verification

Compare koji tagging structure with older release

$ koji list-tag-inheritance 38 --reverse
$ koji list-tag-inheritance 37 --reverse

Compare the bodhi release with older release

$ bodhi releases info 38
$ bodhi releases info 37

Check for other variants like modular, container and flatpaks

Process stable push requests

During feezes we need to push to stable builds included in the compose. QA will file a ticket with the nvrs to push.

Note

If you are pushing a bodhi update that contains multiple builds, you need only pass bodhi-push a single build nvr and all the others in that update will be detected and pushed along with it. However, if you are pushing multiple disjoint bodhi updates then each build will need to be listed individually.

$ sudo -u apache bodhi-push --builds '<nvr1>,<nvr2>,...' --username <username>

Consider Before Running

No considerations at this time. The docs git repository is simply a static html hosting space and we can just re-render the docs and push to it again if necessary.