You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by co...@apache.org on 2009/04/03 12:39:00 UTC
[CONF] Apache Lucene Mahout: How to release (page edited)
How to release (MAHOUT) edited by Grant Ingersoll
Page: http://cwiki.apache.org/confluence/display/MAHOUT/How+to+release
Changes: http://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=95353&originalVersion=8&revisedVersion=9
Content:
---------------------------------------------------------------------
This wiki page is under contruction, currently more or less a modified clone of the Solr HowToRelase page. More to come soon!
*This page is prepared for Mahout committers. You need committer rights to create a new Mahout release.*
h1. Release Planning
Start a discussion on mahout-dev about having a release, questions to bring up include:
* Any [unresolved Jira issues with the upcoming version number listed as the "Fix Version" | https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&&pid=12310751&fixfor=12312976&resolution=-1&sorter/field=issuekey&sorter/order=DESC]
* Any ["Fixed" Jira issues missing a "Fix Version" | https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&&pid=12310751&fixfor=-1&resolution=1&sorter/field=issuekey&sorter/order=DESC] that should be updated to indicate that there were fixed in this upcoming version?
* Does any documentation needs an updated? Any necessary notes on upgrading for CHANGES.txt?
* Who is going to be the "release engineer"?
* What day should be targeted for the release ? (leave buffer time for a code freeze and release candidate testing; make sure at least a few people commit to having time to help test the release candidates around the target date.)
h1. Code Freeze
For 7-14 days prior to the release target date, have a "code freeze" where committers agree to only commit things if they:
* Are documentation improvements (including fixes to eliminate Javadoc warnings)
* Are new test cases that improve test coverage
* Are bug fixes found because of improved test coverage
* Are new tests and bug fixes for new bugs encountered by manually testing
h1. Steps For Release Engineer
h2. Before building release
# Check that all tests pass after a clean compile: mvn clean test
# Double Check that there are no remaining unresolved Jira issues with the upcoming version number listed as the "Fix" version
# Double Check that there are no ["Fixed" Jira issues missing a "Fix Version" | https://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12312765] that should be marked as fixed in this release.
h2. Making a release
# Check if documentation needs an update, update release date in CHANGES.txt and add any necessary notes on upgrading.
# Update news in {{src/site/src/documentation/content/xdocs/index.xml}} and for main lucene.apache.org site stored at https://svn.apache.org/repos/asf/lucene/site/. The second change may require additional rights or patch submitted to the Lucene PMC
# Commit these changes.
'''Note:''' It is important to do this prior to the build so that it is reflected in the copy of the website included with the release for documentation purposes.
# If this is your first release, add your key to the KEYS file. The KEYS file is located in Subversion at [WWW] [WWW] https://svn.apache.org/repos/asf/lucene/mahout/trunk/KEYS and copy it to the release directory. Make sure you commit your change.
# Add a profile to your ~/.m2/settings.xml in the <profiles> section with:
{quote}
<profile>
<id>mahout_release</id>
<properties>
<gpg.passphrase>YOUR SIGNING PASSCODE HERE</gpg.passphrase>
<deploy.altRepository>mahout.releases::default::scp://people.apache.org/home/USERNAME/public_html/staging-repo/mahout</deploy.altRepository>
<username>USERNAME</username>
<deploy.url>scp://people.apache.org/home/USERNAME/public_html/staging-repo/mahout</deploy.url>
</properties>
</profile>
{quote}
# If this is the first release in a series (i.e. relase X.Y.0):
# Prepare the release (actually, will prepare a Release Candidate)
{{mvn -Dusername=USERNAME release:prepare}}
# Perform the release (copies the release candidate to staging area
{{mvn -Dusername=USERNAME release:perform}}
# IF it screws up, do not clean or release:clean without first trying to do: release:rollback. This will likely save you time and do the right thing. If it doesn't work, then do clean and release:clean and also delete the tag from svn, if it was created.
# Review the artifacts, etc. at scp://people.apache.org/home/USERNAME/public_html/staging-repo/mahout
# Ask others on mahout-dev to review the artifacts.
# Call a VOTE on mahout-dev@ and CC general@lucene.apache.org. Votes require 3 days before passing. See Apache [release policy|http://www.apache.org/foundation/voting.html#ReleaseVotes] for more info.
# If the vote passes, then copy the artifacts to the appropriate mirrors and repositories:
TODO: Double Check this
{quote}mvn stage:copy -Dsource="http://people.apache.org/~YOUR_APACHE_USERNAME/staging-repo/mahout" \
-Dtarget="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository" \
-Dversion=Y.Z \
-DtargetRepositoryId=apache.releases{quote}
# Copy the Assemblies (tar.gz, zip, tar.bz2) to the ASF mirrors. TODO: MORE NEEDED HERE. See [Guide To Distributing Existing Releases Through The ASF Mirrors|http://jakarta.apache.org/site/convert-to-mirror.html?Step-By-Step] and the links that are there.
# Wait 24 hours for release to propagate to mirrors.
# Deploy new Mahout site.
# Deploy new main Lucene site.
# Update Javadoc in {{people.apache.org:/www/lucene.apache.org/mahout/docs/api}}.
NOTE: skip this for now, as this javadoc is currently updated automatically from the nightly build
# Send announcements to the user and developer lists.
See also: http://maven.apache.org/developers/release/releasing.html
h2. Post Release
h3. Versioning
* Create the next version in Jira (if it doesn't already exist)
* Mark the version as "released" in Jira (noting the release date)
h3. Documentation
* Change wiki to match current best practices (remove/change deprecations, etc)
h3. Publicity
* update freshmeat
* !TheServerSide blurb
* blog away
h1. Related Resources
* http://www.apache.org/dev/#releases
* http://www.apache.org/dev/#mirror
h1. :TODO: Things To Cleanup in this document
*TODO*
* more info about the process (ie: stage the release candidate on people.apache.org, send email to mahout-dev seeking feedback, etc...)
* more specifics about things to test before starting or after packaging (RAT, run scripts against example, etc...)
* include info about [Voting | http://www.apache.org/foundation/voting.html#ReleaseVotes]
---------------------------------------------------------------------
CONFLUENCE INFORMATION
This message is automatically generated by Confluence
Unsubscribe or edit your notifications preferences
http://cwiki.apache.org/confluence/users/viewnotifications.action
If you think it was sent incorrectly contact one of the administrators
http://cwiki.apache.org/confluence/administrators.action
If you want more information on Confluence, or have a bug to report see
http://www.atlassian.com/software/confluence