Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: [Original edit by JMeterAdmin] Initial update to allow for change to SvnPubSub. Needs more work.

...

  • a Java JDK in according with target JDK (java Java 5 for JMeter 2.8)
  • a recent ant Ant binary (1.8+)
  • subversion (svn) client installed; the command-line utility svnmucc is needed (it should be included in the svn client installation, but please check)
  • a text editor
  • hostname must resolve to ip address (not loopback)
  • Internet access

...

No Format
svn co https://svn.apache.org/repos/asf/jmeter/trunk jmeter_v2_8_RC1
  • Move to the new workspace:
No Format
cd jmeter_v2_8_RC1

...

No Format
ant _dist_maven -Djmeter.version=2.8
ant sign_dist -Dgpg.keyname=0612B399 -Dgpg.secretKeyring=~/.gnupg/secring.gpg
  • Upload Maven files to Maven repository:
No Format
ant maven_upload -Djmeter.version=2.8 -DrepoType=releases

...

No Format
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

Checks to do before

...

sending vote email

  • review RAT report
  • to do: add some checks (zip/tgz binary files vs src files, SVN tree vs SRC files, etc.)

Check: JMeter SVN tree vs JMeter archive sources

TODO: simplify this checking process and extend to Windows.

For JMeter sources, need a Linux box, SVN (apache) and GIT (local).

...

After all checks, you can remove the temporary directories.

Vote on release

  • Login to people.apache.org in SSH
  • Create temporary location to receive dist files
No Format

mkdir -p ~/jmeter_v2_8_RC1/dist/
  • From your computer, upload dist files and RAT report to the temporary location (e.g. personal dir: ~/jmeter_v2_8_RC1/dist/) in people.apache.org

cd ./dist/
scp apache-jmeter-2.8* minautor:/home/milamber/jmeter_v2_8_RC1/dist/
scp rat-report-jmeter-2.8RC1.txt minautor:/home/milamber/jmeter_v2_8_RC1/dist/

  • Return to people.apache.org
  • Preparation RC publishing

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.

No Format

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

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

Vote on release

*** This section is outdated ***

  • Install the site docs:
No Format

cd
No Format

mkdir -p ~/public_html/jmeter-2.8RC1/dist/
  • copy archives, sigs and hashes to dist
No Format

