Changes between Version 93 and Version 94 of Release/Procedure

Show
Ignore:
Timestamp:
06/27/12 14:48:11 (11 months ago)
Author:
erilem
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Release/Procedure

    v93 v94  
    177177 * Write a 50 word summary of the release and send to news_item at osgeo dot org 
    178178 * Change topic on IRC ({{{/topic}}}) 
    179  
    180 ''' OLD AFTER THIS ''' 
    181  
    182 == Creating a Release Candidate == 
    183  
    184  1. '''Release Candidate (RC) Cycle''' [[br]]''Let us say that for the RC in question, '''Z''' is the incremental release candidate number (starting with 1)''[[br]][[br]] 
    185    1. Compile a Release Announcement. The announcement should be located at ''Release/x.y/Announce/RCZ'' and should include one of the following: 
    186      * If this is the first RC (Z is 1): A link to the ''Release/x.y/Notes'' wiki, and a brief summary of its contents. 
    187      * If this is ''not'' the first RC, then: A brief summary of all of the tickets that were fixed in the last RC.[[br]] ''This should be a summary of the following trac query (where we let W be the previous RC number, i.e. Z-1):'' 
    188 {{{  
    189 http://trac.openlayers.org/query?status=closed&version=x.y+RCW&milestone=x.y+Release&resolution=fixed&order=priority 
    190 }}} 
    191     1. Set VERSION_NUMBER in http://svn.openlayers.org/branches/openlayers/x.y/lib/OpenLayers.js and http://svn.openlayers.org/branches/openlayers/x.y/lib/OpenLayers/SingleFile.js to "Release x.y-rcZ" and commit the change. 
    192     1. Create a release tag for the RC (off the release branch): 
    193  
    194   1. Export and Build the single file versions:  
    195 {{{ 
    196 $ wget -O release-x.y-rcZ.tar.gz https://github.com/openlayers/openlayers/tarball/release-x.y-rcZ 
    197 $ tar xvzf release-x.y-rcZ.tar.gz 
    198 $ cd openlayers-openlayers-*/tools 
    199 $ VERSION=x.y-rcZ ./release.sh 
    200 }}} 
    201  
    202 '''UNCHANGED AFTER THIS LINE''' 
    203  
    204    1. Create a new API release directory on openlayers.org and install the build 
    205 {{{ 
    206   mkdir /www/openlayers/docs/api/x.y-rcZ 
    207   cd .. 
    208   cp build/OpenLayers.js /www/openlayers/docs/api/x.y-rcZ 
    209   cp -a img/ /www/openlayers/docs/api/x.y-rcZ 
    210   cp -a theme/ /www/openlayers/docs/api/x.y-rcZ 
    211 }}} 
    212    1. Build the tarball and copy it up to openlayers.org 
    213 {{{ 
    214   # First remove all .pyc files from the directory. 
    215   rm tools/*.pyc 
    216   cd .. 
    217   tar cvfz OpenLayers-x.y-rcZ.tar.gz OpenLayers-x.y-rcZ/ 
    218   cp OpenLayers-x.y-rcZ.tar.gz /www/openlayers/docs/download 
    219 }}} 
    220    1. Build a zip archive to openlayers.org 
    221 {{{ 
    222   zip -9r OpenLayers-x.y-rcZ.zip OpenLayers-x.y-rcZ/ 
    223   cp OpenLayers-x.y-rcZ.zip /www/openlayers/docs/download 
    224 }}} 
    225    1. Create a new ''Version'' entry in TRAC called "x.y RCZ" for bug tracking[[br]][[br]] 
    226    1. Email the Release Announcement to the dev list.[[br]][[br]] 
    227  
    228 == The Testing Cycle == 
    229  
    230    1. '''Testing Cycle''' -- in which users and developers: 
    231       * Report new tickets  
    232         1. Milestone: ''x.y Release''  
    233         1. Version: ''x.y RCZ'' 
    234       * Fix outstanding tickets: 
    235         1. Commit only to trunk 
    236         1. Set 'State' to 'Pullup' as they still need to be pulled up to the branch 
    237         1. Do not mark as ''closed'' (i.e. leave them open) 
    238       * Run all tests in both Firefox 1.5 and IE 6. 
    239         * If any tests fail, return to '''Testing Cycle''' and report a new ticket. 
    240         * If all tests pass, a committer may send a proposal email to the dev list calling for: 
    241           * A new RC: 
    242             1. The support of at least one other committer must be obtained. 
    243             1. The committer chooses which patches to include in the the new RC or Final Release. [[br]] ''These should be taken from the the results of the following trac query:'' 
    244 {{{ 
    245 http://trac.openlayers.org/query?milestone=x.y+Release&keywords=%7Epullup&order=priority 
    246 }}} 
    247               1. Bring up each ticket's patch from trunk into the branch 
    248               1. Change each ticket's 'State' field to 'Complete' 
    249               1. Add brief summary of the change to the ''Release/x.y/Notes'' wiki 
    250               1. Mark ticket ''closed'' 
    251             1. Committer exits '''Testing Cycle''', starts new '''Release Candidate Cycle''' 
    252           * The Final Release: 
    253             1. All tickets for the milestone must be closed in the previous RC and no new tickets opened in the current one. 
    254             1. A successful [wiki:SteeringCommittee#DetailedProcess voting] round must pass the SteeringCommittee. 
    255             1. SteeringCommittee member exits the '''Testing Cycle''' and '''Release Candidate Cycle''' and proceeds to the next step, '''Review the ''Release/x.y/Notes'' wiki...'''[[br]][[br]] 
    256  1. Review the ''Release/x.y/Notes'' wiki and make sure it contains important info from all the closed tickets for the ''Release x.y'' milestone: 
    257 {{{ 
    258 http://trac.openlayers.org/query?group=component&milestone=x.y+Release&resolution=fixed&order=priority 
    259 }}} 
    260  1. Update news.txt: both in trunk and in the branch, update the /news.txt file to reflect this release. Note that you must be both tricky and quick here, as you must *predict* the correct revision number for the actual tagging of the release, which you will do in the next step. Essentially, this is current release +2 (one for the check-in of news.txt, one for the tag). It seems absurd, but it is good to make sure that no one else is checking in at the same time as this maneuver assumes a quiet wire. 
    261     1. Set VERSION_NUMBER in http://svn.openlayers.org/branches/openlayers/x.y/lib/OpenLayers.js and http://svn.openlayers.org/branches/openlayers/x.y/lib/OpenLayers/SingleFile.js to "Release x.y-rcZ" and commit the change. 
    262   1. Tag the release: 
    263 {{{ 
    264   export VERSION=2.7 
    265   svn copy -m "Tagging the Final x.y Release" http://svn.openlayers.org/branches/openlayers/$VERSION http://svn.openlayers.org/tags/openlayers/release-$VERSION 
    266 }}} 
    267  1. Export and Build the single file version:  
    268 {{{ 
    269   svn export http://svn.openlayers.org/tags/openlayers/release-$VERSION OpenLayers-$VERSION 
    270   cd OpenLayers-$VERSION/build 
    271   ./build.py 
    272 }}} 
    273  1. Create a new API release directory on openlayers.org and install the build 
    274 {{{ 
    275   mkdir /www/openlayers/docs/api/$VERSION 
    276   cd .. 
    277   cp build/OpenLayers.js /www/openlayers/docs/api/$VERSION 
    278   cp -a img/ /www/openlayers/docs/api/$VERSION 
    279   cp -a theme/ /www/openlayers/docs/api/$VERSION 
    280 }}} 
    281  1. Build the tarball and copy it up to openlayers.org 
    282 {{{ 
    283   # First remove all .pyc files from the directory. 
    284   rm tools/*.pyc 
    285   # move single file version 
    286   cp build/OpenLayers.js OpenLayers.js 
    287   rm build/OpenLayers.js 
    288    
    289   cd .. 
    290   mkdir OpenLayers-$VERSION/doc/devdocs 
    291   perl ~crschmidt/NaturalDocs -i OpenLayers-$VERSION/lib -o HTML OpenLayers-$VERSION/doc/devdocs -p OpenLayers-$VERSION/doc_config -s Default OL 
    292   mkdir OpenLayers-$VERSION/doc/apidocs 
    293   perl ~crschmidt/NaturalDocs -i OpenLayers-$VERSION/lib -o HTML OpenLayers-$VERSION/doc/apidocs -p OpenLayers-$VERSION/apidoc_config -s Default OL 
    294  
    295   tar cvfz OpenLayers-$VERSION.tar.gz OpenLayers-$VERSION/ 
    296   cp OpenLayers-$VERSION.tar.gz /www/openlayers/docs/download 
    297 }}} 
    298  1. Build a zip archive to openlayers.org 
    299 {{{ 
    300   zip -9r OpenLayers-$VERSION.zip OpenLayers-$VERSION/ 
    301   cp OpenLayers-$VERSION.zip /www/openlayers/docs/download 
    302 }}} 
    303  1. Install the new API code on openlayers.org 
    304 {{{   
    305   export X=2 
    306   ln -sf /www/openlayers/docs/api/$VERSION/OpenLayers.js /www/openlayers/docs/api 
    307   ln -sf /www/openlayers/docs/api/$VERSION/img /www/openlayers/docs/api 
    308   ln -sf /www/openlayers/docs/api/$VERSION/theme /www/openlayers/docs/api 
    309   rm /www/openlayers/docs/api/$VERSION && ln -sf /www/openlayers/docs/api/$VERSION /www/openlayers/docs/api/$X 
    310 }}} 
    311  1. Create a new ''Version'' entry in TRAC called "x.y" for bug tracking.[[br]][[br]] 
    312  1. Update HowToDownload wiki with new latest stable api release links. [[br]][[br]] 
    313  1. Email the dev and users lists and announce the release containing: 
    314    * A link to the ''Release/x.y/Notes'' wiki  
    315    * A summary of the major features and bug fixes for the release 
    316  1. Write a 50 word summary of the release and send to news_item at osgeo dot org