Support keeping private maven registry for maven wrapper in only-script mode #32213
Labels
manager:maven-wrapper
Related to the maven-wrapper manager
priority-3-medium
Default priority, "should be done" but isn't prioritised ahead of others
type:feature
Feature (new functionality)
Discussed in #32172
Originally posted by schuch October 28, 2024
When renovate suggests updates to the Maven wrapper, it does not retain hostnames of an internal Maven registry in the
distributionUrl
parameter.The
distributionUrl
parameter is important if the wrapper is used inonly-script
mode, which is the new default.The following wrapper modes1 are available:
only-script
(new default since mvnw 3.32)script
bin
(the old default i think)source
Example of a
wrapper.properties
file withonly-script
mode:Currently renovate scans the
wrapper.properties
file for the Pattern/^(.*?)\/org\/apache\/maven\/wrapper\/
3 to extract the existing registry's fqdn. But this pattern does only match, if the wrapper is used in thebin
mode. (wrapperUrl
property). Renovate then forcefully setsMVNW_REPOURL
torepo.maven.apache.org
which cannot be overridden by the renovate user.I would be nice, if renovate would support retaining the registry hostname for the
only-script
mode, like it does for thebin
mode4.Reproduction
You can see that Renovate is changing the
distributionUrl
. In the example, the public registry URLhttps://repo1.maven.org/maven2
(vs.https://repo.maven.apache.org/maven2
) was used for the test, as the update commandmvn wrapper:wrapper
would otherwise not run successfully with a real private URL. But I think you get the idea, because thedistributionUrl
should have remained stable in this case as well.Footnotes
Documentation about the wrapper modes: https://maven.apache.org/wrapper/#usage-with-or-without-binary-jar ↩
Maven Wrapper 3.3 Release Notes: https://github.com/apache/maven-wrapper/releases/tag/maven-wrapper-3.3.0 ↩
Relevant line of code: https://github.com/renovatebot/renovate/blob/87152d36e1f011fad38eb6fd73ed7f664f3ca0bd/lib/modules/manager/maven-wrapper/artifacts.ts#L188 ↩
Related Issue that lead to introduction of the feature to keep the internal registry hostname in
bin
mode: https://github.com/renovatebot/renovate/issues/20064The text was updated successfully, but these errors were encountered: