Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

After our first release, it is useful to document the steps that the release manager made in order that later releases are more easily performed.

Preparation

  • Create a release tag in in Apache Jira
  • Make sure all issues tagged with the release are finished
  • Wiki Markup
    Is the correct version tag set in the pom.xml? - Should be "apache-esme-\[VERSION-NO\]-incubating"
  • Are the current developers in the pom-xml?
  • Are all the maven dependencies pointing to reproducible versions - not snapshots.
  • Are all the maven dependencies correctly licensed? Do a "mvn site" and check the licenses.
  • Are there any unused dependencies? Do a "mvn dependency:analyze" to check.
  • Update the CHANGES.TXT file based on the JIRA output for that release
  • Update the README.TXT if necessary
  • To upload the release on your private people.apache.org space, you must first create a directory "public_html" with a subdirectory "esme". The signed files go here.

Signing Preparation

In order to sign the release, you must first create a private PGP key.

Look here for details

Cutting a release

  1. do a svn update to an empty directory
  2. delete or rename your .m2/repository directory
  3. Is the release able to be compiled?: do a "mvn compile. There should be no errors.
  4. Are all tests successful? do a "mvn test". There should be no tests that fail
  5. Is the release runnable? Do a "mvn jetty:run". Can you start ESME and perform the basic tests (List missing)
  6. Wiki Markup
    Tag the the release via SVN. The tag should be called "apache-esme-\[VERSION-NO\]-incubating"
  7. Use SVN export on the SVN tagged directory to create a directory of files that doesn't include any SVN-related files.
  8. Wiki Markup
    Create a tar file based on that directory. Gzip that file. The file should be named apache-esme-\[VERSION-NO\]-incubating.src.tar.gz". Once other types of files (war, etc) are released, then other tar file names may be necessary

Testing the release

  1. Unpack the tar file in an empty directory
  2. Remove the maven .m2/repository
  3. Attempt to build ESME with a "mvn test jetty:run"

Signing the release

Perform the following steps (here using gpg on a Windows box)

...

output apache-esme-1-0-0-incubating.src.tar.gz.asc:
----BEGIN PGP SIGNATURE----
Version: GnuPG v1.4.10 (MingW32)
iQIcBAABCgAGBQJLfAHAAAoJEItBUOZvrPkXfeQP/ie7n1axfF5xBb/HbtatCUzW
TbYIznhhLZ4xq1bitxA5clSveUnH7O8oRsEmCUBbzday90qHhZUzkVEspr30DB/5
j9Tx2+Ov09lShX+L24rKGeL9ReZ5YbiuSxh7WmaESlnSnP3J5NMsG7Um+v2ICyhb
NM1HUO7P1D5Xn9LZragOS0dt9VRAEb6h38rbBarRrFjKADf9gLqdkXmv7NgIWWwI
AFSJKzUATShT6u4sRJDlauSB0VS8NGfV4F+10OKsmIIHbMyDyTt01chr4KCXcjnf
siGHABBPBDUytjx648ohiXJPtmyovBTcqWtn3RF/dneSSCwibKgCGbJQgPCaWxvR
uh14gLTdSt2c4VMs0reychMh/fGfAumuPDL2voS+AHc1QCALRiePnqgfxVwW40nP
olQP5EPJpVr7vmOrOD29WgxEAlTqDsKLgTAkXAi1sPHpiHapDwu5PalaIMcmw8CS
ZBj39pdKFLUQkxgPU08nS/2n6BUcRkNpH6e4ngfQIltSaYN501CUrqi3nLMwx006
3zgTxm/ob6E6z13djolix2w0GQE6hkKDwesCj6K1h/sWp7y9rYiqIqS5A3WO+jAz
yij43gkNYzPnjr8Dz8mJM53FWWA+kQvF8E1iesIdTk1s5IaUno9ipqFSHv6wf1TQ
PfkCUjE05RyhSY3lDAmY
=Y4I/
----END PGP SIGNATURE----
apache-esme-1-0-0-incubating.src.tar.gz.sha
apache-esme-1-0-0-incubating.src.tar.gz:
771A97EB 34FD26C1 D431E4EA D7D4FC4C 3971DB42 F50B0B66 C32D601F 70D450FB 06F73667
 8E118141 5A83C40A 84C1ABDF 808551DC 10949049 1962C634 FFBFAE69
apache-esme-1-0-0-incubating.src.tar.gz.md5
apache-esme-1-0-0-incubating.src.tar.gz:
8E 43 0D DF F8 FE 15 9B  22 47 C2 C0 CC 30 21 2C

