Building a release major release¶
n.m n = major release number, m = minor release number
Add your key to the KEYS file in the repo
Checkout The Source¶
svn checkout https://svn.apache.org/repos/asf/river/jtsk/trunk river
Pre release checks¶
- River-trunk should run successful.
- River-verify should run successful. (not yet?)
Gather Release Notes From Jira¶
First manage the versions of River using Jira. Make sure there is an appropriate release that Jira issues are have been assigned to. You can then view the Roadmap screen in Jira to create the release and make sure that the correct Jira issues are associated to it.
Move the Jira issues around appropriately, especially if you're releasing before all the issues have been resolves. In this case, you need to postpone the remaining issues until a later release.
You can then use Jira to generate the release notes. This is done Road Map --> Release --> Summary --> Release Notes (next to "Filters").
The release notes need to be pasted into;
Update Version Numbers¶
There are version numbers in the following places that need to be updated with the new release number/name.
- com.sun.jini.constants.VersionConstants.java (SERVER_VERSION)
- river/trunk/src-doc/static/release-notes/index.html (version number)
In the above HTML page, there is also a section on "changes by component" which should also be updated. This should be easy to do by referring to the Jira-generated release notes.
Branch the repository¶
svn cp https://svn.apache.org/repos/asf/river/jtsk/trunk https://svn.apache.org/repos/asf/river/jtsk/branches/$VERSION
Tag the repository¶
svn cp https://svn.apache.org/repos/asf/river/jtsk/trunk https://svn.apache.org/repos/asf/river/jtsk/tags/$VERSION
Build the release products¶
ant -Dversion=$VERSION clean release
Sign the release¶
- General Apache Signing Details
- Release Signing Instructions *See code below, link has a typo in it
cd dist for f in $( ls ); do gpg --armor --output $f.asc --detach-sign $f gpg --print-md SHA512 $f > $f.sha done;
Test the release¶
cp dist/apache-river-$VERSION.tar.gz $SOMEWHERE_ELSE cd $SOMEWHERE_ELSE tar xvf apache-river-$VERSION.tar.gz cd apache-river-$VERSION ant build
Upload the release¶
scp RAT* email@example.com:~/public_html/river/ cd dist scp * firstname.lastname@example.org:~/public_html/river/
Allow the community to evaluate the release products¶
* announce availability of candidate on river-dev. * start [VOTE] thread.
Publish release on website¶
- checkout the site
- Extract the javadocs from the release archive into ...
- go to the CMS webclient, and publish the site.