End of life SOP

From FedoraProject

(Difference between revisions)
Jump to: navigation, search
(Add ntoe on updating the fedora component in bugzilla)
(13 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 +
{{draft}}
 +
{{shortcut|RSOP:EOL}}
 
== Description ==
 
== Description ==
 
<!-- Put a description of the task here. -->
 
<!-- Put a description of the task here. -->
 +
Each release of Fedora is maintained as laid out in the [[Fedora_Release_Life_Cycle#Maintenance_Schedule | maintenance schedule]].  At the conclusion of the maintenance period, a Fedora release enters ''end of life'' status. This procedure describes the tasks necessary to move a release to that status.
  
== Action ==
+
== Actions ==
<!-- Describe the action and provide examples -->
+
<!-- Use headings to list out tasks in some semblance of chronological order, then flesh them out... I don't know them all, just guessing. -->
 +
 
 +
=== Set date ===
 +
* FESCo responsibilities:
 +
** Follow guidelines of [[Fedora_Release_Life_Cycle#Maintenance_Schedule | maintenance schedule]]
 +
** Take into account any infrastructure or other supporting project resource contention
 +
** Announce the closure of the release to the package maintainers.
 +
 
 +
=== Reminder announcement ===
 +
* from FESCo chair to f-devel-announce, f-announce-l, including
 +
** date of last update push (if needed)
 +
** date of actual EOL
 +
 
 +
=== Koji tasks ===
 +
* disable builds by removing targets
 +
<pre>
 +
koji remove-target dist-f12
 +
koji remove-target dist-f12-updates-candidate
 +
</pre>
 +
* Purge from disk the signed copies of rpms that are signed with the EOL'd release key
 +
 
 +
=== Bodhi tasks ===
 +
*
 +
 
 +
In puppet, set the push scripts to not push the old release:
 +
<pre>
 +
diff --git a/configs/system/fedora-updates-push
 +
b/configs/system/fedora-updates-push
 +
index 2c05334..39e25f7 100755
 +
--- a/configs/system/fedora-updates-push
 +
+++ b/configs/system/fedora-updates-push
 +
@@ -3,7 +3,7 @@
 +
SOURCE=/mnt/koji/mash/updates
 +
DEST=/pub/fedora/linux/updates/
 +
 
 +
-for rel in 11 12 13; do
 +
+for rel in 12 13; do
 +
 
 +
rsync -rlptDvHh --delay-updates $RSYNC_OPTS --exclude "repodata/*" \
 +
        $SOURCE/f$rel-updates/ $DEST/$rel/ &>/dev/null
 +
@@ -11,7 +11,7 @@ rsync -rlptDvHh --delay-updates $RSYNC_OPTS --delete
 +
--delete-after \
 +
        $SOURCE/f$rel-updates/ $DEST/$rel/ &>/dev/null
 +
 
 +
done
 +
-for rel in 11 12 13; do
 +
+for rel in 12 13; do
 +
 
 +
rsync -rlptDvHh --delay-updates $RSYNC_OPTS --exclude "repodata/*" \
 +
        $SOURCE/f$rel-updates-testing/ $DEST/testing/$rel/ &>/dev/null
 +
</pre>
 +
=== PackageDB ===
 +
 
 +
Set the release to be End of Life in the PackageDB.  Currently, that's done with the following db queries:
 +
 
 +
<pre>
 +
-- For the Package ACLs
 +
update collection set statuscode = 9 where name = 'Fedora' and version = '11';
 +
 
 +
-- For the Application Database
 +
select * from repos where shortname ~'^F-11-.*' and active = true;
 +
-- Check that only repositories for the EOL repo are listed.
 +
BEGIN;
 +
update repos set active = false where shortname ~ '^F-11-*' and active = true;
 +
-- Make sure the same number of records were modified as previous select
 +
COMMIT;
 +
</pre>
 +
 
 +
=== Source Control (CVS) ===
 +
* Branches for new packages in CVS are not allowed for distribution X after the Fedora X+2 release. New builds are no longer allowed for EOL Fedora releases.
 +
 
 +
=== AutoQA ===
 +
The [[AutoQA]] project maintains a config file ({{filename|repoinfo.conf}}) that describes available package repositories and their inheritance.  When a Fedora release is EOL'd, the {{filename|repoinfo.conf}} file needs to be updated.  Please [https://fedorahosted.org/autoqa/newticket?summary=Update%20repoinfo.conf%20-%20Remove%20release&type=task&component=production&priority=critical&milestone=Hot%20issues file an autoqa ticket] to modify the {{filename|repoinfo.conf}} file to remove pointers to the EOL'd release.
 +
 
 +
=== Bugzappers Tasks ===
 +
* Close all open bugs
 +
* [[BugZappers/HouseKeeping#End_of_Life_.28EOL.29 | End of life process]]
 +
 
 +
=== Bugzilla ===
 +
* Update the description of Fedora in bugzilla for the current releases.
 +
** Get someone from sysadmin-main to login as the fedora-admin-xmlrpc@redhat.com user to bugzilla.
 +
** Have them edit the description of the Fedora product here: https://bugzilla.redhat.com/editproducts.cgi?action=edit&product=Fedora
 +
 
 +
=== Docs tasks ===
 +
* any?
 +
 
 +
=== Cloud tasks ===
 +
 
 +
* Remove unsupported EC2 images from [[Cloud_images#Currently_supported_EC2_images]].
 +
 
 +
=== Final announcement ===
 +
* from FPL to f-announce-l
 +
** on EOL date if at all possible
 +
** link to previous reminder announcement
 +
 
 +
==== Announcement content ====
 +
* Consider this [http://www.openoffice.org/servlets/ReadMsg?list=announce&msgNo=407 EOL announcement] from openoffice.org
 +
** Note FAQ
  
 
== Verification ==
 
== Verification ==
 
<!-- Provide a method to verify the action was successful -->
 
<!-- Provide a method to verify the action was successful -->
  
== Considerations ==
+
== Consider Before Running ==
<!-- Create a list of things to keep in mind when performing action. -->
+
* Resource contention in infrastructure, such as outages
 
+
* Extenuating circumstances for specific planned updates, if any
<!-- Be sure to remove the Category:Template link below. Keep the RelEng SOP category link. -->
+
* ot
  
[[Category:Template]]
 
 
[[Category:Release Engineering SOPs]]
 
[[Category:Release Engineering SOPs]]

Revision as of 22:31, 11 January 2012

Warning (medium size).png
This page is a draft only
It is still under construction and content may change. Do not rely on the information on this page.
Shortcut:
RSOP:EOL

Contents

Description

Each release of Fedora is maintained as laid out in the maintenance schedule. At the conclusion of the maintenance period, a Fedora release enters end of life status. This procedure describes the tasks necessary to move a release to that status.

Actions

Set date

  • FESCo responsibilities:
    • Follow guidelines of maintenance schedule
    • Take into account any infrastructure or other supporting project resource contention
    • Announce the closure of the release to the package maintainers.

Reminder announcement

  • from FESCo chair to f-devel-announce, f-announce-l, including
    • date of last update push (if needed)
    • date of actual EOL

Koji tasks

  • disable builds by removing targets
koji remove-target dist-f12
koji remove-target dist-f12-updates-candidate
  • Purge from disk the signed copies of rpms that are signed with the EOL'd release key

Bodhi tasks

In puppet, set the push scripts to not push the old release:

diff --git a/configs/system/fedora-updates-push
b/configs/system/fedora-updates-push
index 2c05334..39e25f7 100755
--- a/configs/system/fedora-updates-push
+++ b/configs/system/fedora-updates-push
@@ -3,7 +3,7 @@
 SOURCE=/mnt/koji/mash/updates
 DEST=/pub/fedora/linux/updates/

-for rel in 11 12 13; do
+for rel in 12 13; do

 rsync -rlptDvHh --delay-updates $RSYNC_OPTS --exclude "repodata/*" \
         $SOURCE/f$rel-updates/ $DEST/$rel/ &>/dev/null
@@ -11,7 +11,7 @@ rsync -rlptDvHh --delay-updates $RSYNC_OPTS --delete
--delete-after \
         $SOURCE/f$rel-updates/ $DEST/$rel/ &>/dev/null

 done
-for rel in 11 12 13; do
+for rel in 12 13; do

 rsync -rlptDvHh --delay-updates $RSYNC_OPTS --exclude "repodata/*" \
         $SOURCE/f$rel-updates-testing/ $DEST/testing/$rel/ &>/dev/null

PackageDB

Set the release to be End of Life in the PackageDB. Currently, that's done with the following db queries:

-- For the Package ACLs
update collection set statuscode = 9 where name = 'Fedora' and version = '11'; 

-- For the Application Database
select * from repos where shortname ~'^F-11-.*' and active = true;
-- Check that only repositories for the EOL repo are listed.
BEGIN;
update repos set active = false where shortname ~ '^F-11-*' and active = true;
-- Make sure the same number of records were modified as previous select
COMMIT;

Source Control (CVS)

  • Branches for new packages in CVS are not allowed for distribution X after the Fedora X+2 release. New builds are no longer allowed for EOL Fedora releases.

AutoQA

The AutoQA project maintains a config file (repoinfo.conf) that describes available package repositories and their inheritance. When a Fedora release is EOL'd, the repoinfo.conf file needs to be updated. Please file an autoqa ticket to modify the repoinfo.conf file to remove pointers to the EOL'd release.

Bugzappers Tasks

Bugzilla

Docs tasks

  • any?

Cloud tasks

Final announcement

  • from FPL to f-announce-l
    • on EOL date if at all possible
    • link to previous reminder announcement

Announcement content

Verification

Consider Before Running

  • Resource contention in infrastructure, such as outages
  • Extenuating circumstances for specific planned updates, if any
  • ot