cp ~/jmeter_v2_8_RC1/dist/* ~/public_html/jmeter-2.8RC1/dist/
  • check hashes (before / after uploads)

MD5 checks (local)

...

/
svn export https://svn.apache.org/repos/asf/jmeter/tags/v2_8_RC1/docs docs
  • Extract Javadocs: unzip -x jmeter-m.n.o.zip '*/docs/api/*' and move to docs/api
    • Example:
No Format
cd /release_dir/dist
find . -name "*.md5" -exec cat {} \; -exec echo "" \;

Results (copy/paste to email vote):

No Format

98838d5dc4f2b735b522abc8425aec0d *$HOME
cp  ~/public_html/jmeter-2.8RC1/dist/apache-jmeter-2.8.tgz $HOME
tar xfz apache-jmeter-2.8.tgz
cd apache-jmeter-2.8_src.zip
9a1740e7828a4d25e439934974672b8b *apache-/docs/
mv api ~/public_html/jmeter-2.8.tgz
b5283a2099fe4186f8978a3ccfb4e8d6 *apache-jmeter-2.8_src.tgz
ca70cf7fdf8b98ded1dc0494bdc9de14 *8RC1/docs/api
cd $HOME
rm -r $HOME/apache-jmeter-2.8.zip

After upload on people.apache.org

Check MD5 sums on people.apache.org, with bash shell, check the md5 files sum vs files .md5 hashes.

No Format

cd ~/public_html/jmeter-2.8RC1/dist/

Copy/paste all lines in one time

No Format

LIST=`find . -regex ".*\.zip" -or -regex ".*\.tgz"`
for ARCHIVE in ${LIST} ;
do
      if test `awk '{ print $1 }' ${ARCHIVE}.md5` = `md5 -q ${ARCHIVE}`; then
          echo MD5 OK; 
      else 
          echo MD5 checksum KO; 
      fi;
done

Good results are:

No Format

MD5 OK
MD5 OK
MD5 OK
MD5 OK
  • Install the site docs:
No Format

cd ~/public_html/jmeter-2.8RC1/
svn export https://svn.apache.org/repos/asf/jmeter/tags/v2_8_RC1/docs docs
  • Extract Javadocs: unzip -x jmeter-m.n.o.zip '*/docs/api/*' and move to docs/api
    • Example:
No Format

cd $HOME
cp  ~/public_html/jmeter-2.8RC1/dist/apache-jmeter-2.8.tgz $HOME
tar xfz apache-jmeter-2.8.tgz
cd apache-jmeter-2.8/docs/
mv api ~/public_html/jmeter-2.8RC1/docs/api
cd $HOME
rm -r $HOME/apache-jmeter-2.8
  • Wiki Markup
    send round \[VOTE\] e-mail to dev
  • Wait for any feedback (at least 72 hours); address any issues raised, if necessary by creating another release tag
  • If at least 3 PMC votes, then continue

After VOTE success

  • Wiki Markup
    send round \[VOTE\] \[RESULT\] e-mail to same mailing lists
  • Copy the RC tag to the release tag
No Format

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

  • Connect to people.apache.org in SSH
  • Go to RC dist repository (e.g. personal dir)
No Format

cd ~/public_html/jmeter-2.8RC1/dist
  • Make sure that file group is set to jmeter (chgrp jmeter apache-jmeter*)
No Format

chgrp jmeter apache-jmeter*
chmod g+w apache-jmeter*
  • copy archives to /www/www.apache.org/dist/jmeter/binaries and /www/www.apache.org/dist/jmeter/source as appropriate
No Format

cp apache-jmeter-2.8_src* /www/www.apache.org/dist/jmeter/source
cp apache-jmeter-2.8.zip* /www/www.apache.org/dist/jmeter/binaries
cp apache-jmeter-2.8.tgz* /www/www.apache.org/dist/jmeter/binaries

...

  • Wiki Markup
    send round \[VOTE\] e-mail to dev
  • Wait for any feedback (at least 72 hours); address any issues raised, if necessary by creating another release tag
  • If at least 3 PMC votes, then continue

After VOTE success

  • Wiki Markup
    send round \[VOTE\] \[RESULT\] e-mail to same mailing lists
  • Copy the RC tag to the release tag
No Format

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/

No Format

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

Update main distribution files

  • Checkout the top-level of the live dist project on your computer:
No Format

svn co --depth files  https://dist.apache.org/repos/dist/release/jmeter/

...

Update Site dist

  • Checkout dist project on your computer
No Format

svn co  https://svn.apache.org/repos/asf/jmeter/dist dist-jmeter
  • Edit HEADER.html to modifiy with new version number
  • OptionalIf necessary, add your GPG public key to KEYS
  • Commit with svn
No Format
svn commit -m "JMeter 2.8 release - Prepare update site"
  • Login to people.apache.org in SSH
    • Go to dist dir:
No Format

cd /www/www.apache.org/dist/jmeter
  • Execute a svn update
No Format

svn update

Update JMeter site

dist-jmeter
  • wait a day or so for mirrors to catch up

Update JMeter site

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

No Format

rm
No Format

svn copy https://svn.apache.org/repos/asf/jmeter/tags/v2_8 https://svn.apache.org/repos/asf/jmeter/branches/docs-2.8  -m "Create branch docs 2.8" 
  • login to people.apache.org
  • Go to:
No Format

cd /www/jmeter.apache.org/

...

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

...

:

No Format
svn switch http://svn.apache.org/repos/asf/jmeter/branches/docs-2.8/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
    • Example:
No Format

cd /www/jmeter.apache.org/
rm -r /www/jmeter.apache.org/api
cd ~/public_html/jmeter-2.8RC1/docs
cp -R api /www/jmeter.apache.org
chmod -R g+w /www/jmeter.apache.org/api
  • N.B. wait for few hours so site updates catch up

Maven Release

  • Go to Apache Repository
  • Section Staging Repositories
  • You will receive a email with JMeter Maven Repo URLs
    • The main URL can be added to email announce

Announce

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

  • update Wiki version details
  • update doap_JMeter.rdf details in trunk and commit
      No Format
      
      svn commit -m "JMeter 2.8 release"
      
      • Wiki Markup
        send \[ANNOUNCE\] e-mail to user@jmeter.a.o, dev@jmeter.a.o
        • Double check all URL in email announce!
      • 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

      ...

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

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

      Maven Release

      • Go to Apache Repository
      • Section Staging Repositories
      • You will receive a email with JMeter Maven Repo URLs
        • The main URL can be added to email announce

      Announce

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

      • update Wiki version details
      • update doap_JMeter.rdf details in trunk and commit
          No Format
          
          svn commit -m "JMeter 2.8 release"
          
          • Wiki Markup
            send \[ANNOUNCE\] e-mail to user@jmeter.a.o, dev@jmeter.a.o
            • Double check all URL in email announce!
          • 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

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