It would be nice if the scm-trigger could – when no changes are found – trigger scm-triggers for downstream projects.
Consider a chain of jobs A -> B -> C, coupled via upstream or downstream relationships.
It is currently hard to express how to build projects exactly once by scm polling, e.g.
- if A has changes, build A and trigger its downstream projects
- else if A has no changes, and B has changes, build B and trigger its downstream projects
- else if B has no changes and C has changes, build C (and trigger any further downstream projects ad finitum)
You would need to carefully set timing of scm polling for the nested jobs and setup locks to prevent concurrent/multiple builds.
OTOH, if the scm trigger would propagate the scm checks to downstream jobs in case there are no changes for the current job, one would only need to setup scm polling for the most upstream job.
This would save lots of resources by not building projects multiple times due to scm polling triggers and downstream triggers.