You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by jd...@apache.org on 2008/08/29 07:14:53 UTC

svn commit: r690104 - /geronimo/genesis/trunk/pom.xml

Author: jdillon
Date: Thu Aug 28 22:14:53 2008
New Revision: 690104

URL: http://svn.apache.org/viewvc?rev=690104&view=rev
Log:
Some order change, gmaven first to validate profile
Added release.stageRequired to force -Drelease=stage to be used

Modified:
    geronimo/genesis/trunk/pom.xml

Modified: geronimo/genesis/trunk/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/genesis/trunk/pom.xml?rev=690104&r1=690103&r2=690104&view=diff
==============================================================================
--- geronimo/genesis/trunk/pom.xml (original)
+++ geronimo/genesis/trunk/pom.xml Thu Aug 28 22:14:53 2008
@@ -117,7 +117,6 @@
                 <artifactId>gmaven-plugin</artifactId>
                 <executions>
                     <execution>
-                        <id>check-coniguration</id>
                         <phase>validate</phase>
                         <goals>
                             <goal>execute</goal>
@@ -163,10 +162,6 @@
     TODO: Add default distributionManagement muck.
     -->
     
-    <!--
-    TODO: Add shunt to prevent non-staged releases via some property in settings for apache projects.
-    -->
-    
     <profiles>
         <profile>
             <id>release</id>
@@ -178,33 +173,24 @@
             <build>
                 <plugins>
                     <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-release-plugin</artifactId>
-                        <configuration>
-                            <autoVersionSubmodules>true</autoVersionSubmodules>
-                            <allowTimestampedSnapshots>false</allowTimestampedSnapshots>
-                            <useReleaseProfile>false</useReleaseProfile>
-                            <arguments>-Drelease</arguments>
-                            <preparationGoals>clean verify -Dit</preparationGoals>
-                            <goals>deploy</goals>
-                        </configuration>
-                    </plugin>
-                    
-                    <plugin>
                         <groupId>org.codehaus.groovy.maven</groupId>
                         <artifactId>gmaven-plugin</artifactId>
                         <executions>
                             <execution>
-                                <id>check-passphrase</id>
                                 <phase>validate</phase>
                                 <goals>
                                     <goal>execute</goal>
                                 </goals>
                                 <configuration>
-                                    <!--
-                                    Make sure that we have a configured GPG passphrase.
-                                    -->
                                     <source>
+                                        // Optionally prevent non-staged releases for projects
+                                        if (project.properties['release.stageRequired']) {
+                                            if (project.properties['release'] != 'stage') {
+                                                fail('Release requires staging; use -Drelease=stage')
+                                            }
+                                        }
+                                        
+                                        // Make sure that we have a configured GPG passphrase
                                         def phrase = project.properties['release.passphrase']
                                         if (phrase == null || phrase.trim() == '') {
                                             fail('Missing required property: release.passphrase')
@@ -217,6 +203,19 @@
                     
                     <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-release-plugin</artifactId>
+                        <configuration>
+                            <autoVersionSubmodules>true</autoVersionSubmodules>
+                            <allowTimestampedSnapshots>false</allowTimestampedSnapshots>
+                            <useReleaseProfile>false</useReleaseProfile>
+                            <arguments>-Drelease</arguments>
+                            <preparationGoals>clean verify -Dit</preparationGoals>
+                            <goals>deploy</goals>
+                        </configuration>
+                    </plugin>
+                    
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
                         <artifactId>maven-gpg-plugin</artifactId>
                         <executions>
                             <execution>
@@ -252,29 +251,18 @@
             <build>
                 <plugins>
                     <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-release-plugin</artifactId>
-                        <configuration>
-                            <arguments>-Drelease=stage</arguments>
-                        </configuration>
-                    </plugin>
-                    
-                    <plugin>
                         <groupId>org.codehaus.groovy.maven</groupId>
                         <artifactId>gmaven-plugin</artifactId>
                         <executions>
                             <execution>
-                                <id>check-deploy-url</id>
                                 <phase>validate</phase>
                                 <goals>
                                     <goal>execute</goal>
                                 </goals>
                                 <configuration>
-                                    <!--
-                                    Make sure that we have a valid stage deployment URL configured,
-                                    and that the URL is parsable (ie. not a file reference, which won't work
-                                    -->
                                     <source>
+                                        // Make sure that we have a valid stage deployment URL configured,
+                                        // and that the URL is parsable (ie. not a file reference, which won't work
                                         def url = project.properties['release.stageDeployUrl']
                                         if (url == null || url.trim() == '') {
                                             fail('Missing required property: release.stageDeployUrl')
@@ -293,6 +281,14 @@
                     
                     <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-release-plugin</artifactId>
+                        <configuration>
+                            <arguments>-Drelease=stage</arguments>
+                        </configuration>
+                    </plugin>
+                    
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
                         <artifactId>maven-deploy-plugin</artifactId>
                         <configuration>
                             <altDeploymentRepository>stage-deploy::default::${release.stageDeployUrl}</altDeploymentRepository>