This page is prepared for Mahout committers. You need committer rights to create a new Mahout release.
Start a discussion on mahout-dev about having a release, questions to bring up include:
For 7-14 days prior to the release target date, have a “code freeze” where committers agree to only commit things if they:
mvn clean test
~/.m2/settings.xml
in the <profiles>
section with:<profiles>
<profile>
<id>mahout_release</id>
<properties>
<gpg.keyname>1234BEEF</gpg.keyname>
<gpg.passphrase>YOUR_SIGNING_PASSCODE_HERE</gpg.passphrase>
<deploy.altRepository>mahout.releases::default::https://repository.apache.org/service/local/staging/deploy/maven2/</deploy.altRepository>
<username>USERNAME</username>
<deploy.url>https://repository.apache.org/service/local/staging/deploy/maven2/</deploy.url>
</properties>
</profile>
</profiles>
<servers>
section in ~/.m2/settings.xml
in order to upload artifacts (as the -Dusername=
-Dpassword=
didn’t work for gsingers for 0.8, but this did; n.b. it didn’t work for akm for the 0.13 release):<server>
<id>apache.releases.https</id>
<username>USERNAME</username>
<password>PASSWORD</password>
</server>
Create the release candidate: mvn -Pmahout-release,apache-release release:prepare release:perform
; to add credentials for source control use mvn -Dusername=myusername -Dpassword='mypassword' -Papache-release release:prepare release:perform
-Dusername=USERNAME -Dpassword=PASSWORD
mvn -Dmahout-release,apache-release release:rollback
mvn -Dmahout-release,apache-release release:clean
as this will likely save you time and do the right thing. You may also have to rollback the version numbers in the POM files.mvn -DpreparationGoals="clean compile" release:prepare release:perform
Call a VOTE on dev@mahout.apache.org. Votes require 3 days before passing. See Apache [release policy | http://www.apache.org/foundation/voting.html#ReleaseVotes] for more info. |
mvn -Pmahout-release,apache-release versions:set -DnewVersion=PREVIOUS_SNAPSHOT
mvn -Pmahout-release,apache-release versions:commit
git commit
git push --delete apache <tagname> (deletes the remote tag)
git tag -d tagname (deletes the local tag)
See also:
include info about [Voting | http://www.apache.org/foundation/voting.html#ReleaseVotes] |