Differences between revisions 14 and 15
Revision 14 as of 2015-05-22 06:59:29
Size: 4915
Comment: Added a few first-time release engineer TODO items
Revision 15 as of 2015-10-12 13:27:30
Size: 5025
Comment: Added instructions to upload javadocs after release
Deletions are marked like this. Additions are marked like this.
Line 132: Line 132:
  * Upload new javadocs to http://metamodel.staging.apache.org/apidocs. Generate with mvn javadoc:aggregate.

Release Guide

Here you will find a collection of notes and instructions on doing a release of Apache MetaModel. The page is largely written by Release Engineers (RE) as a note document while conducting releases based on the links below:

Useful links:

NOTE: This page is still in construction

First time release engineer TODO list:

Release steps:

Check the CHANGES.md file - it should be up to date and it should refer to the version number that you're about to release.

Set <server> elements in Maven's settings.xml

<!-- To publish a snapshot of some part of Maven -->
<!-- To stage a release of some part of Maven -->

Stage release:

> mvn clean
> mvn release:prepare -Dusername=APACHE_USERNAME -Dpassword=APACHE_PASSWORD
> mvn release:perform -Dusername=APACHE_USERNAME -Dpassword=APACHE_PASSWORD

Sometimes the last command (release:perform) will not work the first time since inter-dependencies cannot be found during build. To fix, follow these commands:

> cd target/checkout
> mvn install -Dmaven.test.skip=true
> cd ../..
> mvn clean release:perform -Dusername=APACHE_USERNAME -Dpassword=APACHE_PASSWORD

Go to nexus (https://repository.apache.org), log in and select the repo. Close it.

Now call for a VOTE in the MetaModel dev@ mailing list. Here's an example email you can use as a template:

Subject: [VOTE] Apache Metamodel release 4.3.1

Hi All,

Please vote on releasing the following candidate as Apache Metamodel version 4.3.1.

The Git tag to be voted on is MetaModel-4.3.1:

The source artifact to be voted on is:

Parent directory (including MD5, SHA1 hashes etc.) of the source is:

Release artifacts are signed with the following key:

Release engineer public key id: 1FE1C2F5

The staging Maven repository for this release can be found at:

Please vote on releasing this package as Apache MetaModel 4.3.1.

The vote is open for 72 hours.

[ ] +1 Release this package as Apache MetaModel 4.3.1
[ ] -1 Do not release this package because ...

Thank you in advance for participating.

Kasper Sørensen

Once the voting period has passed, send out a RESULT email with the vote results.

Subject: [RESULT] [VOTE] Release Apache Metamodel 4.3.1

Hi everyone,

I'm happy to be able to tell that the VOTE for releasing Apache MetaModel 4.3.1 has passed with 5 votes (3 binding).

Ankit Kumar
Arvind Prabhakar *
Henry Saputra * 
Justin Mclean *
Kasper Sørensen

* - indicates PMC

Thank you to everyone who participated.

Best regards,

Finalize the release


  • Release on Nexus
    • Simply re-enter nexus and click the "Release" button.
  • Upload to dist.apache.org
    • Create 'packaged' and 'source' versions. Packaged version needs manually a GPG signature (.asc) file as well as md5 and sha1 hashes.
      • On windows, use FCIV for hashing, gpg4win to easily sign the file
      • gpg -a -b MetaModel-[version]-packaged.zip

  • Wait for download mirrors to be in sync (up to 24 hours)
  • Update website
  • (Optionally / less important) update the DOAP file in the git repo root (doap_MetaModel.rdf).

ReleaseGuide (last edited 2015-10-12 13:27:30 by KasperSorensen)