You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ep...@apache.org on 2006/09/20 10:23:22 UTC

svn commit: r448121 - in /maven/continuum/branches/release-integration/continuum: ./ continuum-release/src/main/java/org/apache/maven/continuum/release/executors/ continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ continuum-w...

Author: epunzalan
Date: Wed Sep 20 01:23:21 2006
New Revision: 448121

URL: http://svn.apache.org/viewvc?view=rev&rev=448121
Log:
bug fix on empty release results appearing and some other minor bugs

Modified:
    maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PerformReleaseTaskExecutor.java
    maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PrepareReleaseTaskExecutor.java
    maven/continuum/branches/release-integration/continuum/continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ReleaseTaskExecutorTest.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PrepareReleaseAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/performRelease.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/viewReleaseResult.jsp
    maven/continuum/branches/release-integration/continuum/pom.xml

Modified: maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PerformReleaseTaskExecutor.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PerformReleaseTaskExecutor.java?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PerformReleaseTaskExecutor.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PerformReleaseTaskExecutor.java Wed Sep 20 01:23:21 2006
@@ -38,6 +38,8 @@
     {
         PerformReleaseProjectTask performTask = (PerformReleaseProjectTask) task;
 
+        ReleaseManagerListener listener = performTask.getListener();
+
         ReleaseDescriptor descriptor = performTask.getDescriptor();
 
         Settings settings;
@@ -47,6 +49,14 @@
         }
         catch ( ContinuumReleaseException e )
         {
+            ReleaseResult result = new ReleaseResult();
+
+            result.appendError( e );
+
+            continuumReleaseManager.getReleaseResults().put( performTask.getReleaseId(), result );
+
+            listener.error( e.getMessage() );
+
             throw new TaskExecutionException( "Failed to build reactor projects.", e );
         }
 
@@ -57,11 +67,17 @@
         }
         catch ( ContinuumReleaseException e )
         {
+            ReleaseResult result = new ReleaseResult();
+
+            result.appendError( e );
+
+            continuumReleaseManager.getReleaseResults().put( performTask.getReleaseId(), result );
+
+            listener.error( e.getMessage() );
+
             throw new TaskExecutionException( "Failed to build reactor projects.", e );
         }
 
-        ReleaseManagerListener listener = performTask.getListener();
-
         ReleaseResult result =
             releasePluginManager.performWithResult( descriptor, settings, reactorProjects,
                                                     performTask.getBuildDirectory(), performTask.getGoals(),
@@ -69,9 +85,9 @@
 
         if ( result.getResultCode() == ReleaseResult.SUCCESS )
         {
-            continuumReleaseManager.getReleaseResults().put( performTask.getReleaseId(), result );
-
             continuumReleaseManager.getPreparedReleases().remove( performTask.getReleaseId() );
         }
+
+        continuumReleaseManager.getReleaseResults().put( performTask.getReleaseId(), result );
     }
 }

Modified: maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PrepareReleaseTaskExecutor.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PrepareReleaseTaskExecutor.java?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PrepareReleaseTaskExecutor.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-release/src/main/java/org/apache/maven/continuum/release/executors/PrepareReleaseTaskExecutor.java Wed Sep 20 01:23:21 2006
@@ -83,9 +83,9 @@
 
         if ( result.getResultCode() == ReleaseResult.SUCCESS )
         {
-            continuumReleaseManager.getReleaseResults().put( prepareTask.getReleaseId(), result );
-
             continuumReleaseManager.getPreparedReleases().put( prepareTask.getReleaseId(), descriptor );
         }
+
+        continuumReleaseManager.getReleaseResults().put( prepareTask.getReleaseId(), result );
     }
 }

Modified: maven/continuum/branches/release-integration/continuum/continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ReleaseTaskExecutorTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ReleaseTaskExecutorTest.java?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ReleaseTaskExecutorTest.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ReleaseTaskExecutorTest.java Wed Sep 20 01:23:21 2006
@@ -18,7 +18,9 @@
 
 import org.apache.maven.continuum.release.tasks.PrepareReleaseProjectTask;
 import org.apache.maven.continuum.release.tasks.PerformReleaseProjectTask;
+import org.apache.maven.continuum.release.ContinuumReleaseManager;
 import org.apache.maven.plugins.release.config.ReleaseDescriptor;
+import org.apache.maven.plugins.release.ReleaseResult;
 import org.apache.maven.scm.manager.NoSuchScmProviderException;
 import org.apache.maven.scm.manager.ScmManager;
 import org.apache.maven.scm.repository.ScmRepository;
@@ -28,6 +30,7 @@
 import org.codehaus.plexus.util.FileUtils;
 import org.codehaus.plexus.taskqueue.Task;
 import org.codehaus.plexus.taskqueue.execution.TaskExecutor;
