multi-module-maven-release-plugin
multi-module-maven-release-plugin copied to clipboard
Considering a multi-module project as a single unit to release or not
Considering a multi-module project that defines 2modules (A, B), the B is a multi-module itself (with Bx, By & Bz as sub-modules) And the 'multi-module-maven-release-plugin' is declared in the parent pom & in the pom of B module as well What we can expect during a release after just a change in the sub-module Bx, is a release of the whole module B with the same version & a single tag ! Which is not the behavior of the releaser plugin, as it releases just Bx module so now it has a higher version of it's parent module B!
The idea is to have the hability to define the scope of something releasable (whether it is a simple project or a multi-module project)
I've just found this plugin and think it's great. It covers our needs except for this same issue. We need to force the release for all modules event if just one of them changed, having all the modules version aligned (the same way all spring framework or spring boot modules are aligned).
Maybe using the maybe using a new parameter such as "-DreleaseAllModules"... maybe using a plugin configuration setting inside the pom.xml...
When doing this kind of multimodule release there are some posible behaviours:
- Allow different versions: just release each module with its corresponding version.
- Force the same version to all modules: fail if modules versions are not aligned. Again, these 2 behaviours could be parametrized.
And yes, when releasing all modules with this feature having just 1 tag for the whole multimodule release would be nice (although not as important as releasing all modules)!
I've created this same feature request for a similar plugin (a fork of this) here: https://github.com/SourcePond/release-maven-plugin-parent/issues/10