Creating the Tag

Prerequisites:

1) Remove any vestigal references to org.apache.maven.plugins maven-pluto-plugin. This was caused by an incorrect <groupId> that appeared a while back in the Pluto POM. Once you remove these references, they shouldn't come back:

  • Delete this directory: ~/.m2/repository/org/apache/maven/plugins/maven-pluto-plugin
  • Remove any reference to pluto-maven-plugin in ~/.m2/repository/org/apache/maven/plugins/maven-metadata-local.xml
  • Make sure the following is in settings.xml in ~/.m2/repository:
      <pluginGroups>
           <pluginGroup>org.apache.pluto</pluginGroup>
      </pluginGroups>

The Maven 2 release plugin is used to create the tag. The Maven 2 assembly plugin is used to create the binary and source distributions.

(warning) TODO: fix paths

With Maven 2, creating the tag and creating the distributions occur at the same time. When the release plugin is run, be sure to activate the assembly profile (using -Passembly,build-assemblies on the command line). When the assembly and build-assemblies profiles are activated, the distributions will be generated in assembly/target/assembly/out.

The release plugin will (not in this exact order, but close):

  • Check to make sure you don't have any uncommitted changes in your working copy.
  • Check to make sure you have an up-to-date working copy.
  • Check to make sure you don't have any dependencies on any SNAPSHOT artifacts.
  • Prompt you for the version you are releasing (e.g. if trunk is 1.1.0-SNAPSHOT, you are releasing 1.1.0).
  • Prompt you for the next version in the development cycle (e.g. if you are releasing 1.1.0 then the next version is probably 1.1.1-SNAPSHOT).
  • Update the POM's with the proper version numbers.
  • Create the tag in SVN.
  • Build the distributions (as long as the assembly profile is activated)
  • Run mvn deploy and mvn site-deploy
  1. Make sure you have an up-to-date copy of trunk checked out, and that you don't have any pending changes.
svn up
svn st

2. Run mvn -Passembly,build-assemblies release:prepare

3. Run mvn -Passembly release:perform

You should see your new tag appear under tags. You should see a commit that look something like:

esm@clue:~$ svn log https://svn.apache.org/repos/asf/portals/pluto/tags --limit 1
------------------------------------------------------------------------
r506076 | esm | 2007-02-11 12:29:23 -0500 (Sun, 11 Feb 2007) | 1 line

[maven-scm] copy for tag pluto-1.1.0
------------------------------------------------------------------------

4. Binaries will be in assembly/target/assembly/out

  • No labels