+import org.codehaus.plexus.taskqueue.execution.TaskExecutionException;
 
 import java.io.File;
 
@@ -37,6 +40,8 @@
 public class ReleaseTaskExecutorTest
     extends PlexusTestCase
 {
+    private ContinuumReleaseManager releaseManager;
+
     private ScmManager scmManager;
 
     private TaskExecutor prepareExec;
@@ -62,6 +67,11 @@
         {
             performExec = (TaskExecutor) lookup( TaskExecutor.class.getName(), "perform-release" );
         }
+
+        if ( releaseManager == null )
+        {
+            releaseManager = (ContinuumReleaseManager) lookup( ContinuumReleaseManager.ROLE );
+        }
     }
 
     public void testReleaseSimpleProject()
@@ -85,7 +95,7 @@
         String pom = FileUtils.fileRead( new File( workDir, "pom.xml" ) );
         assertTrue( "Test dev version", pom.indexOf( "<version>1.0-SNAPSHOT</version>" ) > 0 );
 
-        prepareExec.executeTask( getPrepareTask( "testRelease", descriptor ) );
+        doPrepareWithNoError( descriptor );
 
         pom = FileUtils.fileRead( new File( workDir, "pom.xml" ) );
         assertTrue( "Test version increment", pom.indexOf( "<version>1.1-SNAPSHOT</version>" ) > 0 );
@@ -121,7 +131,7 @@
         String pom = FileUtils.fileRead( new File( workDir, "pom.xml" ) );
         assertTrue( "Test dev version", pom.indexOf( "<version>1.1-SNAPSHOT</version>" ) > 0 );
 
-        prepareExec.executeTask( getPrepareTask( "testRelease", descriptor ) );
+        doPrepareWithNoError( descriptor );
 
         pom = FileUtils.fileRead( new File( workDir, "pom.xml" ) );
         assertTrue( "Test version increment", pom.indexOf( "<version>2.1-SNAPSHOT</version>" ) > 0 );
@@ -133,7 +143,26 @@
         pom = FileUtils.fileRead( new File( testDir, "pom.xml" ) );
         assertTrue( "Test released version", pom.indexOf( "<version>2.0</version>" ) > 0 );
 
-        performExec.executeTask( getPerformTask( "testRelease", descriptor, new File( getBasedir(), "target/test-classes/build-dir" ) ) );
+        performExec.executeTask( getPerformTask( "testRelease", descriptor,
+                                                 new File( getBasedir(), "target/test-classes/build-dir" ) ) );
+
+        ReleaseResult result = (ReleaseResult) releaseManager.getReleaseResults().get( "testRelease" );
+        if ( result.getResultCode() != ReleaseResult.SUCCESS )
+        {
+            fail( "Error in release:perform. Release output follows: " + result.getOutput() );
+        }
+    }
+
+    private void doPrepareWithNoError( ReleaseDescriptor descriptor )
+        throws TaskExecutionException
+    {
+        prepareExec.executeTask( getPrepareTask( "testRelease", descriptor ) );
+
+        ReleaseResult result = (ReleaseResult) releaseManager.getReleaseResults().get( "testRelease" );
+        if ( result.getResultCode() != ReleaseResult.SUCCESS )
+        {
+            fail( "Error in release:prepare. Release output follows:\n" + result.getOutput() );
+        }
     }
 
     private Task getPrepareTask( String releaseId, ReleaseDescriptor descriptor )

Modified: maven/continuum/branches/release-integration/continuum/continuum-webapp/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-webapp/pom.xml?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-webapp/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-webapp/pom.xml Wed Sep 20 01:23:21 2006
@@ -7,7 +7,6 @@
   <modelVersion>4.0.0</modelVersion>
   <artifactId>continuum-webapp</artifactId>
   <name>Continuum Web APP</name>
-  <version>1.1-SNAPSHOT</version>
   <packaging>war</packaging>
   <build>
     <filters>
@@ -101,6 +100,22 @@
           </excludes>
         </configuration>
       </plugin>
+      <plugin>
+        <artifactId>maven-clean-plugin</artifactId>
+        <configuration>
+          <filesets>
+            <fileset>
+              <directory>src/main/webapp/WEB-INF</directory>
+              <includes>
+                <include>database</include>
+                <include>temp</include>
+                <include>logs</include>
+                <include>working-directory</include>
+              </includes>
+            </fileset>
+          </filesets>
+        </configuration>
+      </plugin>
     </plugins>
   </build>
   <dependencies>
@@ -108,6 +123,10 @@
       <groupId>org.apache.maven.continuum</groupId>
       <artifactId>continuum-core</artifactId>
     </dependency>
+    <dependency> <!-- added since depMgt doesn't override imported dependencies -->
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+    </dependency>
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-xwork-integration</artifactId>
@@ -199,6 +218,15 @@
       <artifactId>continuum-notifier-msn</artifactId>
     </dependency>
     <dependency>
