You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2013/06/21 14:25:15 UTC

svn commit: r1495408 - /commons/sandbox/commons-staging-plugin/trunk/pom.xml

Author: sebb
Date: Fri Jun 21 12:25:15 2013
New Revision: 1495408

URL: http://svn.apache.org/r1495408
Log:
Tidy up

Modified:
    commons/sandbox/commons-staging-plugin/trunk/pom.xml

Modified: commons/sandbox/commons-staging-plugin/trunk/pom.xml
URL: http://svn.apache.org/viewvc/commons/sandbox/commons-staging-plugin/trunk/pom.xml?rev=1495408&r1=1495407&r2=1495408&view=diff
==============================================================================
--- commons/sandbox/commons-staging-plugin/trunk/pom.xml (original)
+++ commons/sandbox/commons-staging-plugin/trunk/pom.xml Fri Jun 21 12:25:15 2013
@@ -18,7 +18,7 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
-  
+
   <parent>
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-parent</artifactId>
@@ -27,9 +27,9 @@
  
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-staging-plugin</artifactId>
-  <packaging>maven-plugin</packaging>
   <version>1.0-SNAPSHOT</version>
-  <name>Apache commons-staging-plugin Maven Mojo</name>
+  <name>Apache Commons Staging Maven Mojo</name>
+  <packaging>maven-plugin</packaging>
   <inceptionYear>2013</inceptionYear>
   <url>http://commons.apache.org/proper/commons-staging-plugin/</url>
 
@@ -45,9 +45,9 @@
   </issueManagement>
 
   <scm>
-      <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/commons-staging-plugin/trunk/</connection>
-      <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/commons-staging-plugin/trunk/</developerConnection>
-      <url>http://svn.apache.org/viewvc/commons/proper/commons-staging-plugin/trunk/</url>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/commons-staging-plugin/trunk/</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/commons-staging-plugin/trunk/</developerConnection>
+    <url>http://svn.apache.org/viewvc/commons/proper/commons-staging-plugin/trunk/</url>
   </scm>
 
   <prerequisites>
@@ -59,26 +59,57 @@
     <mavenPluginPluginVersion>3.2</mavenPluginPluginVersion>
     <maven.compiler.source>1.5</maven.compiler.source>
     <maven.compiler.target>1.5</maven.compiler.target>
+    <commons.release.version>1.0</commons.release.version>
+    <commons.componentid>commons-gpg-plugin</commons.componentid>
+    <commons.rc.version>RC1</commons.rc.version>
+    <commons.release.desc>(Requires Maven ${mavenVersion} or later)</commons.release.desc>
     <!-- Avoid problems with jar & osgi builds in CP -->
     <commons.manifestfile />
     <!-- Temporary fix until CP31 is released -->
     <maven.compile.source>${maven.compiler.source}</maven.compile.source>
     <maven.compile.target>${maven.compiler.target}</maven.compile.target>
+    <!-- This should move to parent pom -->
+    <commons.packages.directory>target/packages</commons.packages.directory>
   </properties>
 
   <dependencies>
-    <!-- for our own help Mojo -->
-    <dependency>
-      <groupId>org.apache.maven.plugins</groupId>
-      <artifactId>maven-help-plugin</artifactId>
-      <version>2.2</version>
-    </dependency>
     <dependency>
       <groupId>commons-codec</groupId>
       <artifactId>commons-codec</artifactId>
       <!-- 1.6 only requres Java 1.5 -->
       <version>1.6</version>
     </dependency>
+
+    <!-- TBA why needed -->
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+      <version>3.0.7</version>
+    </dependency>
+    <!-- needed to fetch login credentials from settings.xml -->
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-container-default</artifactId>
+      <version>1.0-alpha-9</version>
+      <scope>provided</scope>
+    </dependency>
+    <!-- needed to decode login credentials from settings.xml -->
+    <dependency>
+      <groupId>org.sonatype.plexus</groupId>
+      <artifactId>plexus-sec-dispatcher</artifactId>
+      <version>1.4</version>
+      <scope>provided</scope>
+    </dependency>
+
+    <!-- Following dependencies are for building/running Mojos -->
+
+    <!-- for our own help Mojo -->
+    <dependency>
+      <groupId>org.apache.maven.plugins</groupId>
+      <artifactId>maven-help-plugin</artifactId>
+      <version>2.2</version>
+    </dependency>
+    <!-- needed ? -->
     <dependency>
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-core</artifactId>
@@ -100,11 +131,13 @@
         </exclusion>
       </exclusions>
     </dependency>
+    <!-- needed ? -->
     <dependency>
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-artifact</artifactId>
       <version>${mavenVersion}</version>
     </dependency>
+    <!-- needed ? -->
     <dependency>
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-model</artifactId>
@@ -114,23 +147,8 @@
       <groupId>org.apache.maven.plugin-tools</groupId>
       <artifactId>maven-plugin-annotations</artifactId>
       <version>${mavenPluginPluginVersion}</version>
-      <scope>provided</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-utils</artifactId>
-      <version>3.0.7</version>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-container-default</artifactId>
-      <version>1.0-alpha-9</version>
-      <scope>provided</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.sonatype.plexus</groupId>
-      <artifactId>plexus-sec-dispatcher</artifactId>
-      <version>1.4</version>
+      <!-- annotations are not needed for plugin execution so you can remove this dependency
+           for execution with using provided scope -->
       <scope>provided</scope>
     </dependency>
   </dependencies>
@@ -146,39 +164,38 @@
             <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
           </configuration>
         </plugin>
+        <!-- This needs to be part of the parent pom -->
         <plugin>
