- a multi-module, Jenkinsfile-based, maven project.
- builds are triggered via notifications from gitlab, manually or by SNAPSHOT builds of dependencies (per checkbox).
- only the master (and tags) gets deployed to an artifactory.
- every build uses a temp local maven repository - which is swiped afterwards.
- so we don't change the version in branches, as their artefacts never leave their sandbox (workplace directory).
I experience, that the master-build/job triggers (on success) the build of the branches. This makes some kind of sense, as formally the modules depends on the artifact build in the master, but on the other hand, it does not make sense, because the triggered branches-builds/jobs will build these triggering artifacts on their own.
I'm looking for some solution to suppress the triggering of builds by other jobs, that build the very same artifacts (at least according to their maven coordinates), the triggered build will build on their own.
The current workaroud is to change the version in the branches (random or branchname-based), but this seems to me like a hack.
A possible solution is to substract the set of own-generated artifacts from the set of triggering artifacts when deciding if another job should be executed.