From dde340b904a65f959b7b436e3f648347f434ac3c Mon Sep 17 00:00:00 2001 From: Tomas Hrcka Date: Mar 03 2023 10:53:14 +0000 Subject: [releng] - more EOL & compose docs Signed-off-by: Tomas Hrcka --- diff --git a/modules/release_guide/pages/beta_RC_compose.adoc b/modules/release_guide/pages/beta_RC_compose.adoc index e447fcf..cad2a50 100644 --- a/modules/release_guide/pages/beta_RC_compose.adoc +++ b/modules/release_guide/pages/beta_RC_compose.adoc @@ -1,4 +1,4 @@ -== Release candidate +== Beta Release candidate When Quality Engineering (QE) requests a Release Candidate (RC) they do so by opening an issue in the releng repository on pagure. Release diff --git a/modules/release_guide/pages/final_RC_compose.adoc b/modules/release_guide/pages/final_RC_compose.adoc index c09ce74..b0629fb 100644 --- a/modules/release_guide/pages/final_RC_compose.adoc +++ b/modules/release_guide/pages/final_RC_compose.adoc @@ -1,2 +1,3 @@ +include::_partials/attributes.adoc[] == Final Release candidate diff --git a/modules/release_guide/pages/final_freeze.adoc b/modules/release_guide/pages/final_freeze.adoc index 4b4cbab..0591ce9 100644 --- a/modules/release_guide/pages/final_freeze.adoc +++ b/modules/release_guide/pages/final_freeze.adoc @@ -1 +1,2 @@ +include::_partials/attributes.adoc[] == Fedora Final Freeze \ No newline at end of file diff --git a/modules/release_guide/pages/release_eol.adoc b/modules/release_guide/pages/release_eol.adoc index 09402c0..be7524f 100644 --- a/modules/release_guide/pages/release_eol.adoc +++ b/modules/release_guide/pages/release_eol.adoc @@ -1,3 +1,4 @@ +include::_partials/attributes.adoc[] == End Of Life === Description @@ -14,4 +15,175 @@ necessary to move a release to that status. ==== Reminder announcement Send an email to devel@, devel-announce@, test-announce@, announce@ -lists as remainder about the release EOL. Use https://pagure.io/releng/blob/main/f/mail-templates/07-end-of-life.txt[template] from release engineering repo \ No newline at end of file +lists as remainder about the release EOL. Use https://pagure.io/releng/blob/main/f/mail-templates/07-end-of-life.txt[template] from release engineering repo + +==== Koji tasks + +* Disable builds by removing targets + +.... +$ koji remove-target {old_release} +$ koji remove-target {old_release}-candidate +$ koji remove-target {old_release}-container-candidate +$ koji remove-target {old_release}-flatpak-candidate +$ koji remove-target {old_release}-infra +$ koji remove-target {old_release}-coreos-continuous +$ koji remove-target {old_release}-rebuild +$ koji remote-target #any side targets that are still around +.... + +* Purge from disk the signed copies of rpms that are signed with the +EOL'd release key. To acheive this, add the release key to +*koji_cleanup_signed.py* script in https://pagure.io/releng[releng] repo +and the script on compose-branched01.iad2.fedoraproject.org + +.... +./scripts/koji_cleanup_signed.py +.... + +==== PDC tasks + +* Set PDC *active* value for the release to *False* + +.... +curl -u: -H 'Authorization: Token ' -H 'Accept: application/json' -H 'Content-Type:application/json' -X PATCH -d '{"active":"false"}' https://pdc.fedoraproject.org/rest_api/v1/releases/fedora-31/ +.... + +* Set the EOL dates in PDC for all the components to the release EOL +date if they are not already set. Run the following script from +https://pagure.io/releng[releng] repo + +.... +python scripts/pdc/adjust-eol-all.py f31 2020-11-24 +.... + +==== Bodhi tasks + +* Run the following bodhi commands to set the releases state to +*archived* + +.... +$ bodhi releases edit --name "F31" --state archived +$ bodhi releases edit --name "F31M" --state archived +$ bodhi releases edit --name "F31C" --state archived +$ bodhi releases edit --name "F31F" --state archived +.... + +==== Fedora Infra Ansible Changes + +* We need to make changes to bodhi, koji, mbs, releng, autosign roles in +ansible repo. + +* Run the associated playbooks on _batcave_ + +.... +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/groups/bodhi-backend.yml +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/groups/koji-hub.yml +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/groups/mbs.yml +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/groups/releng-compose.yml +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/groups/proxies -t pkgdb2 +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/manual/autosign.yml +$ sudo ansible-playbook /srv/web/infra/ansible/playbooks/openshift-apps/bodhi.yml +.... + +==== MBS Platform Retirement + +* To retire the platform in mbs, run the following command on +mbs-backend01.iad2.fedoraproject.org + +.... +$ sudo mbs-manager retire platform:f31 +.... + +==== Final announcement + +* Send the final announcement to devel@, devel-announce@, +test-announce@, announce@ lists + +Use https://pagure.io/releng/blob/main/f/mail-templates/07-end-of-life.txt[template] from release engineering repo + +===== Update FedoraPreviousPrevious.yaml in ansible repository + +set the variable to False + +===== Move the EOL release to archive + +. log into to bodhi-backend01 and become root ++ +____ +.... +$ ssh bodhi-backend01.iad2.fedoraproject.org +$ sudo su +$ su - ftpsync +.... +____ +. then change into the releases directory. ++ +____ +.... +$ cd /pub/fedora/linux/releases +.... +____ +. check to see that the target directory doesnt already exist. ++ +____ +.... +$ ls /pub/archive/fedora/linux/releases/ +.... +____ +. do a recursive rsync to update any changes in the trees since the +previous copy. ++ +____ +.... +$ rsync -avAXSHP ./35/ /pub/archive/fedora/linux/releases/35/ +.... +____ +. we now do the updates and updates/testing in similar ways. ++ +____ +.... +$ cd ../updates/ +$ rsync -avAXSHP 35/ /pub/archive/fedora/linux/updates/35/ +$ cd testing +$ rsync -avAXSHP 35/ /pub/archive/fedora/linux/updates/testing/35/ +.... +____ +. do the same with fedora-secondary. +. announce to the mirror list this has been done and that in 2 weeks you +will move the old trees to archives. +. in two weeks, log into mm-backend01 and run the archive script ++ +____ +.... +$ sudo -u mirrormanager mm2_move-to-archive --originalCategory="Fedora Linux" --archiveCategory="Fedora Archive" --directoryRe='/35/Everything' +.... +____ +. if there are problems, the postgres DB may have issues and so you need +to get a DBA to update the backend to fix items. +. wait an hour or so then you can remove the files from the main tree. ++ +____ +.... +$ ssh bodhi-backend01 +$ cd /pub/fedora/linux +$ cd releases/35 +$ ls # make sure you have stuff here +$ rm -rf * +$ ln ../20/README . +$ cd ../../updates/35 +$ ls #make sure you have stuff here +$ rm -rf * +$ ln ../20/README . +$ cd ../testing/35 +$ ls # make sure you have stuff here +$ rm -rf * +$ ln ../20/README . +.... +____ + +== Consider Before Running + +* Resource contention in infrastructure, such as outages +* Extenuating circumstances for specific planned updates, if any +* Send the reminder announcement, if it isn't sent already