+      <groupId>org.apache.maven.continuum</groupId>
+      <artifactId>continuum-xmlrpc</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-xmlrpc</artifactId>
+      <version>1.0-beta-4</version>
+    </dependency>
+    <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-mail-sender-javamail</artifactId>
     </dependency>
@@ -224,3 +252,4 @@
     </dependency>
   </dependencies>
 </project>
+

Modified: maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java Wed Sep 20 01:23:21 2006
@@ -132,13 +132,20 @@
 
         listener = (ContinuumReleaseManagerListener) releaseManager.getListeners().get( releaseId );
 
-        if ( listener.getState() == ContinuumReleaseManagerListener.FINISHED )
+        if ( listener != null )
         {
-            status = "finished";
+            if ( listener.getState() == ContinuumReleaseManagerListener.FINISHED )
+            {
+                status = "finished";
+            }
+            else
+            {
+                status = "inProgress";
+            }
         }
         else
         {
-            status = "inProgress";
+            throw new Exception( "There is no release on-going or finished with id: " + releaseId );
         }
 
         return status;

Modified: maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PrepareReleaseAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PrepareReleaseAction.java?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PrepareReleaseAction.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PrepareReleaseAction.java Wed Sep 20 01:23:21 2006
@@ -84,15 +84,18 @@
         scmPassword = project.getScmPassword();
         scmTag = project.getScmTag();
         String scmUrl = project.getScmUrl();
+
+        //skip scm:provider in scm url
+        int idx = scmUrl.indexOf( ":", 4 ) + 1;
+        scmUrl = scmUrl.substring( idx );
+
         if ( scmUrl.endsWith( "/trunk" ) )
         {
-            //skip scm:provider in scm url
-            int idx = scmUrl.indexOf( ":", 4 ) + 1;
-            scmTagBase = scmUrl.substring( idx , scmUrl.lastIndexOf( "/trunk" ) ) + "/branches";
+            scmTagBase = scmUrl.substring( 0 , scmUrl.lastIndexOf( "/trunk" ) ) + "/branches";
         }
         else
         {
-            scmTagBase = scmUrl;
+            scmTagBase = scmUrl.substring( idx );
         }
         prepareGoals = "clean integration-test";
 
@@ -186,17 +189,24 @@
 
         listener = (ContinuumReleaseManagerListener) releaseManager.getListeners().get( releaseId );
 
-        if ( listener.getState() == ContinuumReleaseManagerListener.FINISHED )
+        if ( listener != null )
         {
-            releaseManager.getListeners().remove( releaseId );
+            if ( listener.getState() == ContinuumReleaseManagerListener.FINISHED )
+            {
+                releaseManager.getListeners().remove( releaseId );
 
-            result = (ReleaseResult) releaseManager.getReleaseResults().get( releaseId );
+                result = (ReleaseResult) releaseManager.getReleaseResults().get( releaseId );
 
-            status = "finished";
+                status = "finished";
+            }
+            else
+            {
+                status = "inProgress";
+            }
         }
         else
         {
-            status = "inProgress";
+            throw new Exception( "There is no release on-going or finished with id: " + releaseId );
         }
 
         return status;

Modified: maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/performRelease.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/performRelease.jsp?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/performRelease.jsp (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/performRelease.jsp Wed Sep 20 01:23:21 2006
@@ -22,6 +22,7 @@
             <ww:textfield label="Maven Arguments" name="goals"/>
             <ww:checkbox label="Use Release Profile" name="useReleaseProfile" value="true"/>
           </table>
+        </div>
         <ww:submit/>
       </ww:form>
     </body>

Modified: maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/viewReleaseResult.jsp
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/viewReleaseResult.jsp?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/viewReleaseResult.jsp (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/viewReleaseResult.jsp Wed Sep 20 01:23:21 2006
@@ -37,7 +37,7 @@
         </ww:if>
         <ww:else>
           <div style="width:100%; height:500px; overflow:auto; border-style: solid; border-width: 1px">
-            <code><pre><ww:property value="result.output"/></pre></code>
+            <pre><ww:property value="result.output"/></pre>
           </div>
         </ww:else>
       </p>

Modified: maven/continuum/branches/release-integration/continuum/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/pom.xml?view=diff&rev=448121&r1=448120&r2=448121
==============================================================================
--- maven/continuum/branches/release-integration/continuum/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/pom.xml Wed Sep 20 01:23:21 2006
@@ -340,7 +340,7 @@
       <dependency>
         <groupId>org.codehaus.plexus</groupId>
         <artifactId>plexus-utils</artifactId>
-        <version>1.2</version>
+        <version>1.3-SNAPSHOT</version>
       </dependency>
       <dependency>
         <groupId>org.codehaus.plexus</groupId>