Hi,
TL;DR:
Do you know if there is a plugin already that allows to schedule building of jobs according to their dependencies?
i.e. I have three jobs A, B and they both (conditionally) trigger build C. Is there a plugin that given jobs A, B, C figures out the right build order and schedules them in the correct order? In this case the correct order is A, B should be run in parallel and once they are both done build C should be triggered.
FULL Problem description:
I have two sets of build types: CI and FULL, CI builds are incremental builds that get build when there is an SCM change. FULL builds happen nightly and they include cleaning up workspaces.
Once a CI build is finished I want it to trigger builds that depend on it.
I do not want to trigger dependent builds when I am building FULL build. This is because single build can have multiple dependencies, and I do not want multiple FULL builds of the same job to be triggered.
So my current solution is to configure conditional build triggering (if BUILD_TYPE=CI then builds that depend on the current build are triggered).
For nightly build I am using modified build flow plugin but I need to specify dependencies again in build flow DSL. So currently I need to maintain information about the dependencies in two places (build flow DSLs and individual jobs configuration). I want to avoid this duplication and I the information about the dependencies is already in Dependency Graph so I need a piece of code that just schedules the builds in the correct order.
I am happy to write a plugin to do this but this email is to ensure that it is not there yet. Also some technical advice about if this should be a new plugin or an extension to some other plugin would be appreciated .
Regards.
Jacek Tomaka