End of life SOP

From FedoraProject

(Difference between revisions)
Jump to: navigation, search
(Just some ideas)
m (Final announcement: mention HTTPS)
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
{{draft}}
 
{{draft}}
 +
{{shortcut|RSOP:EOL}}
 +
== Description ==
 +
<!-- 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.
  
 +
== Actions ==
 
<!-- Use headings to list out tasks in some semblance of chronological order, then flesh them out... I don't know them all, just guessing. -->
 
<!-- 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 responsibility, ~1 month after issuance of second following release
 
  
== Reminder announcement ==
+
=== 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
 
* from FESCo chair to f-devel-announce, f-announce-l, including
 
** date of last update push (if needed)
 
** date of last update push (if needed)
 
** date of actual EOL
 
** date of actual EOL
  
== Koji tasks ==
+
=== 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 ==
+
=== Bodhi tasks ===
 +
*
  
== QA tasks ==
+
In puppet, set the push scripts to not push the old release:
* Bugzilla?
+
<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/
  
== Docs tasks ==
+
-for rel in 11 12 13; do
 +
+for rel in 12 13; do
  
== Final announcement ==
+
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
 
* from FPL to f-announce-l
 
** on EOL date if at all possible
 
** on EOL date if at all possible
** link to previous reminder announcement
+
** link to previous reminder announcement (use HTTPS)
 +
 
 +
==== Announcement content ====
 +
* Consider this [http://www.openoffice.org/servlets/ReadMsg?list=announce&msgNo=407 EOL announcement] from openoffice.org
 +
** Note FAQ
 +
 
 +
== Verification ==
 +
<!-- Provide a method to verify the action was successful -->
  
 +
== Consider Before Running ==
 +
* Resource contention in infrastructure, such as outages
 +
* Extenuating circumstances for specific planned updates, if any
 +
* ot
  
[[Category:Release Engineering]]
+
[[Category:Release Engineering SOPs]]
[[Category:SOPs]]
+

Revision as of 19:09, 22 January 2013

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 (use HTTPS)

Announcement content

Verification

Consider Before Running

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