This page is a brain dump of the various items needed for a release.

DRAFT

Requirements

Preparation

svn co https://svn.apache.org/repos/asf/jmeter/trunk jmeter_v2_8_RC1
cd jmeter_v2_8_RC1
ant download_jars 
ant clean-docs
ant docs-site
ant docs-api -Djmeter.version=2.8
svn commit -m "Prepare next release 2.8: update docs tree and overview (RC1)"
svn update
svn copy -m "Tag for pre-release" . https://svn.apache.org/repos/asf/jmeter/tags/v2_8_RC1
svn switch https://svn.apache.org/repos/asf/jmeter/tags/v2_8_RC1
ant -Djmeter.version=2.8 -Duser.name=milamber@apache.org distribution

Generate Release

ant _dist_maven -Djmeter.version=2.8
ant sign_dist -Dgpg.keyname=0612B399 -Dgpg.secretKeyring=~/.gnupg/secring.gpg
ant maven_upload -Djmeter.version=2.8 -DrepoType=releases
cd dist/
java -jar $RAT_HOME/apache-rat-0.8.jar ./apache-jmeter-2.8.tgz > rat-report-jmeter-2.8RC1.txt
unix2dos rat-report-jmeter-2.8RC1.txt

Upload release artifacts to staging directory

JMeter releases are now published using svnpubsub.

For release votes, the files are uploaded to the dev/jmeter tree at https://dist.apache.org/repos/dist/dev/jmeter/

If the vote succeeds, they are renamed to the release directory at https://dist.apache.org/repos/dist/release/jmeter/ which is automatically published to the ASF mirror system.

ant RC_upload -DRC=RCn -DrepoType=live [-Dasf.ldap.password=secret [-Dasf.ldap.username=user] ]

The files should now be available under https://dist.apache.org/repos/dist/dev/jmeter/

Create docs branch

The site documentation now needs to be copied to the appropriate branch directory from the tag.
\[Note: if the vote fails, the branch will need to be removed and recreated\]

svn cp -m"Create docs branch" https://svn.apache.org/repos/asf/jmeter/tags/v2_8_RC1 https://svn.apache.org/repos/asf/jmeter/branches/docs-2.8/

The Javadocs are not yet part of SVN at this point. For simplicity when reviewing the release candidate, they should be added to the docs branch here:

svn import -m "Add Javadocs" docs/api https://svn.apache.org/repos/asf/jmeter/branches/docs-2.8/docs/api

It would be possible to add them directly to the live SVN directory later, but they need to be available for review, so it's easiest to create the branches/docs-m.n/docs tree as an exact copy of what will be released.

Checks to do before sending vote email

Vote on release

After VOTE success

svn copy https://svn.apache.org/repos/asf/jmeter/tags/v2_8_RC1 https://svn.apache.org/repos/asf/jmeter/tags/v2_8 -m "Vote succeeded, create the 2.8 tag"

Move RC dist files to release

This is done using svnmnucc. It moves the files from the staging director https://dist.apache.org/repos/dist/dev/jmeter/ to the live are at https://dist.apache.org/repos/dist/release/jmeter/

ant RC_publish -DRC=RCn -DrepoType=live [-Dasf.ldap.password=secret [-Dasf.ldap.username=user] ]

Update main distribution files

svn co --depth files  https://dist.apache.org/repos/dist/release/jmeter/ dist-jmeter
svn commit -m "JMeter 2.8 release - Prepare update site" dist-jmeter

Update JMeter site

This is now done using svnmucc. Create a script - for example "updatesite.txt" - containing the following:

rm
https://svn.apache.org/repos/asf/jmeter/site

cp
HEAD
https://svn.apache.org/repos/asf/jmeter/branches/docs-2.8/docs
https://svn.apache.org/repos/asf/jmeter/site

Change the /docs-2.8/ path segment above as appropriate!

Now use svnmucc to update the live site:

svnmucc -m "Create branch docs 2.8" -X updatesite.txt

The SvnPubSub system will update the live site within a few seconds.

Note: the branches/docs-m.n SVN tree is created from trunk when the release is created. Subsequent updates to trunk documents may not be appropriate to the current release - e.g. changes to test elements

Maven Release

Announce

Make sure: JMeter website is update AND download mirrors too.

svn commit -m "JMeter 2.8 release"

Tidy up

ant release_delete -Djmeter.old.version=2.7 -DrepoType=live [-Dasf.ldap.password=secret [-Dasf.ldap.usermame=user] ]