You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 37 Next »

This page is a brain dump of the various items needed for a release. It needs some work...

Preparation

  • request Bugzilla version update (on https://issues.apache.org/jira/browse/INFRA or if you are JMeter committer, ask for sufficient Bugzilla karma to do this yourself)
  • ensure changes.xml is up to date
  • update JMeterVersion.java (version and year), build.xml (version and docversion) and NOTICE (year)
  • build site documents, having first cleaned out existing files (so obsolete files will be removed):
    • [clean-docs] then [docs-site]

  • update docs tree in SVN
  • build code
  • test
    • GUI and non-GUI using host with graphic capability
    • non-GUI only using host with no graphic capability
    • ideally test on minimum supported Java and latest Java - especially for GUI

Generate Release

  • tag all the files with a new RC tag, e.g. v2_5_1_RC1
  • 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 v2_5_1_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.
  • extract files from SVN using the tag into a new directory tree
  • download jars needed to build: "ant download_jars"
  • create distribution files:
    • ant distribution -lib=<libextra> -Djmeter.version=m.n -Duser.name=user-AT-apache.org
    • sign distribution files (gpg -ba file)
      • ex. gpg2 -u <id_key> -ba apache-jmeter-2.5.1_src.tgz
      • ex. gpg2 -u <id_key> -ba apache-jmeter-2.5.1_src.zip
      • ex. gpg2 -u <id_key> -ba apache-jmeter-2.5.1.tgz
      • ex. gpg2 -u <id_key> -ba apache-jmeter-2.5.1.zip
  • Generate RAT report (example on Linux with Java)
    • java -jar $RAT_HOME/apache-rat-0.7.jar ./apache-jmeter-2.5.1.tgz > rat-report-jmeter-2.5.1RC1.txt

Vote on release

  • upload to temporary location (e.g. personal dir)
    • cd public_html ; mkdir jmeter-m.n
    • cd jmeter-m.n
    • mkdir dist
    • copy archives, sigs and hashes to dist
    • check hashes (before / after uploads)
    • Install the site docs: svn co http://svn.apache.org/repos/asf/jmeter/tags/vm_nxx/docs
    • Extract Javadocs: unzip -x jmeter-m.n.o.zip '*/docs/api/*' and move to docs/api
  • send round [VOTE] e-mail to dev

  • Wait for any feedback; address any issues raised, if necessary by creating another release tag
  • If at least 3 PMC votes, then continue
  • send round [VOTE] [RESULT] e-mail to same mailing lists

  • Copy the RC tag to the release tag

Upload files

Update JMeter site

TBA - update of download page

  • login to people.apache.org
  • cd /www/jmeter.apache.org/
  • fetch site from SVN:
    • svn switch http://svn.apache.org/repos/asf/jmeter/tags/vm_n_o/docs
    • If the documentation needs to be updated between releases, create a branch docs-vm_n_o from the tag and switch to that
    • for later updates, use "svn switch" or "svn update" as appropriate (use svn info to find current setting)
    • The Javadocs are not in SVN so these need to be copied from the staging area
  • N.B. wait for few hours so site updates catch up

Announce

  • update Wiki version details
  • update doap_JMeter.rdf details in trunk
  • send [ANNOUNCE] e-mail to user@jmeter.a.o, dev@jmeter.a.o

  • also copy to announce AT ao (has to be sent from an ao e-mail address)
  • N.B. to track bounces and unsubscribes, it may be a good idea to use a separate mail to Announce

Tidy up

  • remove old archives from /www/www.apache.org/jmeter/dist
  • No labels