Index: src/docbkx/developer.xml
===================================================================
--- src/docbkx/developer.xml (revision 1295690)
+++ src/docbkx/developer.xml (working copy)
@@ -142,10 +142,70 @@
Publishing Maven Artifacts.
The 'trick' to making it all work is answering the questions put to you by the mvn release plugin properly,
making sure it is using the actual branch AND before doing the mvn release:perform step,
- VERY IMPORTANT, hand edit the release.properties file that was put under ${HBASE_HOME}
+ VERY IMPORTANT, check and if necessary hand edit the release.properties file that was put under ${HBASE_HOME}
by the previous step, release:perform. You need to edit it to make it point at
right locations in SVN.
+ Use maven 3.0.x.
+
+ At the mvn release:perform step, before starting, if you are for example
+ releasing hbase 0.92.0, you need to make sure the pom.xml version is 0.92.0-SNAPSHOT. This needs
+ to be checked in. Since we do the maven release after actual release, I've been doing this
+ checkin into a particular tag rather than into the actual release tag. So, say we released
+ hbase 0.92.0 and now we want to do the release to the maven repository, in svn, the 0.92.0
+ release will be tagged 0.92.0. Making the maven release, copy the 0.92.0 tag to 0.92.0mvn.
+ Check out this tag and change the version therein and commit.
+
+ Here is how I'd answer the questions at release:prepare time:
+ What is the release version for "HBase"? (org.apache.hbase:hbase) 0.92.0: :
+What is SCM release tag or label for "HBase"? (org.apache.hbase:hbase) hbase-0.92.0: : 0.92.0mvnrelease
+What is the new development version for "HBase"? (org.apache.hbase:hbase) 0.92.1-SNAPSHOT: :
+[INFO] Transforming 'HBase'...
+
+ A strange issue I ran into was the one where the upload into the apache
+ repository was being sprayed across multiple apache machines making it so I could
+ not release. See INFRA-4482 Why is my upload to mvn spread across multiple repositories?.
+ Here is my ~/.m2/settings.xml.
+ <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
+ http://maven.apache.org/xsd/settings-1.0.0.xsd">
+ <servers>
+ <!- To publish a snapshot of some part of Maven -->
+ <server>
+ <id>apache.snapshots.https</id>
+ <username>YOUR_APACHE_ID
+ </username>
+ <password>YOUR_APACHE_PASSWORD
+ </password>
+ </server>
+ <!-- To publish a website using Maven -->
+ <!-- To stage a release of some part of Maven -->
+ <server>
+ <id>apache.releases.https</id>
+ <username>YOUR_APACHE_ID
+ </username>
+ <password>YOUR_APACHE_PASSWORD
+ </password>
+ </server>
+ </servers>
+ <profiles>
+ <profile>
+ <id>apache-release</id>
+ <properties>
+ <gpg.keyname>YOUR_KEYNAME</gpg.keyname>
+ <!--Keyname is something like this ... 00A5F21E... do gpg --list-keys to find it-->
+ <gpg.passphrase>YOUR_KEY_PASSWORD
+ </gpg.passphrase>
+ </properties>
+ </profile>
+ </profiles>
+</settings>
+
+
+ When you run release:perform, pass -Dapache-release
+ else it will not 'sign' the artifacts it uploads.
+ If you see run into the below, its because you need to edit version in the pom.xml and add
-SNAPSHOT to the version (and commit).
[INFO] Scanning for projects...
@@ -168,6 +228,7 @@
[INFO] -----------------------------------------------------------------------
+
Build GotchasIf you see Unable to find resource 'VM_global_library.vm', ignore it.
Its not an error. It is officially ugly though.
Index: pom.xml
===================================================================
--- pom.xml (revision 1295690)
+++ pom.xml (working copy)
@@ -325,6 +325,20 @@
+ org.apache.maven.plugins
+ maven-release-plugin
+ ${maven-release.version}
+
+
+ -Dmaven.test.skip
+
+
+ maven-compiler-plugin${compileSource}