maven-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From br...@apache.org
Subject svn commit: r398960 - in /maven/plugins/trunk/maven-release-plugin/src: main/java/org/apache/maven/plugins/release/ main/java/org/apache/maven/plugins/release/exec/ main/java/org/apache/maven/plugins/release/phase/ test/java/org/apache/maven/plugins/re...
Date Tue, 02 May 2006 15:17:25 GMT
Author: brett
Date: Tue May  2 08:16:53 2006
New Revision: 398960

URL: http://svn.apache.org/viewcvs?rev=398960&view=rev
Log:
[MRELEASE-98] clean up some items, add pom execution configurability

Modified:
    maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/DefaultReleaseManager.java
    maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
    maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutor.java
    maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/MavenExecutor.java
    maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/CheckPomPhase.java
    maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/ScmCheckModificationsPhase.java
    maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutorTest.java

Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/DefaultReleaseManager.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/DefaultReleaseManager.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/DefaultReleaseManager.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/DefaultReleaseManager.java
Tue May  2 08:16:53 2006
@@ -206,54 +206,9 @@
             throw new ReleaseScmCommandException( "Unable to checkout from SCM", result );
         }
 
-/* TODO [!]
-        if ( StringUtils.isEmpty( releasePom ) )
-        {
-            File pomFile = project.getFile();
-
-            releasePom = pomFile.getName();
-        }
-
-        if ( releasePom.equals( Maven.RELEASE_POMv4 ) && interactive )
-        {
-            StringBuffer warning = new StringBuffer();
-            warning.append( "\n*******************************************************************************\n"
);
-            warning.append( "\nYou have chosen to use the fully resolved release-POM to deploy
this project." );
-            warning.append( "\n" );
-            warning.append( "\nNOTE: Deploying artifacts using the fully resolved release-POM
" );
-            warning.append( "\nwill result in loss of any version ranges specified for your"
);
-            warning.append( "\nproject's dependencies." );
-            warning.append( "\n" );
-            warning.append( "\nAre you sure you want to do this?" );
-            warning.append( "\n" );
-            warning.append( "\n*******************************************************************************\n"
);
-
-            getLog().warn( warning );
-
-            getLog().info( "Enter the POM filename to use for deployment: [" + releasePom
+ "] " );
-
-            try
-            {
-                String input = getInputHandler().readLine();
-
-                if ( !StringUtils.isEmpty( input ) )
-                {
-                    releasePom = input;
-                }
-            }
-            catch ( IOException e )
-            {
-                throw new MojoExecutionException( "An error has occurred while reading the
pom file location.", e );
-            }
-        }
-
-        getLog().info( "Releasing project based on POM: " + releasePom + " in working directory:
" + checkoutDirectory );
-
-        cl.createArgument().setLine( "-f " + releasePom );
-*/
         try
         {
-            mavenExecutor.executeGoals( checkoutDirectory, goals, config.isInteractive(),
+            mavenExecutor.executeGoals( checkoutDirectory, goals, config.isInteractive(),
config.getPomFileName(),
                                         config.getAdditionalArguments() );
         }
         catch ( MavenExecutorException e )

Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
Tue May  2 08:16:53 2006
@@ -105,7 +105,6 @@
         config.setUseEditMode( useEditMode );
         // TODO [!]: prep goals not configurable
         // TODO [!]: resume not configured
-        // TODO: move to abstract?
 
         try
         {

Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutor.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutor.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutor.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutor.java
Tue May  2 08:16:53 2006
@@ -42,7 +42,8 @@
     /**
      * @noinspection UseOfSystemOutOrSystemErr
      */
-    public void executeGoals( File workingDirectory, String goals, boolean interactive, String
arguments )
+    public void executeGoals( File workingDirectory, String goals, boolean interactive, String
pomFileName,
+                              String additionalArguments )
         throws MavenExecutorException
     {
         Commandline cl = commandLineFactory.createCommandLine( "mvn" );
@@ -51,6 +52,11 @@
 
         cl.addEnvironment( "MAVEN_TERMINATE_CMD", "on" );
 
+        if ( pomFileName != null )
+        {
+            cl.createArgument().setLine( "-f " + pomFileName );
+        }
+
         if ( goals != null )
         {
             // accept both space and comma, so the old way still work
@@ -69,9 +75,9 @@
             cl.createArgument().setValue( "--batch-mode" );
         }
 
-        if ( !StringUtils.isEmpty( arguments ) )
+        if ( !StringUtils.isEmpty( additionalArguments ) )
         {
-            cl.createArgument().setLine( arguments );
+            cl.createArgument().setLine( additionalArguments );
         }
 
         /* TODO [!]
@@ -121,7 +127,7 @@
     public void executeGoals( File workingDirectory, String goals, boolean interactive )
         throws MavenExecutorException
     {
-        executeGoals( workingDirectory, goals, interactive, null );
+        executeGoals( workingDirectory, goals, interactive, null, null );
     }
 
     public void setCommandLineFactory( CommandLineFactory commandLineFactory )

Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/MavenExecutor.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/MavenExecutor.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/MavenExecutor.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/exec/MavenExecutor.java
Tue May  2 08:16:53 2006
@@ -33,13 +33,15 @@
     /**
      * Execute goals using Maven.
      *
-     * @param workingDirectory the directory to execute in
-     * @param goals            the goals to run (space delimited)
-     * @param interactive      whether to execute in interactive mode, or the default batch
mode
-     * @param arguments        the arguments to pass to the executable (space delimited)
+     * @param workingDirectory    the directory to execute in
+     * @param goals               the goals to run (space delimited)
+     * @param interactive         whether to execute in interactive mode, or the default
batch mode
+     * @param pomFileName         the file name of the POM to execute on
+     * @param additionalArguments additional arguments to pass to the Maven command
      * @throws MavenExecutorException if an error occurred executing Maven
      */
-    void executeGoals( File workingDirectory, String goals, boolean interactive, String arguments
)
+    void executeGoals( File workingDirectory, String goals, boolean interactive, String pomFileName,
+                       String additionalArguments )
         throws MavenExecutorException;
 
     /**

Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/CheckPomPhase.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/CheckPomPhase.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/CheckPomPhase.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/CheckPomPhase.java
Tue May  2 08:16:53 2006
@@ -36,12 +36,27 @@
     public void execute( ReleaseConfiguration releaseConfiguration )
         throws ReleaseExecutionException
     {
-        // TODO [!]: SCM URL is coming from the store but it probably needs to be read from
every project instead
-        // TODO [!]: prepare release mojo needs to set this correct to either connection
or developerConnection as appropriate - new version doesn't handle it
+        // Currently, we don't deal with multiple SCM locations in a multiproject
         if ( StringUtils.isEmpty( releaseConfiguration.getUrl() ) )
         {
-            throw new ReleaseExecutionException(
-                "Missing required setting: scm connection or developerConnection must be
specified." );
+            MavenProject rootProject = (MavenProject) releaseConfiguration.getReactorProjects().get(
0 );
+            if ( rootProject != null && rootProject.getScm() != null )
+            {
+                if ( rootProject.getScm().getDeveloperConnection() != null )
+                {
+                    releaseConfiguration.setUrl( rootProject.getScm().getDeveloperConnection()
);
+                }
+                else if ( rootProject.getScm().getConnection() != null )
+                {
+                    releaseConfiguration.setUrl( rootProject.getScm().getConnection() );
+                }
+            }
+
+            if ( StringUtils.isEmpty( releaseConfiguration.getUrl() ) )
+            {
+                throw new ReleaseExecutionException(
+                    "Missing required setting: scm connection or developerConnection must
be specified." );
+            }
         }
 
         List reactorProjects = releaseConfiguration.getReactorProjects();

Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/ScmCheckModificationsPhase.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/ScmCheckModificationsPhase.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/ScmCheckModificationsPhase.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/ScmCheckModificationsPhase.java
Tue May  2 08:16:53 2006
@@ -54,7 +54,7 @@
     /**
      * The files to exclude from the status check.
      *
-     * @todo proper construction of filenames, especially release properties
+     * @todo [!] proper construction of filenames, especially release properties
      */
     private Set excludedFiles = new HashSet( Arrays.asList(
         new String[]{"pom.xml", "pom.xml.backup", "pom.xml.tag", "pom.xml.next", "release.properties"}
) );

Modified: maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutorTest.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutorTest.java?rev=398960&r1=398959&r2=398960&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutorTest.java
(original)
+++ maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/exec/ForkedMavenExecutorTest.java
Tue May  2 08:16:53 2006
@@ -89,7 +89,7 @@
 
         executor.setCommandLineFactory( (CommandLineFactory) mock.proxy() );
 
-        executor.executeGoals( workingDirectory, "clean integration-test", false, arguments
);
+        executor.executeGoals( workingDirectory, "clean integration-test", false, null, arguments
);
 
         assertTrue( true );
     }



Mime
View raw message