Neat :-) One comment below ... On Wed, Dec 17, 2008 at 4:48 AM, Apache Wiki <wikidi...@apache.org> wrote: > Dear Wiki user, > > You have subscribed to a wiki page or wiki category on "Commons Wiki" for > change notification. > > The following page has been changed by SiegfriedGoeschl: > http://wiki.apache.org/commons/CreatingReleases > > ------------------------------------------------------------------------------ > * The Apache {{{m2-snapshot-repository}}} if a SNAPSHOT version is used (to > permit easy testing of RCs by community, for instance) > * A staging repository under {{{p.a.o/builds/commons/{component.id}/}}} if > a final version is used > > + === A. Maven Setup === > + > + ==== A.1 Maven Server Settings ==== > + > + It is a good idea to check your ''settings.xml'' that it contains the > corresponding server entries for the repositories and websites defined in the > commons parent pom. If you have a different user name on your box than on > ''people.apache.org'' you local user name will be used for authentication. > Therefore the authentication will fail and after a few retries your are > locked out from ''people.apache.org'' for a day - which in turn makes cutting > a release rather lengthy. In theory you could also provide your password in > the server section below but this unsafe and did not work in my case. > + > + {{{ > + <servers> > + <server> > + <id>apache.releases</id> > + <username>YOUR_APACHE_USERNAME</username> > + <filePermissions>664</filePermissions> > + <directoryPermissions>775</directoryPermissions> > + </server> > + <server> > + <id>apache.website</id> > + <username>YOUR_APACHE_USERNAME</username> > + <filePermissions>664</filePermissions> > + <directoryPermissions>775</directoryPermissions> > + </server> > + <server> > + <id>apache.snapshots</id> > + <username>YOUR_APACHE_USERNAME</username> > + <filePermissions>664</filePermissions> > + <directoryPermissions>775</directoryPermissions> > + </server> > + </servers> > + }}} > + > - === A. Release prep === > + === B. Release prep === > > - Including preparing the POM(s) -- see above. > + ==== B.1 Check Your POM ===== > + > + * Make sure that you are not referencing any SNAPSHOT version otherwise > the release will fail > + * Make sure that you update your ''changes.xml'' to reflect your release > + * Make sure that all your files contain a <snip/>
Please complete the above sentence, or remove it entirely. -Rahul > + > + ==== B.2 Prepare Your Maven Variables ==== > + > + During the staging process a directory is created on ''people.apache.org'' > based on the content of the following Maven variables > + > + * commons.release.version is a duplicate of the pom version > + * commons.rc.version is the current number of your release candidate > + > + That could look like the following snippet taken from ''commons-exec'' > + > + {{{ > + <properties> > + <commons.release.version>1.0.0</commons.release.version> > + <commons.rc.version>RC2</commons.rc.version> > + </properties> > + }}} > + > + ==== B.3 Define Staging Site for Release Candidate ==== > > Also ensure that the {{{rc}}} profile will stage the site (rather than > update the Commons component website). See bottom of > [http://svn.apache.org/repos/asf/commons/proper/scxml/trunk/pom.xml Commons > SCXML POM] as an example. See > [http://issues.apache.org/jira/browse/COMMONSSITE-26 COMMONSSITE-26] for > background. > > + {{{ > + <profiles> > + <profile> > + <id>rc</id> > + <distributionManagement> > + <!-- Cannot define in parent ATM, see COMMONSSITE-26 --> > + <site> > + <id>apache.website</id> > + <name>Apache Commons Release Candidate Staging Site</name> > <url>${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site</url> > + </site> > + </distributionManagement> > + </profile> > + </profiles> > + > + }}} > + > - === B. Stage artifacts and site === > + === C. Stage artifacts and site === > > 1. {{{mvn -Prc release:prepare}}} > > @@ -54, +121 @@ > > > === C. Vote === > > - If vote fails, undo and redo previous steps as appropriate (make sure SVN > tag is deleted before recreating). > + ==== C.1 Send Out The Vote ==== > + > + Below you find a vote template to save you some time ... > + > + {{{ > + Tag: > + > + > https://svn.apache.org/repos/asf/commons/proper/YOUR_PROJECT/tags/${commons.rc.version} > + > + Site: > + > + > http://people.apache.org/builds/commons/YOUR_PROJECT/${commons.release.version}/${commons.rc.version}/site/index.html > + > + Binaries: > + > + > http://people.apache.org/builds/commons/YOUR_PROJECT/${commons.release.version}/${commons.rc.version}/staged/commons-exec/commons-exec/${commons.release.version}/ > + > + [ ] +1 release it > + [ ] +0 go ahead I don't care > + [ ] -1 no, do not release it because > + > + }}} > + > + ==== C.2 React on the Vote ==== > + > + If vote fails, undo and redo previous steps as appropriate (make sure SVN > tag is deleted before recreating). And rest assured that most releases need > more than one release candidate ... :-) > > === D. Go live === > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org