You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2012/05/14 21:45:52 UTC

svn commit: r1338367 - in /maven/release/trunk/maven-release-manager/src: main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java test/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhaseTest.java

Author: rfscholte
Date: Mon May 14 19:45:51 2012
New Revision: 1338367

URL: http://svn.apache.org/viewvc?rev=1338367&view=rev
Log:
Fix MRELEASE-757: cannot perform a release with another pom then pom.xml

Modified:
    maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java
    maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhaseTest.java

Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java?rev=1338367&r1=1338366&r2=1338367&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java (original)
+++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java Mon May 14 19:45:51 2012
@@ -63,15 +63,22 @@ public class RunPerformGoalsPhase
                 additionalArguments = "-DperformRelease=true";
             }
         }
+        
+        String pomFileName = releaseDescriptor.getPomFileName();
+        if ( pomFileName == null )
+        {
+            pomFileName = "pom.xml";
+        }
 
         // ensure we don't use the release pom for the perform goals
+        // ^^ paranoia? A MavenExecutor has already access to this. Probably worth refactoring. 
         if ( !StringUtils.isEmpty( additionalArguments ) )
         {
-            additionalArguments = additionalArguments + " -f pom.xml";
+            additionalArguments = additionalArguments + " -f " + pomFileName;
         }
         else
         {
-            additionalArguments = "-f pom.xml";
+            additionalArguments = "-f " + pomFileName;
         }
 
         String workDir = releaseDescriptor.getWorkingDirectory();
@@ -80,11 +87,6 @@ public class RunPerformGoalsPhase
             workDir = System.getProperty( "user.dir" );
         }
 
-        String pomFileName = releaseDescriptor.getPomFileName();
-        if ( pomFileName == null )
-        {
-            pomFileName = "pom.xml";
-        }
 
         File pomFile = new File( workDir, pomFileName );
         PomFinder pomFinder = new PomFinder( getLogger() );

Modified: maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhaseTest.java?rev=1338367&r1=1338366&r2=1338367&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhaseTest.java (original)
+++ maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhaseTest.java Mon May 14 19:45:51 2012
@@ -102,4 +102,29 @@ public class RunPerformGoalsPhaseTest
         verifyNoMoreInteractions( mock );
     }
 
+    public void testCustomPomFile() throws Exception
+    {
+        //prepare
+        File testFile = getTestFile( "target/checkout-directory" );
+        ReleaseDescriptor config = new ReleaseDescriptor();
+        config.setPerformGoals( "goal1 goal2" );
+        config.setPomFileName( "pom1.xml" );
+        config.setCheckoutDirectory( testFile.getAbsolutePath() );
+        
+        MavenExecutor mock = mock( MavenExecutor.class );
+        
+        phase.setMavenExecutor(ReleaseEnvironment.DEFAULT_MAVEN_EXECUTOR_ID, mock );
+        
+        phase.execute( config, (Settings) null, (List<MavenProject>) null );
+        
+        verify( mock ).executeGoals( eq( testFile ),
+                                     eq( "goal1 goal2" ),
+                                     isA( ReleaseEnvironment.class ),
+                                     eq( true ),
+                                     eq( "-DperformRelease=true -f pom1.xml" ),
+                                     eq( "pom1.xml" ),
+                                     isA( ReleaseResult.class ) );
+        
+        verifyNoMoreInteractions( mock );
+    }
 }