The Jenkins Join Plugin allows a job to be run after all the immediate downstream jobs have completed.
But how can I configure a job to be run after all downstream jobs have completed, not only the immediate ones?
This figure shows the jobs triggering flow I expect:
A
|
--+----+------+--
| |
v v
B C
| |
--+--------+-----+---+-- |
| | | |
v v v |
D E F |
| | | |
v | | |
G | | |
| | | |
---+--------+----+----+-------+--
|
v
J
I set Join Trigger on job A to trigger the final job J. However job J is started once B and C are finished, does not wait for jobs D,E,F and G.
In this answer and its comments, it said that the paths can be multiple jobs deep and fingerprints must be correctly used. But I can't figure out how to make it work.