[ 
https://issues.apache.org/jira/browse/MRELEASE-1042?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17081315#comment-17081315
 ] 
Arnaud Heritier commented on MRELEASE-1042:
-------------------------------------------

I created this projects which is reproducing the issue as soon as you have some 
activeProfiles in your user settings

[https://github.com/aheritier/MRELEASE-1042]

Running the build in debug, you will see that the release:perform do not add 
the foo and bar profiles

I think I start to understand where the problem is but I am not an expert 
enough in this plugin to have a strong opinion.

With the new architecture the RunPerformGoalsPhase 

[https://github.com/apache/maven-release/blob/master/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/RunPerformGoalsPhase.java#L55]

is taking the arguments to pass to the build from 
AbstractRunGoalsPhase#getAdditionalArguments

[https://github.com/apache/maven-release/blob/master/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/AbstractRunGoalsPhase.java#L100]

but this one is taking its profiles only from the 
releaseDescriptor.getActivateProfiles() and completely ignores the mojo 
configuration and its releaseProfiles

In the release descriptor (exec.activateProfiles) I have effectively only my 
settings profiles because the "release:prepare" mojo do not see the 
"releaseProfiles" config entry AFAIK

Thus when the release.properties is generated we are supposed to add the 
"releaseProfiles" but "getAdditionalProfiles()" returns null in the prepare 
Mojo (it's only implemented in perform) thus we completely lost the info

[https://github.com/apache/maven-release/blob/master/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java#L191-L208]

One solution could be to let the perform mojo see (implement) the 
releaseProfiles config argument to allow it to store it in the 
release.properties which is used by perform.

Or the perform mojo has to be reworked to append its releaseProfiles config to 
the getActivateProfiles()

Not sure, if it makes sense for you. 

[~rfscholte], [~olamy], [~hboutemy] I am removing myself as assignee as I am 
not sure to be able to fix it properly with my limited knowledge, at least 
without some guidance

 

 

> releaseProfiles get overriden by activeProfiles
> -----------------------------------------------
>
>                 Key: MRELEASE-1042
>                 URL: https://issues.apache.org/jira/browse/MRELEASE-1042
>             Project: Maven Release Plugin
>          Issue Type: Bug
>          Components: perform
>    Affects Versions: 3.0.0-M2
>            Reporter: Arnaud Heritier
>            Assignee: Arnaud Heritier
>            Priority: Major
>
> I tried to release a project with 3.0.0-M2 and potentially it is another 
> problem related to MRELEASE-1038 [~rfscholte] [~olamy]
>  
> In our corporate POM we have a pluginManagement entry:
> {code:java}
> <plugin>
>   <artifactId>maven-release-plugin</artifactId>
>   <version>2.5.3</version>
>   <configuration>
>     <mavenExecutorId>forked-path</mavenExecutorId>
>     <useReleaseProfile>false</useReleaseProfile>
>     <releaseProfiles>cloudbees-internal-release</releaseProfiles>
>   </configuration>
> </plugin>
> {code}
> My project extends it and has no settings related to the release plugin
> In my user settings I have
> {code:java}
>   <activeProfiles>
>     <activeProfile>cloudbees-internal-deploy</activeProfile>
>     <activeProfile>cloudbees-snapshots</activeProfile>
>     <activeProfile>apache-staging</activeProfile>
>   </activeProfiles>
> {code}
> Then I release my project using 3.0.0-M2 with
> {code:java}
>  mvn org.apache.maven.plugins:maven-release-plugin:3.0.0-M2:prepare 
> org.apache.maven.plugins:maven-release-plugin:3.0.0-M2:perform
> {code}
> The perform step is taking my user profiles but not the ones from 
> "releaseProfiles"
> {noformat}
> [INFO] Executing: /bin/sh -c cd /Users/arnaud/some/path/target/checkout && 
> /Users/arnaud/.asdf/installs/maven/3.6.3/bin/mvn -s 
> /var/folders/bw/j0tmy8p52szfms6c7qb0tx2r0000gn/T/release-settings4094445863857985100.xml
>  -f pom.xml deploy -P 
> cloudbees-internal-deploy,cloudbees-snapshots,apache-staging -f 
> pom.xml{noformat}
> Not sure if it could be because I call the release plugin with the full GAV 
> but it is strange ...
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to