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 2018/02/10 16:02:57 UTC

[maven-release] 09/21: Move userproperties resolution to release manager

This is an automated email from the ASF dual-hosted git repository.

rfscholte pushed a commit to branch MRELEASE-998
in repository https://gitbox.apache.org/repos/asf/maven-release.git

commit e0d403d652e88984668a5c15df90e6fbb09ead7f
Author: rfscholte <rf...@apache.org>
AuthorDate: Sun Jan 28 17:58:02 2018 +0100

    Move userproperties resolution to release manager
---
 .../shared/release/DefaultReleaseManager.java      | 75 +++++++++++++++++++---
 .../maven/shared/release/ReleaseBranchRequest.java | 13 ++++
 .../shared/release/ReleasePrepareRequest.java      | 14 ++++
 .../release/ReleaseUpdateVersionsRequest.java      | 14 ++++
 .../src/main/mdo/release-descriptor.mdo            |  1 -
 .../shared/release/DefaultReleaseManagerTest.java  | 15 +++++
 .../maven/plugins/release/BranchReleaseMojo.java   | 18 +-----
 .../maven/plugins/release/PrepareReleaseMojo.java  | 18 +-----
 .../maven/plugins/release/UpdateVersionsMojo.java  | 18 +-----
 9 files changed, 126 insertions(+), 60 deletions(-)

diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java
index d1b3748..e3e1950 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java
@@ -31,6 +31,7 @@ import org.apache.maven.shared.release.config.ReleaseDescriptor;
 import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
 import org.apache.maven.shared.release.config.ReleaseDescriptorStore;
 import org.apache.maven.shared.release.config.ReleaseDescriptorStoreException;
+import org.apache.maven.shared.release.config.ReleaseUtils;
 import org.apache.maven.shared.release.phase.ReleasePhase;
 import org.apache.maven.shared.release.strategy.Strategy;
 import org.codehaus.plexus.component.annotations.Component;
