New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Changeset 80730


Ignore:
Timestamp:
07/16/11 08:05:53 (4 years ago)
Author:
jmr@…
Message:

update examples in ReleaseProcess to use more recent versions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/base/portmgr/ReleaseProcess

    r79583 r80730  
    3232=== Create a Release Branch === 
    3333 
    34 For each major release (i.e. 1.5.x, 1.6.x, etc.) an appropriate branch is created with a 
     34For each major release (i.e. 1.9.x, 2.0.x, etc.) an appropriate branch is created with a 
    3535consistent name. To do this, two things are required: 
    3636 
    3737 * Choose the svn revision from which to create the branch, most likely based off trunk. 
    38  * Create the branch (e.g. release_1_6) through the svn "copy" command for history preservation, 
     38 * Create the branch (e.g. release_2_0) through the svn "copy" command for history preservation, 
    3939   first creating the needed branch directory to preserve the required directory structure 
    4040   (the 'base' directory level *needs* to exist in each release branch, otherwise selfupdate breaks): 
    4141 
    42  svn mkdir -m "commit-message" https://svn.macports.org/repository/macports/branches/release_1_6 
     42 svn mkdir -m "commit-message" https://svn.macports.org/repository/macports/branches/release_2_0 
    4343 svn cp [-r<rev>] -m "commit-message" https://svn.macports.org/repository/macports/trunk/base \ 
    44      https://svn.macports.org/repository/macports/branches/release_1_6 
     44     https://svn.macports.org/repository/macports/branches/release_2_0 
    4545 
    4646The actual release, alpha or beta releases, release candidates, and any point releases will all 
     
    8282Tagging conventions: 
    8383 
    84  * release_1_6_0-rc1 (release candidate 1 for release 1.6.0) 
    85  * release_1_6_0 (tagged release 1.6.0) 
    86  * release_1_6_0-archive (tagged release 1.6.0 -- complete archive) 
    87  * release_1_6_1 (1.6.1 release) 
     84 * release_2_0_0-beta2 (beta 2 for release 2.0.0) 
     85 * release_2_0_0-rc1 (release candidate 1 for release 2.0.0) 
     86 * release_2_0_0 (tagged release 2.0.0) 
     87 * release_2_0_0-archive (tagged release 2.0.0 -- complete archive) 
     88 * release_2_0_1 (2.0.1 release) 
    8889 
    8990We first tag the branched base directory to make up the final release: 
    9091 
    91  svn cp -m "commit-message" https://svn.macports.org/repository/macports/branches/release_1_6 \ 
    92      https://svn.macports.org/repository/macports/tags/release_1_6_0 
     92 svn cp -m "commit-message" https://svn.macports.org/repository/macports/branches/release_2_0 \ 
     93     https://svn.macports.org/repository/macports/tags/release_2_0_0 
    9394 
    9495Although only the base subdirectory is branched and tagged for a given major release, we also create a 
    9596separate tag for the entire tree (base sources and full ports tree) at the time the final release tag is 
    96 created (only for major releases, 1.x.0), in order to provide a stake in the ground that specifies a set 
     97created (only for major releases, x.y.0), in order to provide a stake in the ground that specifies a set 
    9798of ports intended to work with that release. Note that this tag incorporates the entire svn trunk directory 
    9899at the revision number at which the final release was tagged. 
     
    102103tag URL. For instance: 
    103104 
    104  svn co [-r<rev>] https://svn.macports.org/repository/macports/trunk release_1.6.0-archive 
    105  cd release_1.6.0-archive/base 
    106  svn switch https://svn.macports.org/repository/macports/tags/release_1_6_0/base 
    107  
    108 And finally we tag the entire directory as release_1_6_0-archive: 
     105 svn co [-r<rev>] https://svn.macports.org/repository/macports/trunk release_2.0.0-archive 
     106 cd release_2.0.0-archive/base 
     107 svn switch https://svn.macports.org/repository/macports/tags/release_2_0_0/base 
     108 
     109And finally we tag the entire directory as release_2_0_0-archive: 
    109110 
    110111 cd ../../ 
    111  svn cp -m "commit-message" release_1.6.0-archive https://svn.macports.org/repository/macports/tags/release_1_6_0-archive 
     112 svn cp -m "commit-message" release_2.0.0-archive https://svn.macports.org/repository/macports/tags/release_2_0_0-archive 
    112113 
    113114 
     
    117118for a particular release. They are named with the following naming convention: 
    118119 
    119  MacPorts-1.6.0.tar.{bz2,gz} (base directory only, corresponding to tag release_1_6_0) 
    120  MacPorts-1.6.0-archive.tar.{bz2,gz} (complete archives corresponding to tag release_1_6_0-archive) 
     120 MacPorts-2.0.0.tar.{bz2,gz} (base directory only, corresponding to tag release_2_0_0) 
     121 MacPorts-2.0.0-archive.tar.{bz2,gz} (complete archives corresponding to tag release_2_0_0-archive) 
    121122 
    122123The following commands issued to the top level Makefile will generate all the tarballs and checksums: 
    123124 
    124  make ARC=yes DISTVER=1.6.0 distfromsvn 
     125 make ARC=yes DISTVER=2.0.0 distfromsvn 
    125126 
    126127Note that if you omit the "ARC=yes" flag at the start of the make call then the full archive tarballs will not be produced. 
     
    132133for each of the files: 
    133134 
    134  MacPorts-1.6.0.chk.txt 
     135 MacPorts-2.0.0.chk.txt 
    135136 (We should have a way to sign these checksums, and have the signer's keys posted somewhere. 
    136137 Security experts in the project, would you be interested in leading this effort? Eric? Mark? Anyone else?) 
     
    140141 
    141142The dmg is a Mac OS X disk image that contains a standalone installer, configured in the usual way, for major 
    142 MacPorts releases (1.x.0), named in a consistent fashion and incorporating the OS version for which it 
     143MacPorts releases (x.y.0), named in a consistent fashion and incorporating the OS version for which it 
    143144was built. 
    144145 
    145  MacPorts-1.6.0-10.4-Tiger.dmg 
    146  MacPorts-1.6.0-10.5-Leopard.dmg 
     146 MacPorts-2.0.0-10.5-Leopard.dmg 
     147 MacPorts-2.0.0-10.6-SnowLeopard.dmg 
     148 MacPorts-2.0.0-10.7-Lion.dmg 
    147149 
    148150To create a disk image, use the MacPorts port. The Portfile will need to be updated to incorporate the 
     
    157159 
    158160 cd work 
    159  mv MacPorts-1.6.0.dmg MacPorts-1.6.0-10.5-Leopard.dmg 
    160  for dmg in MacPorts-1.6.0-*.dmg; do for type in -md5 -sha1 -ripemd160 -sha256; do openssl dgst $type $dmg; done >> MacPorts-1.6.0.chk.txt; done 
     161 mv MacPorts-2.0.0.dmg MacPorts-2.0.0-10.6-SnowLeopard.dmg 
     162 for dmg in MacPorts-2.0.0-*.dmg; do for type in -md5 -sha1 -ripemd160 -sha256; do openssl dgst $type $dmg; done >> MacPorts-2.0.0.chk.txt; done 
    161163 
    162164These new products, along with the new checksums, also have to be posted to the appropriate 
     
    208210=== Update trunk's version for next release === 
    209211Once trunk is to be used for development of the next major version, increase its version information to 
    210 indicate it's moved past the release version by setting the patch-level version to 99, e.g., 1.8.99 (in 
     212indicate it's moved past the release version by setting the patch-level version to 99, e.g. 2.0.99 (in 
    211213trunk/base/config/macports_version). 
    212214 
Note: See TracChangeset for help on using the changeset viewer.