-          <groupId>org.codehaus.plexus</groupId>
-          <artifactId>plexus-component-metadata</artifactId>
-          <version>1.5.5</version>
+          <groupId>org.apache.commons</groupId>
+          <artifactId>commons-staging-plugin</artifactId>
+          <!-- but with a specific version -->
+          <version>${project.version}</version>
         </plugin>
       </plugins>
     </pluginManagement>
 
     <plugins>
+      <!-- self reference to allow use with shortcut name -->
+      <plugin>
+        <groupId>org.apache.commons</groupId>
+        <artifactId>commons-staging-plugin</artifactId>
+        <version>${project.version}</version>
+      </plugin>
       <plugin>
         <artifactId>maven-assembly-plugin</artifactId>
         <configuration>
           <descriptors>
-            <descriptor>src/assembly/src.xml</descriptor>
+            <descriptor>src/main/assembly/bin.xml</descriptor>
+            <descriptor>src/main/assembly/src.xml</descriptor>
           </descriptors>
           <tarLongFileMode>gnu</tarLongFileMode>
         </configuration>
       </plugin>
       <plugin>
-        <groupId>org.codehaus.plexus</groupId>
-        <artifactId>plexus-component-metadata</artifactId>
-        <executions>
-          <execution>
-            <goals>
-              <goal>generate-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-plugin-plugin</artifactId>
         <configuration>
+          <!-- see http://jira.codehaus.org/browse/MNG-5346 -->
           <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
         </configuration>
         <executions>
@@ -188,7 +205,11 @@
               <goal>descriptor</goal>
             </goals>
           </execution>
-          <!-- We now use our own HelpMojo
+          <!-- The generated Mojo does not handle annotations properly,
+               and does not show any "User property" names.
+               Since this is misleading, it is better to drop the goal
+               The Maven Help plugin does show property names, so we create
+               our own Help Mojo that extends it.
           <execution>
             <id>generated-helpmojo</id>
             <goals>
@@ -238,51 +259,48 @@
             <stagingDirectory>${commons.release.name}-${commons.rc.version}</stagingDirectory>
             <releaseId>${commons.release.name}-${commons.rc.version}</releaseId>
             <releaseNotes>RELEASE-NOTES.txt</releaseNotes>
-            <!-- safe place for upload and release -->
+            <!-- safe place for upload and release testing -->
             <rootUrl>https://dist.apache.org/repos/dist/dev/commons/TEST_PLS_IGNORE/</rootUrl>
           </configuration>
         </plugin>
       </plugins>
     </pluginManagement>
     <plugins>
-        <plugin>
-          <groupId>org.apache.commons</groupId>
-          <artifactId>commons-gpg-plugin</artifactId>
-        </plugin>
-        <plugin>
-          <groupId>org.apache.commons</groupId>
-          <artifactId>commons-digest-plugin</artifactId>
-        </plugin>
-        <plugin>
-          <groupId>org.apache.commons</groupId>
-          <artifactId>commons-staging-plugin</artifactId>
-          </plugin>
+      <plugin>
+        <groupId>org.apache.commons</groupId>
+        <artifactId>commons-gpg-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.commons</groupId>
+        <artifactId>commons-digest-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.commons</groupId>
+        <artifactId>commons-staging-plugin</artifactId>
+      </plugin>
     </plugins>
-      </build>
+    </build>
     </profile>
 
+    <!-- This will eventually be merged into the parent pom -->
     <profile>
-      <id>release-test</id>
+      <id>release</id>
       <build>
         <plugins>
-        <plugin>
-          <artifactId>maven-assembly-plugin</artifactId>
-          <configuration>
-            <outputDirectory>${project.build.directory}/packages/</outputDirectory>
-            <attach>false</attach>
-          </configuration>
-        </plugin>
+          <!-- We want to create the assemblies in their own directory -->
           <plugin>
-           <groupId>org.apache.commons</groupId>
+            <artifactId>maven-assembly-plugin</artifactId>
+            <configuration>
+              <!-- Stop assemblies from being deployed to Nexus -->
+              <attach>false</attach>
+              <!-- put them here instead -->
+              <outputDirectory>${commons.packages.directory}</outputDirectory>
+            </configuration>
+          </plugin>
+          <!-- Create the signatures -->
+          <plugin>
+            <groupId>org.apache.commons</groupId>
             <artifactId>commons-gpg-plugin</artifactId>
-            <!-- Don't put this config in pluginManagement otherwise CLI use is harder -->
-          <configuration>
-              <includes>
-                <include>target/packages/*.zip</include>
-                <include>target/packages/*.tar.gz</include>
-              </includes>
-          </configuration>
-            <inherited>true</inherited>
             <executions>
               <execution>
                 <goals>
@@ -292,18 +310,24 @@
                 <phase>verify</phase>
               </execution>
             </executions>
+            <configuration>
+              <includes>
+                <include>${commons.packages.directory}/*.zip</include>
+                <include>${commons.packages.directory}/*.tar.gz</include>
+              </includes>
+            </configuration>
           </plugin>
+          <!-- create the hashes -->
           <plugin>
            <groupId>org.apache.commons</groupId>
             <artifactId>commons-digest-plugin</artifactId>
             <!-- Don't put this config in pluginManagement otherwise CLI use is harder -->
-          <configuration>
+            <configuration>
               <includes>
-                <include>target/packages/*.zip</include>
-                <include>target/packages/*.tar.gz</include>
+                <include>${commons.packages.directory}/*.zip</include>
+                <include>${commons.packages.directory}/*.tar.gz</include>
               </includes>
-          </configuration>
-            <inherited>true</inherited>
+            </configuration>
             <executions>
               <execution>
                 <goals>
@@ -314,8 +338,10 @@
               </execution>
             </executions>
           </plugin>
+          <!-- Now create the staging scripts-->
         </plugins>
       </build>
     </profile>
+
   </profiles>
 </project>