@@ -100,18 +101,37 @@ public class DefaultReleaseManager
     private void prepare( ReleasePrepareRequest prepareRequest, ReleaseResult result )
         throws ReleaseExecutionException, ReleaseFailureException
     {
+
+        final ReleaseDescriptorBuilder builder = prepareRequest.getReleaseDescriptorBuilder();
+
+        // Create a config containing values from the session properties (ie command line properties with cli).
+        ReleaseUtils.copyPropertiesToReleaseDescriptor( prepareRequest.getUserProperties(),
+                                        new ReleaseDescriptorBuilder()
+                                        {
+                                            public ReleaseDescriptorBuilder addDevelopmentVersion( String key,
+                                                                                                   String value )
+                                            {
+                                                builder.addDevelopmentVersion( key, value );
+                                                return this;
+                                            }
+
+                                            public ReleaseDescriptorBuilder addReleaseVersion( String key,
+                                                                                               String value )
+                                            {
+                                                builder.addReleaseVersion( key, value );
+                                                return this;
+                                            };
+                                        } );
+
         ReleaseDescriptor config;
         if ( BooleanUtils.isNotFalse( prepareRequest.getResume() ) )
         {
-            config = loadReleaseDescriptor( prepareRequest.getReleaseDescriptorBuilder(),
-                                            prepareRequest.getReleaseManagerListener() );
+            config = loadReleaseDescriptor( builder, prepareRequest.getReleaseManagerListener() );
         }
         else
         {
             config = prepareRequest.getReleaseDescriptorBuilder().build();
         }
-        
-        
 
         Strategy releaseStrategy = getStrategy( config.getReleaseStrategyId() );
 
@@ -325,9 +345,28 @@ public class DefaultReleaseManager
     public void branch( ReleaseBranchRequest branchRequest )
         throws ReleaseExecutionException, ReleaseFailureException
     {
+        final ReleaseDescriptorBuilder builder = branchRequest.getReleaseDescriptorBuilder();
+        
+        ReleaseUtils.copyPropertiesToReleaseDescriptor( branchRequest.getUserProperties(),
+                    new ReleaseDescriptorBuilder()
+                    {
+                        public ReleaseDescriptorBuilder addDevelopmentVersion( String key,
+                                                                               String value )
+                        {
+                            builder.addDevelopmentVersion( key, value );
+                            return this;
+                        }
+
+                        public ReleaseDescriptorBuilder addReleaseVersion( String key,
+                                                                           String value )
+                        {
+                            builder.addReleaseVersion( key, value );
+                            return this;
+                        };
+                    } );
+        
         ReleaseDescriptor releaseDescriptor =
-            loadReleaseDescriptor( branchRequest.getReleaseDescriptorBuilder(),
-                                   branchRequest.getReleaseManagerListener() );
+            loadReleaseDescriptor( builder, branchRequest.getReleaseManagerListener() );
 
         boolean dryRun = BooleanUtils.isTrue( branchRequest.getDryRun() );
 
@@ -375,9 +414,29 @@ public class DefaultReleaseManager
     public void updateVersions( ReleaseUpdateVersionsRequest updateVersionsRequest )
         throws ReleaseExecutionException, ReleaseFailureException
     {
+        final ReleaseDescriptorBuilder builder = updateVersionsRequest.getReleaseDescriptorBuilder();
+        
+        // Create a config containing values from the session properties (ie command line properties with cli).
+        ReleaseUtils.copyPropertiesToReleaseDescriptor( updateVersionsRequest.getUserProperties(),
+                                    new ReleaseDescriptorBuilder()
+                                    {
+                                        public ReleaseDescriptorBuilder addDevelopmentVersion( String key,
+                                                                                               String value )
+                                        {
+                                            builder.addDevelopmentVersion( key, value );
+                                            return this;
+                                        }
+
+                                        public ReleaseDescriptorBuilder addReleaseVersion( String key,
+                                                                                           String value )
+                                        {
+                                            builder.addReleaseVersion( key, value );
+                                            return this;
+                                        };
+                                    } );
+
         ReleaseDescriptor releaseDescriptor =
-            loadReleaseDescriptor( updateVersionsRequest.getReleaseDescriptorBuilder(),
-                                   updateVersionsRequest.getReleaseManagerListener() );
+            loadReleaseDescriptor( builder, updateVersionsRequest.getReleaseManagerListener() );
 
         Strategy releaseStrategy = getStrategy( releaseDescriptor.getReleaseStrategyId() );
 
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseBranchRequest.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseBranchRequest.java
index 9900a17..45b69c8 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseBranchRequest.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseBranchRequest.java
@@ -19,6 +19,7 @@ package org.apache.maven.shared.release;
  * under the License.
  */
 
+import java.util.Properties;
 import org.apache.maven.shared.release.env.ReleaseEnvironment;
 
 /**
@@ -32,6 +33,8 @@ public class ReleaseBranchRequest extends AbstractReleaseRequest
     private Boolean dryRun;
 
     private ReleaseEnvironment releaseEnvironment;
+    
+    private Properties userProperties;
 
     /**
      * @return the dryRun
@@ -64,4 +67,14 @@ public class ReleaseBranchRequest extends AbstractReleaseRequest
     {
         this.releaseEnvironment = releaseEnvironment;
     }
+    
+    public Properties getUserProperties()
+    {
+        return userProperties;
+    }
+    
+    public void setUserProperties( Properties userProperties )
+    {
+        this.userProperties = userProperties;
+    }
 }
\ No newline at end of file
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleasePrepareRequest.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleasePrepareRequest.java
index 1ab4a2b..7ac6915 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleasePrepareRequest.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleasePrepareRequest.java
@@ -19,6 +19,8 @@ package org.apache.maven.shared.release;
  * under the License.
  */
 
+import java.util.Properties;
+
 import org.apache.maven.shared.release.env.ReleaseEnvironment;
 
 /**
@@ -36,6 +38,8 @@ public class ReleasePrepareRequest
     private Boolean resume;
 
     private ReleaseEnvironment releaseEnvironment;
+    
+    private Properties userProperties;
 
     /**
      * @return the dryRun
@@ -84,4 +88,14 @@ public class ReleasePrepareRequest
     {
         this.releaseEnvironment = releaseEnvironment;
     }
+    
+    public Properties getUserProperties()
+    {
+        return userProperties;
+    }
+    
+    public void setUserProperties( Properties userProperties )
+    {
+        this.userProperties = userProperties;
+    }
 }
\ No newline at end of file
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseUpdateVersionsRequest.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseUpdateVersionsRequest.java
index ba87ad0..81c768c 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseUpdateVersionsRequest.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseUpdateVersionsRequest.java
@@ -19,6 +19,8 @@ package org.apache.maven.shared.release;
  * under the License.
  */
 
+import java.util.Properties;
+
 import org.apache.maven.shared.release.env.ReleaseEnvironment;
 
 /**
@@ -30,6 +32,8 @@ public class ReleaseUpdateVersionsRequest
     extends AbstractReleaseRequest
 {
     private ReleaseEnvironment releaseEnvironment;
+    
+    private Properties userProperties;
 
     /**
      * @return the releaseEnvironment
@@ -46,4 +50,14 @@ public class ReleaseUpdateVersionsRequest
     {
         this.releaseEnvironment = releaseEnvironment;
     }
+    
+    public Properties getUserProperties()
+    {
+        return userProperties;
+    }
+    
+    public void setUserProperties( Properties userProperties )
+    {
+        this.userProperties = userProperties;
+    }
 }
\ No newline at end of file
diff --git a/maven-release-manager/src/main/mdo/release-descriptor.mdo b/maven-release-manager/src/main/mdo/release-descriptor.mdo
index 53c00a7..13ab34a 100644
--- a/maven-release-manager/src/main/mdo/release-descriptor.mdo
+++ b/maven-release-manager/src/main/mdo/release-descriptor.mdo
@@ -756,7 +756,6 @@
         return null;
     }
 
-
     public boolean equals( Object obj )
     {
         if ( this == obj )
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java
index e7a97c8..396872e 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java
@@ -32,6 +32,7 @@ import java.io.File;
 import java.io.IOException;
 import java.util.Collections;
 import java.util.List;
+import java.util.Properties;
 
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.scm.CommandParameters;
@@ -86,6 +87,7 @@ public class DefaultReleaseManagerTest
         ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
         prepareRequest.setReleaseDescriptorBuilder( builder );
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -111,6 +113,7 @@ public class DefaultReleaseManagerTest
         ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
         prepareRequest.setReleaseDescriptorBuilder( builder );
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -138,6 +141,7 @@ public class DefaultReleaseManagerTest
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
         prepareRequest.setDryRun( false );
         prepareRequest.setResume( false );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -163,6 +167,7 @@ public class DefaultReleaseManagerTest
         ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
         prepareRequest.setReleaseDescriptorBuilder( builder );
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+        prepareRequest.setUserProperties( new Properties() );
 
         releaseManager.prepare( prepareRequest );
 
@@ -188,6 +193,7 @@ public class DefaultReleaseManagerTest
         ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
         prepareRequest.setReleaseDescriptorBuilder( builder );
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -215,6 +221,7 @@ public class DefaultReleaseManagerTest
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
         prepareRequest.setDryRun( true );
         prepareRequest.setResume( true );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -242,6 +249,7 @@ public class DefaultReleaseManagerTest
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
         prepareRequest.setDryRun( true );
         prepareRequest.setResume( true );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -269,6 +277,7 @@ public class DefaultReleaseManagerTest
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
         prepareRequest.setDryRun( true );
         prepareRequest.setResume( true );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -296,6 +305,7 @@ public class DefaultReleaseManagerTest
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
         prepareRequest.setDryRun( true );
         prepareRequest.setResume( true );
+        prepareRequest.setUserProperties( new Properties() );
         
         releaseManager.prepare( prepareRequest );
 
@@ -320,6 +330,7 @@ public class DefaultReleaseManagerTest
         builder.setReleaseStrategyId( "foo" );
         prepareRequest.setReleaseDescriptorBuilder( builder );
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+        prepareRequest.setUserProperties( new Properties() );
         
         try
         {
@@ -350,6 +361,7 @@ public class DefaultReleaseManagerTest
         ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
         prepareRequest.setReleaseDescriptorBuilder( builder );
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+        prepareRequest.setUserProperties( new Properties() );
 
         // execute
         try
@@ -388,6 +400,8 @@ public class DefaultReleaseManagerTest
         prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
         prepareRequest.setDryRun( false );
         prepareRequest.setResume( false );
+        prepareRequest.setUserProperties( new Properties() );
+
 
         // execute
         try
@@ -731,6 +745,7 @@ public class DefaultReleaseManagerTest
         
         ReleaseUpdateVersionsRequest updateVersionsRequest = new ReleaseUpdateVersionsRequest();
         updateVersionsRequest.setReleaseDescriptorBuilder( configStore.getReleaseConfiguration() );
+        updateVersionsRequest.setUserProperties( new Properties() );
 
         releaseManager.updateVersions( updateVersionsRequest );
 
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
index 1c894aa..4378d24 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
@@ -29,7 +29,6 @@ import org.apache.maven.shared.release.ReleaseBranchRequest;
 import org.apache.maven.shared.release.ReleaseExecutionException;
 import org.apache.maven.shared.release.ReleaseFailureException;
 import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
-import org.apache.maven.shared.release.config.ReleaseUtils;
 
 /**
  * Branch a project in SCM, using the same steps as the <tt>release:prepare</tt> goal, creating a branch instead of a
@@ -235,22 +234,6 @@ public class BranchReleaseMojo
         config.setProjectVersionPolicyId( projectVersionPolicyId );
         config.setProjectNamingPolicyId( projectBranchNamingPolicyId );
 
-        // Create a config containing values from the session properties (ie command line properties with cli).
-        ReleaseUtils.copyPropertiesToReleaseDescriptor( session.getUserProperties(), new ReleaseDescriptorBuilder()
-        {
-            public ReleaseDescriptorBuilder addDevelopmentVersion( String key, String value )
-            {
-                config.addDevelopmentVersion( key, value );
-                return this;
-            }
-
-            public ReleaseDescriptorBuilder addReleaseVersion( String key, String value )
-            {
-                config.addReleaseVersion( key, value );
-                return this;
-            };
-        } );
-
         if ( checkModificationExcludeList != null )
         {
             checkModificationExcludes = checkModificationExcludeList.replaceAll( "\\s", "" ).split( "," );
@@ -268,6 +251,7 @@ public class BranchReleaseMojo
             branchRequest.setReleaseEnvironment( getReleaseEnvironment() );
             branchRequest.setReactorProjects( getReactorProjects() );
             branchRequest.setDryRun( dryRun );
+            branchRequest.setUserProperties( session.getUserProperties() );
 
             releaseManager.branch( branchRequest );
         }
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
index b128158..196f727 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
@@ -29,7 +29,6 @@ import org.apache.maven.shared.release.ReleaseExecutionException;
 import org.apache.maven.shared.release.ReleaseFailureException;
 import org.apache.maven.shared.release.ReleasePrepareRequest;
 import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
-import org.apache.maven.shared.release.config.ReleaseUtils;
 
 /**
  * Prepare for a release in SCM. Steps through several phases to ensure the POM is ready to be released and then
@@ -288,22 +287,6 @@ public class PrepareReleaseMojo
         {
             config.setCheckModificationExcludes( Arrays.asList( checkModificationExcludes ) );
         }
-
-        // Create a config containing values from the session properties (ie command line properties with cli).
-        ReleaseUtils.copyPropertiesToReleaseDescriptor( session.getUserProperties(), new ReleaseDescriptorBuilder()
-        {
-            public ReleaseDescriptorBuilder addDevelopmentVersion( String key, String value )
-            {
-                config.addDevelopmentVersion( key, value );
-                return this;
-            }
-
-            public ReleaseDescriptorBuilder addReleaseVersion( String key, String value )
-            {
-                config.addReleaseVersion( key, value );
-                return this;
-            };
-        } );
         
         ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
         prepareRequest.setReleaseDescriptorBuilder( config );
@@ -311,6 +294,7 @@ public class PrepareReleaseMojo
         prepareRequest.setReactorProjects( getReactorProjects() );
         prepareRequest.setResume( resume );
         prepareRequest.setDryRun( dryRun );
+        prepareRequest.setUserProperties( session.getUserProperties() );
 
         try
         {
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
index 7543e8b..2aa1e8e 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
@@ -28,7 +28,6 @@ import org.apache.maven.shared.release.ReleaseExecutionException;
 import org.apache.maven.shared.release.ReleaseFailureException;
 import org.apache.maven.shared.release.ReleaseUpdateVersionsRequest;
 import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
-import org.apache.maven.shared.release.config.ReleaseUtils;
 
 /**
  * Update the POM versions for a project. This performs the normal version updates of the <tt>release:prepare</tt> goal
@@ -109,28 +108,13 @@ public class UpdateVersionsMojo
         config.addOriginalScmInfo( ArtifactUtils.versionlessKey( project.getGroupId(), project.getArtifactId() ),
                                    project.getScm() );
 
-        // Create a config containing values from the session properties (ie command line properties with cli).
-        ReleaseUtils.copyPropertiesToReleaseDescriptor( session.getUserProperties(), new ReleaseDescriptorBuilder()
-        {
-            public ReleaseDescriptorBuilder addDevelopmentVersion( String key, String value )
-            {
-                config.addDevelopmentVersion( key, value );
-                return this;
-            }
-
-            public ReleaseDescriptorBuilder addReleaseVersion( String key, String value )
-            {
-                config.addReleaseVersion( key, value );
-                return this;
-            };
-        } );
-
         try
         {
             ReleaseUpdateVersionsRequest updateVersionsRequest = new ReleaseUpdateVersionsRequest();
             updateVersionsRequest.setReleaseDescriptorBuilder( config );
             updateVersionsRequest.setReleaseEnvironment( getReleaseEnvironment() );
             updateVersionsRequest.setReactorProjects( getReactorProjects() );
+            updateVersionsRequest.setUserProperties( session.getUserProperties() );
 
             releaseManager.updateVersions( updateVersionsRequest );
         }

-- 
To stop receiving notification emails like this one, please contact
rfscholte@apache.org.