Release process.
Note: The first release candidate is rc0. The following documented process assumes rc0, but replace it with the appropriate rc number as required.
Checkout the release branch
git checkout branch-x.y.z
Create a Release Tag from the release branch
git tag -a release-x.y.z-rc0 -m 'Ambari x.y.z RC0' git push --tags origin
Create a tarball
# create a clean copy of the source cd ambari-git-x.y.z git clean -f -x -d cd .. cp -R ambari-git-x.y.z ambari-x.y.z # create ambari-web/public by running the build instructions per https://cwiki.apache.org/confluence/display/AMBARI/Ambari+Development # once ambari-web/public is created, copy it as ambari-web/public-static cp -R ambari-git-x.y.z/ambari-web/public ambari-x.y.z/ambari-web/public-static # make sure apache rat tool runs successfully cp -R ambari-x.y.z ambari-x.y.z-ratcheck cd ambari-x.y.z-ratcheck mvn clean apache-rat:check cd .. # if rat check fails, file JIRAs and fix them before proceeding. # tar it up, but exclude git artifacts tar --exclude=.git -zcvf ambari-x.y.z.tar.gz ambari-x.y.z
Sign the tarball
gpg2 --armor --output ambari-{release_number}.tar.gz.asc --detach-sig ambari-{release_number}.tar.gz
Generate MD5 checksums:
md5sum ambari-X.Y.Z.tar.gz > ambari-X.Y.Z.tar.gz.md5 sha1sum ambari-X.Y.Z.tar.gz > ambari-X.Y.Z.tar.gz.sha
or
openssl md5 ambari-X.Y.Z.tar.gz > ambari-X.Y.Z.tar.gz.md5 openssl sha1 ambari-X.Y.Z.tar.gz > ambari-X.Y.Z.tar.gz.sha
Upload the artifacts to your apache home:
The artifacts then need to be copied over to public_html/ambari-release-name-rc0/
Call for a vote on the dev@ambari.apache.org mailing list with something like this:
I have created an ambari-** release candidate.
GIT source tag (r***)
https://git-wip-us.apache.org/repos/asf/ambari/repo?p=ambari.git;a=log;h=refs/tags/release-x.y.z-rc0
Staging site: http://people.apache.org/user_name/ambari-***
PGP release keys (signed using 8EE2F25C) http://pgp.mit.edu:11371/pks/lookup?op=vindex&search=0x0DFF492D8EE2F25C
One can look into the issues fixed in this release at https://issues.apache.org/jira/**
Vote will be open for 72 hours.
[ ] +1 approve
[ ] +0 no opinion
[ ] -1 disapprove (and reason why)
Once the vote passes/fails, send out an email with subject like "[RESULT] [VOTE] Apache Ambari x.y.z rc0" to dev@ambari.apache.org. For the vote to pass, 3 +1 votes are required.
After the vote passes:
Verify your PGP key is provided to Apache. Apache verifies that distributions are correctly signed.
- Login to https://id.apache.org and verify the fingerprint of PGP key used to sign above is provided. (gpg --fingerprint)
- Upload your PGP public key only to /home/<user>/.pgpkey
Publish the release as below:
svn co https://dist.apache.org/repos/dist/release/ambari ambari cd ambari mkdir ambari-{release} scp ~/public_html/ambari-{release}/* ambari-{release_num} svn add ambari-{release_num} svn commit -m "Committing Release {release_num}"
Create the release tag:
git tag -a release-x.y.z -m 'Ambari x.y.z' git push --tags origin
Note that it takes 24 hours for the changes to propagate to the mirrors.
Wait 24 hours and verify that the bits are available in the mirrors before sending an announcement.
Update Ambari Website and Wiki
http://ambari.apache.org is checked in Git in /ambari/docs/src/site folder.
Make necessary changes and run mvn site to generate the public website under /ambari/docs/target folder.
Once content has been verified, copy contents of /ambari/docs/target into SVN repository location https://svn.apache.org/repos/asf/ambari/site and commit.
This should update the http://ambari.apache.org website.
Update the wiki to add pages for installation of the new version. Usually you can copy the pages for the last release and make the URL changes to point to new repo/tarball location.
Send out Announcement to dev@ambari.apache.org and user@ambari.apache.org.
Subject: [ANNOUNCE] Apache Ambari x.y.z.
The Apache Ambari team is proud to announce Apache Ambari version x.y.z
Apache Ambari is a tool for provisioning, managing, and monitoring Apache Hadoop clusters. Ambari consists of a set of RESTful APIs and browser-based management console UI.
The release bits are at: http://www.apache.org/dyn/closer.cgi/ambari/ambari-x.y.z.
To use the released bits please use the following documentation:
https://cwiki.apache.org/confluence/display/AMBARI/Installation+Guide+for+Ambari+x.y.z
We would like to thank all the contributors that made the release possible.
Regards,
The Ambari Team