I have a big Maven multi-module build set up in my Jenkins. It is set up for incremental builds.
When triggered, it parses all the POMs and figures out what it needs to build.
It is currently set up to trigger on SCM changes.
I would like to make this build so that I can do the following:
I mention the second point because from my looking at the documentation, this appears to simply poke the general build and let it do its thing. (I might be wrong.) I'd rather have it tell Jenkins exactly what has changed and have Jenkins just "know" what modules those changed repository paths map to, so that Jenkins doesn't have to do polling or extra pom.xml parsing to figure it out.
I am quite prepared to have someone who has been through this war to tell me, look, just go set up the Subversion commit hook and that's as good as you're going to get, but I'm asking this question in case there's a better recipe.
This facility does not yet apparently exist in Jenkins when working with Maven 3 builds.
Did you tried the Incremental build - only build changed modules option in Build section in project configuration? In this case the repository will notify Jenkins of a change submitted, the SCM plugin will check-out the files and the Maven plugin will try to guess which modules needs a rebuild. It works in most cases in my environment, although it's not 100% proof.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With