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 <rfscho...@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 rfscho...@apache.org.