/[gentoo]/xml/htdocs/proj/en/glep/glep-0019.html
Gentoo

Contents of /xml/htdocs/proj/en/glep/glep-0019.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download) (as text)
Fri Jan 30 02:41:45 2004 UTC (10 years, 7 months ago) by g2boojum
Branch: MAIN
File MIME type: text/html
New glep

1 g2boojum 1.1 <?xml version="1.0" encoding="utf-8" ?>
2     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3     <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4     <!--
5     This HTML is auto-generated. DO NOT EDIT THIS FILE! If you are writing a new
6     PEP, see http://www.python.org/peps/pep-0001.html for instructions and links
7     to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE!
8     -->
9     <head>
10     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
11     <meta name="generator" content="Docutils 0.3.0: http://docutils.sourceforge.net/" />
12     <title>GLEP 19 -- Gentoo Stable Portage Tree</title>
13     <link rel="stylesheet" href="tools/glep.css" type="text/css" />
14     </head>
15     <body bgcolor="white">
16     <table class="navigation" cellpadding="0" cellspacing="0"
17     width="100%" border="0">
18     <tr><td class="navicon" width="150" height="35">
19     <a href="http://www.gentoo.org/" title="Gentoo Linux Home Page">
20     <img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
21     border="0" width="150" height="35" /></a></td>
22     <td class="textlinks" align="left">
23     [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
24     [<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>]
25     [<b><a href="http://www.gentoo.org/proj/en/glep/glep-0019.txt">GLEP Source</a></b>]
26     </td></tr></table>
27     <div class="document">
28     <table class="rfc2822 field-list" frame="void" rules="none">
29     <col class="field-name" />
30     <col class="field-body" />
31     <tbody valign="top">
32     <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">19</td>
33     </tr>
34     <tr class="field"><th class="field-name">Title:</th><td class="field-body">Gentoo Stable Portage Tree</td>
35     </tr>
36     <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.3</td>
37     </tr>
38     <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0019.txt?cvsroot=gentoo">2004/01/30 02:27:28</a></td>
39     </tr>
40     <tr class="field"><th class="field-name">Author:</th><td class="field-body">Kurt Lieber &lt;klieber&#32;&#97;t&#32;gentoo.org&gt;</td>
41     </tr>
42     <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td>
43     </tr>
44     <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
45     </tr>
46     <tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td>
47     </tr>
48     <tr class="field"><th class="field-name">Created:</th><td class="field-body">26-Jan-2004</td>
49     </tr>
50     <tr class="field"><th class="field-name">Post-History:</th><td class="field-body">29-Jan-2004</td>
51     </tr>
52     </tbody>
53     </table>
54     <hr />
55     <div class="contents topic" id="contents">
56     <p class="topic-title"><a name="contents">Contents</a></p>
57     <ul class="simple">
58     <li><a class="reference" href="#abstract" id="id2" name="id2">Abstract</a></li>
59     <li><a class="reference" href="#motivation" id="id3" name="id3">Motivation</a></li>
60     <li><a class="reference" href="#specification" id="id4" name="id4">Specification</a></li>
61     <li><a class="reference" href="#rationale" id="id5" name="id5">Rationale</a></li>
62     <li><a class="reference" href="#implementation" id="id6" name="id6">Implementation</a></li>
63     <li><a class="reference" href="#backwards-compatibility" id="id7" name="id7">Backwards Compatibility</a></li>
64     <li><a class="reference" href="#copyright" id="id8" name="id8">Copyright</a></li>
65     </ul>
66     </div>
67     <div class="section" id="abstract">
68     <h1><a class="toc-backref" href="#id2" name="abstract">Abstract</a></h1>
69     <p>This GLEP is intended to propose a series of changes to the Portage tree that
70     are necessary to facilitate the use of Gentoo in areas where stability and
71     predictability are of paramount importance, including servers in enterprise
72     environments, mission critical workstations and other such installations.</p>
73     <p>The proposed solution involves creating a separate tree in Portage that is
74     updated far less often than the regular tree. Outside of periodic updates,
75     this tree would only be updated with critical bugfixes and security patches.</p>
76     </div>
77     <div class="section" id="motivation">
78     <h1><a class="toc-backref" href="#id3" name="motivation">Motivation</a></h1>
79     <p>Enterprise customers typically value stability and a predictable upgrade path
80     over having the latest packages or features available to them. Historically,
81     Gentoo Linux has been unable to provide such an environment due to the dynamic
82     nature of the Portage tree.</p>
83     </div>
84     <div class="section" id="specification">
85     <h1><a class="toc-backref" href="#id4" name="specification">Specification</a></h1>
86     <p>The Gentoo Infrastructure team will need to provide an additional Portage tree
87     on our rsync mirroring system. This new tree will house the ebuilds
88     associated with the stable tree. It also impacts all Gentoo developers
89     responsible for creating and updating ebuilds as they will be expected to
90     integrate the tagging of ebuilds for the stable tree into their normal
91     development process, both for the quarterly release cycles as well as
92     off-cycle bug and security fixes.</p>
93     <p>The Gentoo Documentation team will also be affected as they will be
94     responsible for updating installation documents to take these new features
95     into account.</p>
96     </div>
97     <div class="section" id="rationale">
98     <h1><a class="toc-backref" href="#id5" name="rationale">Rationale</a></h1>
99     <p>A basic outline of various ways of adding a &quot;stable&quot; tree to Portage was
100     discussed in the gentoo managers meeting on 26-Jan-04. Consensus seemed to be
101     reached that such a solution was needed and that branching the gentoo-x86
102     repository was the appropriate way to accomplish this. The largest area of
103     disagreement surrounded how specific ebuilds should be targeted for inclusion
104     in the stable tree.</p>
105     <p>One suggested solution was a simple branch of the CVS tree and having
106     developers work in two separate branches; one for the stable tree and
107     another for the traditional tree. However, it was felt this would prove too
108     cumbersome in practice.</p>
109     <p>Another suggestion was to have a small group of dedicated gentoo-server
110     developers responsible for generating the contents of the stable tree, which
111     would provide more control and quality assurance over the ebuilds added to the
112     stable tree. While this might prove effective for a small number of ebuilds,
113     it is quite likely that this model would not scale enough to allow for a large
114     number of ebuilds in the stable tree and, over time, the project would become
115     resource constrained and unable to meed future deadlines.</p>
116     <p>The suggestion that seemed to get the most traction was the creation of a new
117     &quot;stable&quot; keyword which would be added to appropriate ebuilds. The use of
118     &quot;stable&quot; would signify ebuilds that are ready for production in the stable
119     tree while &quot;~stable&quot; would be reserved for ebuilds which may be appropriate
120     for the stable tree, but may require further testing before being deemed
121     &quot;ready for production&quot;. Off-cycle bug fixes and/or security updates may be
122     examples of ebuilds that require the ~server tag.</p>
123     </div>
124     <div class="section" id="implementation">
125     <h1><a class="toc-backref" href="#id6" name="implementation">Implementation</a></h1>
126     <p>While a 'stable' keyword was originally proposed, after further review, it was
127     determined this offered no way to allow arch-specific stable ebuilds. As
128     such, this GLEP proposes the use of 'stable:&lt;arch&gt;' and '~stable:&lt;arch&gt;'
129     (stable:x86, stable:ppc, etc.)</p>
130     <p>A new, stable tree will be created by scanning for the 'stable:&lt;arch&gt;' and
131     '~stable:&lt;arch&gt;' keywords in the ebuilds and pulling those ebuilds and
132     associated files into a separate branch of CVS. The stable tree should have
133     the following features:</p>
134     <ul class="simple">
135     <li>Updated quarterly. Frozen during other times except for security/bug fixes</li>
136     <li>All ebuilds should remain in the tree for a minimum of one year. This
137     allows users to upgrade as infrequently as once per year without risking
138     the stable portage tree leaving them behind without an upgrade path.</li>
139     </ul>
140     <p>As mentioned above, the &quot;stable&quot; tree will be updated quarterly, ideally in
141     unison with the release schedule of the main Gentoo branch. This tree will be
142     untouched outside of this update schedule except in the following cases:</p>
143     <ul class="simple">
144     <li>Security fixes and patches which result in a GLSA</li>
145     <li>Bug fixes for bugs ranked as 'maj' or above (may be overridden at the
146     discretion of the package maintainer.)</li>
147     </ul>
148     <p>In both cases, the maintainer of the package will be responsible for ensuring
149     these patches are properly committed to the stable tree out of cycle.</p>
150     </div>
151     <div class="section" id="backwards-compatibility">
152     <h1><a class="toc-backref" href="#id7" name="backwards-compatibility">Backwards Compatibility</a></h1>
153     <p>All features proposed here are new additions to existing processes and
154     features. There should be no impact on existing features and functionality.</p>
155     </div>
156     <div class="section" id="copyright">
157     <h1><a class="toc-backref" href="#id8" name="copyright">Copyright</a></h1>
158     <p>This document is licensed under the Creative Commons - Attribution / Share
159     Alike license. (<a class="reference" href="http://creativecommons.org/licenses/by-sa/1.0">http://creativecommons.org/licenses/by-sa/1.0</a>)</p>
160     </div>
161     </div>
162    
163     <hr class="footer"/>
164     <div class="footer">
165     <a class="reference" href="glep-0019.txt">View document source</a>.
166     Generated on: 2004-01-30 02:25 UTC.
167     Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
168     </div>
169     </body>
170     </html>

  ViewVC Help
Powered by ViewVC 1.1.20