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

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

commit caf9c1bd4aa5e0b587a1ca4e4bb173813633d4c6
Author: rfscholte <rfscho...@apache.org>
AuthorDate: Sat Apr 7 16:53:57 2018 +0200

    Store reactor pom locations in ReleaseDescriptor
---
 .../shared/release/config/ReleaseDescriptor.java   |  2 ++
 .../release/config/ReleaseDescriptorBuilder.java   |  5 ++++
 .../src/main/mdo/release-descriptor.mdo            | 33 ++++++++++++----------
 .../maven/plugins/release/AbstractReleaseMojo.java |  2 ++
 .../plugins/release/PerformReleaseMojoTest.java    | 12 +++++++-
 .../plugins/release/PrepareReleaseMojoTest.java    | 18 ++++++++++++
 .../plugins/release/StageReleaseMojoTest.java      |  5 ++++
 7 files changed, 61 insertions(+), 16 deletions(-)

diff --git 
a/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
 
b/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
index 042a347..052b1e4 100644
--- 
a/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
+++ 
b/maven-release-api/src/main/java/org/apache/maven/shared/release/config/ReleaseDescriptor.java
@@ -389,6 +389,8 @@ public interface ReleaseDescriptor
 
     String getProjectReleaseVersion( String key );
 
+    String getProjectPomFile( String projectKey );
+
     /**
      * Method getOriginalScmInfo.
      * 
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 c2ed277..ff825c1 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
@@ -373,6 +373,11 @@ public class ReleaseDescriptorBuilder
         releaseDescriptor.addOriginalVersion( projectKey, version );
     }
     
+    public void addProjectPomFile( String projectKey, String pomFile )
+    {
+        releaseDescriptor.addProjectPomFile( projectKey, pomFile );
+    }
+
     public ReleaseDescriptorBuilder addDependencyOriginalVersion( String 
dependencyKey, String version )
     {
         releaseDescriptor.addDependencyOriginalVersion( dependencyKey, version 
);
diff --git a/maven-release-manager/src/main/mdo/release-descriptor.mdo 
b/maven-release-manager/src/main/mdo/release-descriptor.mdo
index 68e7a68..fbf4932 100644
--- a/maven-release-manager/src/main/mdo/release-descriptor.mdo
+++ b/maven-release-manager/src/main/mdo/release-descriptor.mdo
@@ -217,18 +217,6 @@
             If set to true, this will set the property "performRelease" to 
true.
           </description>
         </field>
-<!--         <field> -->
-<!--           <name>originalScmInfo</name> -->
-<!--           <version>1.0.0+</version> -->
-<!--           <type>Map</type> -->
-<!--           <association> -->
-<!--             <type>String</type> -->
-<!--             <multiplicity>*</multiplicity> -->
-<!--           </association> -->
-<!--           <description> -->
-<!--             A map of projects to original SCM information. -->
-<!--           </description> -->
-<!--         </field> -->
         <field>
           <name>workingDirectory</name>
           <version>1.0.0+</version>
@@ -536,14 +524,19 @@
           <version>2.1.0+</version>
           <code><![CDATA[
     /**
-     * Field resolvedSnapshotDependencies.
+     * Field projectVersions
      */
-    private java.util.Map<String, ReleaseStageVersions> 
resolvedSnapshotDependencies = new java.util.HashMap<>();
+    private java.util.Map<String, ReleaseStageVersions> projectVersions = new 
java.util.HashMap<>();
 
     /**
      * Field projectVersions
      */
