Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: [Original edit by Milamber] Update the version with 3.2 (next release with Java 8)

...

  • request Bugzilla version update (on INFRA or if you are JMeter committer, ask for sufficient Bugzilla karma to do this yourself)
  • ensure changes.xml is up to date. If necessary, commit after update.
  • ensure unit tests pass
  • do not update the version in build.xml yet; trunk should remain a SNAPSHOT
  • check out SVN trunk into a clean workspace, for example (assuming current trunk is 3.2.8-SNAPSHOT in preparation for releasing 3.2.8):
No Format
svn co https://svn.apache.org/repos/asf/jmeter/trunk jmeter_v2v3_82_RC1
  • Move to the new workspace:
No Format
cd jmeter_v2v3_82_RC1
  • update the version / year in the new workspace: JMeterVersion.java (version and year) and NOTICE (year)
    • ./src/core/org/apache/jmeter/util/JMeterVersion.java:
      • section: private static final String VERSION = "3.2.8";
      • section: private static final String COPYRIGHT = "Copyright (c) 1998-2012 2016 The Apache Software Foundation";
    • ./NOTICE:
      • section: Copyright 1998-2012 2016 The Apache Software Foundation
  • update xdocs/download_jmeter.xml to the new version
    • section: <!ENTITY release '3.2.8'>
  • Download external jars
No Format
ant download_jars 

...

No Format
ant clean-docs
ant docs-site
ant docs-api -Djmeter.version=3.2.8
  • check if you need to add some new files or remove some deleted files from docs directory (using svn status command)

...

No Format
svn commit -m "Prepare next release 3.2.8: update docs tree and overview (RC1)"

...

  • edit now the version for build.xml (remove -SNAPSHOT)
    • ./build.xml:
      • section: <property name="jmeter.version" value="3.2.8"/>
  • create the new RC tag, e.g. v2v3_82_RC1 from the workspace
No Format
svn copy -m "Tag for pre-release" . https://svn.apache.org/repos/asf/jmeter/tags/v2v3_82_RC1
  • this will create the tag from the contents of the workspace. Only the updated files will be shown in the commit message; most files will be shown as being copied from trunk.
    • N.B. Tags must be immutable, i.e. must not be changed once created. A tag can be deleted if it is no longer needed, but must not be recreated.
      • If there is a problem with the contents of an RC tag, create a new tag, for example v2v3_82_RC2
      • If the tag is part of an ongoing release vote, do not delete it whilst the vote is ongoing, even if the vote is now using a later tag. It can be useful to be able to compare the contents of tags as part of the voting process.
      • Once the release vote is over, intermediate tags are no longer needed, and can be deleted.
      • If the tag has not been used in a release vote, it can be deleted immediately.

...

No Format
svn switch https://svn.apache.org/repos/asf/jmeter/tags/v2v3_82_RC1
  • build code to make a testing binary with this ant task:
No Format
ant -Djmeter.version=3.2.8 -Duser.name=milamber@apache.org distribution

...

  • If tests are ok, from the workspace jmeter_v2v3_82_RC1
    • (no need to fetch the tag again, as we already have a clean workspace)
  • sign distribution files and maven files via ant tasks:
No Format
ant _dist_maven -Djmeter.version=3.2.8
ant sign_dist -Dgpg.keyname=0612B399 -Dgpg.secretKeyring=~/.gnupg/secring.gpg

...

No Format
ant maven_upload -Djmeter.version=3.2.8 -DrepoType=releases
  • Go to Apache Repository
    • Section Staging Repositories
    • You will receive a email with JMeter Maven Repo URLs
      • The main URL must be added to email vote.
  • Generate RAT report (example on Linux with Java)
No Format
cd dist/
java -jar $RAT_HOME/apache-rat-0.812.jar ./apache-jmeter-3.2.8.tgz > rat-report-jmeter-23.8RC12RC1.txt
unix2dos rat-report-jmeter-23.8RC12RC1.txt

Upload release artifacts to staging directory

...

No Format
svn cp -m"Create docs branch" https://svn.apache.org/repos/asf/jmeter/tags/v2v3_82_RC1 https://svn.apache.org/repos/asf/jmeter/branches/docs-3.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:

No Format
svn import -m "Add Javadocs" docs/api https://svn.apache.org/repos/asf/jmeter/branches/docs-3.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.

...

No Format
svn copy https://svn.apache.org/repos/asf/jmeter/tags/v2v3_82_RC1 https://svn.apache.org/repos/asf/jmeter/tags/v2v3_82 -m "Vote succeeded, create the 3.2.8 tag"

Move RC dist files to release

...

No Format
svn commit -m "JMeter 3.2.8 release - Prepare update site" dist-jmeter

...

...

No Format
svn commit -m "JMeter 3.2.8 release"

Update JMeter site

...

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

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

cp HEAD
https://svn.apache.org/repos/asf/jmeter/doap/doap_JMeter.rdf
https://svn.apache.org/repos/asf/jmeter/site/doap_JMeter.rdf

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

...

No Format
svnmucc -m "Update website for the new release JMeter 3.2.8" -X updatesite.txt

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

...

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