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 + + ==== 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