I have a multi-level assembly pipeline with a top-level connection ( test_Join ) and a sublevel ( test_Build1_Join ) (see the figure below).
My test_Join job requires artifacts from test_Build1_Join and test_Build2 . I copy them by filtering by a parameter named PL_BUILD_NUMBER , which is passed downstream from the test_Start job. This works (see this SO post )
My problem
Sometimes a “top-level” connection starts before a “sub-level” joins, as in the image below. This means that build artifacts are not yet available, and I get the following error:
Copied 1 artifact from "test_Build2" build number 33 Unable to find a build for artifact copy from: test_Build1_Join Build step 'Copy artifacts from another project' marked build as failure Notifying upstream projects of job completion Finished: FAILURE
Connections are made using the plugin “Join trigger”, with options “start post-assembly when configuring the connection → Trigger with parameterization to other projects”.
What is the best way to synchronize the entire pipeline? What is the standard practice?

source share