From 38939c35f41ecd0ea1cb542aa8299ec2bdb3a438 Mon Sep 17 00:00:00 2001 From: Konrad Windszus Date: Fri, 5 Nov 2021 17:37:36 +0100 Subject: [PATCH] [MRELEASE-1053] - Populate scm info from current module instead of reactor --- .../regular-multi-module/module-a/pom.xml | 3 +- .../regular-multi-module/module-b/pom.xml | 3 +- .../module-parent/pom.xml | 61 +++++++++++++++++++ .../prepare/regular-multi-module/pom.xml | 36 +++-------- .../regular-multi-module/verify.groovy | 18 ++++-- .../release/AbstractScmReleaseMojo.java | 2 +- 6 files changed, 85 insertions(+), 38 deletions(-) create mode 100644 maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-parent/pom.xml diff --git a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-a/pom.xml b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-a/pom.xml index fa942cb22..79512398a 100644 --- a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-a/pom.xml +++ b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-a/pom.xml @@ -19,9 +19,10 @@ under the License. --> - regular-multi-module-project + regular-multi-module-project-parent org.apache.maven.plugin.release 1.0-SNAPSHOT + ../module-parent/pom.xml 4.0.0 org.apache.maven.plugin.release diff --git a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-b/pom.xml b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-b/pom.xml index eafd261c4..0a981c72b 100644 --- a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-b/pom.xml +++ b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-b/pom.xml @@ -19,9 +19,10 @@ under the License. --> - regular-multi-module-project + regular-multi-module-project-parent org.apache.maven.plugin.release 1.0-SNAPSHOT + ../module-parent/pom.xml 4.0.0 org.apache.maven.plugin.release diff --git a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-parent/pom.xml b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-parent/pom.xml new file mode 100644 index 000000000..b97919cd8 --- /dev/null +++ b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/module-parent/pom.xml @@ -0,0 +1,61 @@ + + + + 4.0.0 + org.apache.maven.plugin.release + regular-multi-module-project-parent + pom + 1.0-SNAPSHOT + parent-project + + + http://localhost/myscm/${project.scm.tag} + scm:svn:file://localhost/${project.file.parentFile.parentFile}/target/svnroot/flat-multi-module/${project.scm.tag}/ + scm:svn:file://localhost/${project.file.parentFile.parentFile}/target/svnroot/flat-multi-module/${project.scm.tag}/ + trunk + + + + + @maven.compiler.source@ + @maven.compiler.target@ + + + + + + + org.apache.maven.plugins + maven-release-plugin + @project.version@ + + + + + + + + junit + junit + 3.8.1 + test + + + diff --git a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/pom.xml b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/pom.xml index 083c8df6a..c68a4cb33 100644 --- a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/pom.xml +++ b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/pom.xml @@ -25,38 +25,16 @@ 1.0-SNAPSHOT parent-project http://maven.apache.org - - scm:svn:file://localhost/${project.file.parentFile.parentFile}/target/svnroot/flat-multi-module/trunk/ - scm:svn:file://localhost/${project.file.parentFile.parentFile}/target/svnroot/flat-multi-module/trunk/ - + + org.apache.maven.plugin.release + regular-multi-module-project-parent + module-parent/pom.xml + 1.0-SNAPSHOT + - - @maven.compiler.source@ - @maven.compiler.target@ - - - - - - - org.apache.maven.plugins - maven-release-plugin - @project.version@ - - - - - - - - junit - junit - 3.8.1 - test - - module-a module-b + module-parent diff --git a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/verify.groovy b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/verify.groovy index a4ae4f75a..7f7712a6c 100644 --- a/maven-release-plugin/src/it/projects/prepare/regular-multi-module/verify.groovy +++ b/maven-release-plugin/src/it/projects/prepare/regular-multi-module/verify.groovy @@ -39,16 +39,22 @@ try String expected1 = "Full run would tag working copy '" + basedir + "'"; String expected2 = " with label 'regular-multi-module-project-1.0'"; - if( contents.indexOf( expected1 ) != -1 && contents.indexOf( expected2 ) != -1 ) - { - return true; - } + assert contents.indexOf( expected1 ) != -1 + assert contents.indexOf( expected2 ) != -1 + // check parent project + def project = new XmlSlurper().parse( new File( new File (basedir, "module-parent"), "pom.xml.next" ) ) + assert project.version.text() == '1.1-SNAPSHOT' + assert project.scm.url.text() == 'http://localhost/myscm/${project.scm.tag}' + + // check reactor root project + project = new XmlSlurper().parse( new File (basedir, "pom.xml.next" ) ) + assert 0 == project.scm.size() // scm element must not exist in reactor root } catch( Throwable t ) { t.printStackTrace(); + System.out.println( "FAILED!" ); return false; } -System.out.println( "FAILED!" ); -return false; +return true; 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 6804603b2..f7113bbc3 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 @@ -175,7 +175,7 @@ else if ( project.getScm().getConnection() != null ) String projectId = ArtifactUtils.versionlessKey( reactorProject.getGroupId(), reactorProject.getArtifactId() ); - descriptor.addOriginalScmInfo( projectId, buildScm( project ) ); + descriptor.addOriginalScmInfo( projectId, buildScm( reactorProject ) ); } }