Comments (4)
Hi there. I've never really used Git sub-modules so I don't really understand what would be required to get it working, or what the high level rules would be. How do you think they should work? For example should they just be ignored when it comes to releasing?
from multi-module-maven-release-plugin.
We have played around with the plugin and submodules and maven/git submodules are used nicely for the release algorithm (increasing of "build number" etc.).
However, what does not work:
- Tags are set in the (git) parent module where I would like to see them on the (git) sub module scope
- The plugin currently cannot check out the modified pom.xml files to their initial state again.
I think the latter can be easily solved by checking if the pom.xml was changed in a sub module. BTW: As far as I can see the modified pom.xml is only used for building/releasing with the "final" version. Would it be possible to just create a tmp.pom file (as copy from pom.xml with the local modifications) and delete it afterwards without even touching the original pom.xmls?
The first issue probably needs some more investigation: If sub modules are used, the tags need to be applied to the sub modules.
You may use the following project with sub modules to see my problem:
git clone --recursive -b feature/submodules-poc ssh://[email protected]/dukecon/dukecon_server_reactor
cd dukecon_server_reactor
mvn releaser:release
Everything works well until you run into the error with the POMs which cannot be restored. And you will also see the tags afterwards:
git tag -l
dukecon-html5-client-1.1.0
dukecon-reactor-1.0.0
dukecon-server-1.1.0
dukecon-server-api-1.1.0
dukecon-server-springboot-1.1.0
cd dukecon_server/
git tag -l
All tags in the master/reactor project but none in the sub projects!
from multi-module-maven-release-plugin.
I second this feature.
Currently i'm building a huge project(27 git repo's) and each repo has it's own parent pom.
What i'm looking to do is create a Parent Repo, and all 27 component repo's would be submodules.
Then i'd create an Aggregate pom in the parent, which would point to the submodules and then it'd build for me all in one maven build. Instead of what i do currently which is build them in seperately calculated order.
@danielflower submodules, imo, is worth looking into :). Great work on the plugin!
from multi-module-maven-release-plugin.
I still don't have personal experience with sub-modules, so I probably won't work on this myself. But if anyone has the time, then it wouldn't be too hard to add a sample test project consisting of some submodules, and once you have a test the implementation is probably simple enough.
BTW: As far as I can see the modified pom.xml is only used for building/releasing with the "final" version. Would it be possible to just create a tmp.pom file (as copy from pom.xml with the local modifications) and delete it afterwards without even touching the original pom.xmls?
That is a really good idea whether submodules are used or not. I know when running mvn
you can specify a non-default pom location, but I wonder if it has any other consequences.
from multi-module-maven-release-plugin.
Related Issues (20)
- Unable to release using github actions. HOT 1
- Test cases have external dependency on M2_HOME environment variable being set
- Use latest version from commit history instead latest greatest for unchanged modules HOT 3
- Use Maven Wrapper HOT 4
- Add option to release with untracked files HOT 3
- HTTPS authentication does not work similar to that of the SCM plugin
- The releaser:release goal does update the version although NoChangesAction is set to ReleaseNone
- Azure DevOps needs separate documentation
- Need documentation or mechanism for re-building a release tag HOT 1
- how to use ${revision} of flatten-maven-plugin together HOT 2
- Howto create javadoc and sources jars wirh the release HOT 1
- Question: Precommit hook for tag creation fails but build continues?
- Aggregator and module POMs at root folder
- Git SSH authentication failing HOT 2
- [deploy] [3.6.1] Cannot release project with submodules with dependency HOT 5
- releases module with fixed dependency version HOT 3
- Speed up integration tests HOT 3
- Release dependent modules only for certain scopes HOT 1
- Jenkinsfile HOT 2
- Local Plugin dependency not resolved when using -Snapshot HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from multi-module-maven-release-plugin.