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:59 UTC
[maven-release] 11/21: Move several SCM property setters to plugin
goal
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 731c8aa2bcae06e040f1ab028651be868ef7068b
Author: rfscholte <rf...@apache.org>
AuthorDate: Fri Feb 2 13:08:01 2018 +0100
Move several SCM property setters to plugin goal
---
.../config/PropertiesReleaseDescriptorStore.java | 6 -----
.../release/config/ReleaseDescriptorBuilder.java | 11 +++-----
.../maven/shared/release/phase/CheckPomPhase.java | 19 +------------
.../shared/release/phase/CheckPomPhaseTest.java | 31 +++++++++-------------
.../plugins/release/AbstractScmReleaseMojo.java | 15 +++++++++++
5 files changed, 32 insertions(+), 50 deletions(-)
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/PropertiesReleaseDescriptorStore.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/PropertiesReleaseDescriptorStore.java
index 86e3fa6..ebf990b 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/PropertiesReleaseDescriptorStore.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/PropertiesReleaseDescriptorStore.java
@@ -104,12 +104,6 @@ public class PropertiesReleaseDescriptorStore
ReleaseUtils.copyPropertiesToReleaseDescriptor( properties, builder );
-// ReleaseDescriptorBuilder releaseDescriptor = builder;
-// if ( mergeDescriptor != null )
-// {
-// releaseDescriptor = ReleaseUtils.merge( builder, mergeDescriptor.build() );
-// }
-
return builder;
}
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptorBuilder.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptorBuilder.java
index 86ce491..f1a0f98 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptorBuilder.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptorBuilder.java
@@ -36,12 +36,11 @@ public class ReleaseDescriptorBuilder
* @author Robert Scholte
*
*/
- private static final class BuilderReleaseDescriptor extends ReleaseDescriptor implements ReleaseDescriptorNew
+ static final class BuilderReleaseDescriptor extends ReleaseDescriptor implements ReleaseDescriptorNew
{
@Override
public void putDependencyReleaseVersion( String artifactKey, String version )
{
-
}
@Override
@@ -54,15 +53,13 @@ public class ReleaseDescriptorBuilder
@Override
public void putProjectReleaseVersion( String projectId, String nextVersion )
{
- // TODO Auto-generated method stub
-
+ addReleaseVersion( projectId, nextVersion );
}
@Override
public void putProjectDevelopmentVersion( String projectId, String nextVersion )
{
- // TODO Auto-generated method stub
-
+ addDevelopmentVersion( projectId, nextVersion );
}
}
@@ -396,7 +393,7 @@ public class ReleaseDescriptorBuilder
releaseDescriptor.addOriginalVersion( projectKey, version );
}
- ReleaseDescriptor build()
+ BuilderReleaseDescriptor build()
{
return releaseDescriptor;
}
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckPomPhase.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckPomPhase.java
index b5066d2..128721f 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckPomPhase.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckPomPhase.java
@@ -30,7 +30,6 @@ import org.apache.maven.shared.release.config.ReleaseDescriptor;
import org.apache.maven.shared.release.env.ReleaseEnvironment;
import org.apache.maven.shared.release.scm.ReleaseScmRepositoryException;
import org.apache.maven.shared.release.scm.ScmRepositoryConfigurator;
-import org.apache.maven.shared.release.util.ReleaseUtil;
import org.codehaus.plexus.util.StringUtils;
import java.util.List;
@@ -64,30 +63,14 @@ public class CheckPomPhase
ReleaseResult result = new ReleaseResult();
// Currently, we don't deal with multiple SCM locations in a multiproject
- if ( scmRequired && StringUtils.isEmpty( releaseDescriptor.getScmSourceUrl() ) )
+ if ( scmRequired )
{
- MavenProject rootProject = ReleaseUtil.getRootProject( reactorProjects );
- if ( rootProject != null && rootProject.getScm() != null )
- {
- if ( rootProject.getScm().getDeveloperConnection() != null )
- {
- releaseDescriptor.setScmSourceUrl( rootProject.getScm().getDeveloperConnection() );
- }
- else if ( rootProject.getScm().getConnection() != null )
- {
- releaseDescriptor.setScmSourceUrl( rootProject.getScm().getConnection() );
- }
- }
-
if ( StringUtils.isEmpty( releaseDescriptor.getScmSourceUrl() ) )
{
throw new ReleaseFailureException(
"Missing required setting: scm connection or developerConnection must be specified." );
}
- // As long as Scm.getId() does not exist, read it as a property
- releaseDescriptor.setScmId( rootProject.getProperties().getProperty( "project.scm.id" ) );
-
try
{
scmRepositoryConfigurator.getConfiguredRepository( releaseDescriptor,
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckPomPhaseTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckPomPhaseTest.java
index 78382c8..84e78d7 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckPomPhaseTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckPomPhaseTest.java
@@ -54,7 +54,7 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
- builder.setScmSourceUrl( "scm-url" );
+ builder.setScmSourceUrl( "scm:svn:file://localhost/tmp/repo" );
phase.execute( ReleaseUtils.buildReleaseDescriptor( builder ), new DefaultReleaseEnvironment(), Collections.singletonList( createProject( "1.0-SNAPSHOT" ) ) );
@@ -68,10 +68,9 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
+ builder.setScmSourceUrl( "scm:svn:file://localhost/tmp/repo" );
+
MavenProject project = createProject( "1.0-SNAPSHOT" );
- Scm scm = new Scm();
- scm.setConnection( "scm:svn:file://localhost/tmp/repo" );
- project.setScm( scm );
phase.execute( ReleaseUtils.buildReleaseDescriptor( builder ), new DefaultReleaseEnvironment(), Collections.singletonList( project ) );
@@ -82,10 +81,9 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
+ builder.setScmSourceUrl( "scm:svn:file://localhost/tmp/repo" );
+
MavenProject project = createProject( "1.0-SNAPSHOT" );
- Scm scm = new Scm();
- scm.setConnection( "scm:svn:file://localhost/tmp/repo" );
- project.setScm( scm );
phase.simulate( ReleaseUtils.buildReleaseDescriptor( builder ), new DefaultReleaseEnvironment(), Collections.singletonList( project ) );
@@ -96,11 +94,9 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
+ builder.setScmSourceUrl( "scm:svn:https://localhost/tmp/repo" );
+
MavenProject project = createProject( "1.0-SNAPSHOT" );
- Scm scm = new Scm();
- scm.setConnection( "scm:svn:file://localhost/tmp/repo" );
- scm.setDeveloperConnection( "scm:svn:https://localhost/tmp/repo" );
- project.setScm( scm );
phase.execute( ReleaseUtils.buildReleaseDescriptor( builder ), new DefaultReleaseEnvironment(), Collections.singletonList( project ) );
@@ -111,11 +107,9 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
+ builder.setScmSourceUrl( "scm:svn:https://localhost/tmp/repo" );
+
MavenProject project = createProject( "1.0-SNAPSHOT" );
- Scm scm = new Scm();
- scm.setConnection( "scm:svn:file://localhost/tmp/repo" );
- scm.setDeveloperConnection( "scm:svn:https://localhost/tmp/repo" );
- project.setScm( scm );
phase.simulate( ReleaseUtils.buildReleaseDescriptor( builder ), new DefaultReleaseEnvironment(), Collections.singletonList( project ) );
@@ -126,10 +120,9 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
+ builder.setScmSourceUrl( "scm:cvs:" );
+
MavenProject project = createProject( "1.0-SNAPSHOT" );
- Scm scm = new Scm();
- scm.setConnection( "scm:cvs:" );
- project.setScm( scm );
try
{
@@ -196,7 +189,7 @@ public class CheckPomPhaseTest
throws Exception
{
ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
- builder.setScmSourceUrl( "scm-url" );
+ builder.setScmSourceUrl( "scm:svn:file://localhost/tmp/repo" );
try
{
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractScmReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractScmReleaseMojo.java
index 2c3fbc4..5e2f47e 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractScmReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractScmReleaseMojo.java
@@ -139,6 +139,21 @@ public abstract class AbstractScmReleaseMojo
descriptor.setScmCommentPrefix( scmCommentPrefix );
descriptor.setPushChanges( pushChanges );
+
+ if ( project.getScm() != null )
+ {
+ if ( project.getScm().getDeveloperConnection() != null )
+ {
+ descriptor.setScmSourceUrl( project.getScm().getDeveloperConnection() );
+ }
+ else if ( project.getScm().getConnection() != null )
+ {
+ descriptor.setScmSourceUrl( project.getScm().getConnection() );
+ }
+ }
+
+ // As long as Scm.getId() does not exist, read it as a property
+ descriptor.setScmId( project.getProperties().getProperty( "project.scm.id" ) );
return descriptor;
}
--
To stop receiving notification emails like this one, please contact
rfscholte@apache.org.