-    private java.util.Map<String, ReleaseStageVersions> projectVersions = new 
java.util.HashMap<>();
+    private java.util.Map<String, String> projectPomFiles = new 
java.util.HashMap<>();
+
+    /**
+     * Field resolvedSnapshotDependencies.
+     */
+    private java.util.Map<String, ReleaseStageVersions> 
resolvedSnapshotDependencies = new java.util.HashMap<>();
     
     /**
      * Field originalScmInfo.
@@ -713,6 +706,16 @@
         }
         return value;
     }
+    
+    public void addProjectPomFile( String projectKey, String relativePath )
+    {
+        projectPomFiles.put( projectKey, relativePath );
+    }
+    
+    public String getProjectPomFile( String projectKey )
+    {
+        return projectPomFiles.get( projectKey );
+    }
 
     @Override
     public boolean equals( Object obj )
diff --git 
a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
 
b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
index fb46c95..66c8c7c 100644
--- 
a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
+++ 
b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
@@ -183,6 +183,8 @@ public abstract class AbstractReleaseMojo
         {
             String versionlessKey = ArtifactUtils.versionlessKey( 
project.getGroupId(), project.getArtifactId() );
             descriptor.putOriginalVersion( versionlessKey, 
project.getVersion() );
+            descriptor.addProjectPomFile( versionlessKey,
+                                          workingDirectory.relativize( 
project.getFile().toPath() ).toString() );
         }
 
         List<String> profileIds = session.getRequest().getActiveProfiles();
diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
index c423c40..786d7f0 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
@@ -118,7 +118,12 @@ public class PerformReleaseMojoTest
             (PerformReleaseMojo) lookupMojo( "perform", new File( 
testFileDirectory, "perform-without-site.xml" ) );
         mojo.setBasedir( testFileDirectory );
         mojo.setPomFileName( "pom.xml" );
-        
+
+        for ( MavenProject reactorProject : mojo.getReactorProjects() )
+        {
+            reactorProject.setFile( new File( workingDirectory, "pom.xml" ) );
+        }
+
         MavenProject project = (MavenProject) getVariableValueFromObject( 
mojo, "project" );
         setVariableValueToObject( mojo, "session", newMavenSession( project ) 
);
 
@@ -151,6 +156,11 @@ public class PerformReleaseMojoTest
         mojo.setBasedir( workingDirectory );
         mojo.setPomFileName( fileName );
 
+        for ( MavenProject reactorProject : mojo.getReactorProjects() )
+        {
+            reactorProject.setFile( new File( workingDirectory, "pom.xml" ) );
+        }
+
         MavenProject project = (MavenProject) getVariableValueFromObject( 
mojo, "project" );
         DistributionManagement distributionManagement = new 
DistributionManagement();
         distributionManagement.setSite( new Site() );
diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
index 8c1b397..f5ab372 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
@@ -71,6 +71,12 @@ public class PrepareReleaseMojoTest
         setDefaults( mojo );
         mojo.setBasedir( testFile.getParentFile() );
         mojo.setPomFileName( "pom.xml" );
+        
+        for ( MavenProject reactorProject : mojo.getReactorProjects() )
+        {
+            reactorProject.setFile( testFile );
+        }
+
         mojo.session = new MavenSession( null, null, null, null, null, null, 
null, null, null )
         {
             public Properties getExecutionProperties()
@@ -116,6 +122,12 @@ public class PrepareReleaseMojoTest
         setDefaults( mojo );
         mojo.setBasedir( testFile.getParentFile() );
         mojo.setPomFileName( "pom.xml" );
+
+        for ( MavenProject reactorProject : mojo.getReactorProjects() )
+        {
+            reactorProject.setFile( testFile );
+        }
+
         mojo.session = new MavenSession( null, null, null, null, null, null, 
null, null, null )
         {
           public Properties getExecutionProperties(){
@@ -158,6 +170,12 @@ public class PrepareReleaseMojoTest
         setDefaults( mojo );
         mojo.setBasedir( testFile.getParentFile() );
         mojo.setPomFileName( "pom.xml" );
+        
+        for ( MavenProject reactorProject : mojo.getReactorProjects() )
+        {
+            reactorProject.setFile( testFile );
+        }
+        
         mojo.session = new MavenSession( null, null, null, null, null, null, 
null, null, null )
         {
           public Properties getExecutionProperties(){
diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
index a4c6ebb..15f424e 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
@@ -95,6 +95,11 @@ public class StageReleaseMojoTest
         mojo.setBasedir( workingDirectory );
         mojo.setPomFileName( "pom.xml" );
         
+        for ( MavenProject reactorProject : mojo.getReactorProjects() )
+        {
+            reactorProject.setFile( new File( workingDirectory, "pom.xml" ) );
+        }
+        
         MavenProject project = (MavenProject) getVariableValueFromObject( 
mojo, "project" );
         DistributionManagement distributionManagement = new 
DistributionManagement();
         distributionManagement.setSite( new Site() );

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

Reply via email to