Uploading the release candidate to your private space

  1. Use a pstp to load the files to your private area in the directory "public_html/esme"
  2. The following files should be present:
    • KEYS
    • apache-esme-1-0-0-incubating.src.tar.gz
    • apache-esme-1-0-0-incubating.src.tar.gz.asc
    • apache-esme-1-0-0-incubating.src.tar.gz.md5
    • apache-esme-1-0-0-incubating.src.tar.gz.sha

Putting the Release Candidate to the first vote on esme-dev

  1. create a vote post on the esme-dev mailing list. The post should have the following format:

    Wiki Markup
     *Subject*: _\[VOTE\] Approve the release of apache-esme-incubating-1.0_

    Contents:

    Hi,I have posted our candidate for the first Apache release developed
    within the ESME podling.

    This is my second attempt at this release. I've now added the correct
    licensing for the files in the "esme-java-client" directory

    The candidate can be found at

    http://people.apache.org/~rhirsch/esme/

    See the CHANGES.txt file for details on release contents. The release
    candidate is a tar archive of the sources inhttps://svn.apache.org/repos/asf/incubator/esme/tags/esme-1.0-incubating/

    The MD5 checksum of the apache-esme-incubating-1.0-src.tar.gz release package is
    A4 9B 04 07 47 66 41 0C FE 01 2D 8B 5C 23 33 18

    Please vote on releasing this package as Apache ESME 1.0-incubating.
    The vote is open for the next 72 hours and passes if
    a majority of at least three +1 ESME PPMC votes is reached. Assuming
    the vote passes, I will ask the Incubator PMC to approve the release.

    Wiki Markup
    \[ \] \+1 Release this package as Apache ESME 1.0-incubating
    \[ \] \-1 Do not release this package because...

    Here's my +1.

    Thanks in advance for your patience with me as manager of this release.

    Dick Hirsch

    2. After 72 hours after the vote, count the votes and create a post with the following contents:

Wiki Markup
*Subject*: \[VOTE\]\[RESULT\] ESME 1.0

Contents:

Hello All,

Voting on the ESME 1.0 candidate release has concluded

Results:

6 binding +1 vote

Dick Hirsch +1
Mrinal Wadhwa +1
Vassil Dichev +1
Ethan Jewett +1
Anne Kathrine Petteroe +1
Darren Hague +1

1 non-binding +1 votes

Daniel Koller +1

Putting the Release Candidate to the second vote on general mailing list

This email should go to the esme-dev and general mailing lists and have the following contents:
Subject: VOTE Approve the release of apache-esme-incubating-1.0
Contents:

The ESME community has voted on and approved the release of ESME 1.0.
We would now like to request the approval of the Incubator PMC for
this release.

Details of the ESME community vote can be found here: http://mail-archives.apache.org/mod_mbox/incubator-esme-dev/201002.mbox/%3Cfa2d9f451002120649u54cdd8b5red151033d655b66a@mail.gmail.com%3EImage Added

The candidate can be found at:

http://people.apache.org/~rhirsch/esme/Image Added

See the CHANGES.txt file for details on release contents. The release
candidate is a tar archive of the sources in https://svn.apache.org/repos/asf/incubator/esme/tags/esme-1.0-incubating/Image Added

The MD5 checksum of the apache-esme-incubating-1.0-
src.tar.gz release package is
A4 9B 04 07 47 66 41 0C FE 01 2D 8B 5C 23 33 18

Please vote on releasing this package as Apache ESME 1.0-incubating.

Please vote to publish this release by Thursday, Feb 18 16:03 CET,
please include the testing you performed to arrive at your vote
[ ] +1 Publish
[ ] 0 Abstain
[ ] -1 Don't publish, because...

Below is a summary of the vote on the ESME mailing list

Thanks

Dick

---------------

Sender-time Sent at 4:00 PM (GMT+01:00). Current time there: 4:04 PM. ✆
to esme-dev@incubator.apache.org
date Mon, Feb 15, 2010 at 4:00 PM
subject VOTERESULT ESME 1.0
mailed-by gmail.com

Hello All,

Voting on the ESME 1.0 candidate release has concluded

Results:

6 binding +1 vote

Dick Hirsch +1
Mrinal Wadhwa +1
Vassil Dichev +1
Ethan Jewett +1
Anne Kathrine Petteroe +1
Darren Hague +1

1 non-binding +1 votes

Daniel Koller +1