Hi, I'm trying to create a new set of pipeline builds for a number of modules.
The modules are built with gradle and have dependencies between themselves.
I'd like to leverage the fingerprinting feature in Jenkins to obtain upstream and
downstream relationship created automatically, but I'm not clear about how it
woud exactly work. My issue is with the fingerprint function not indicating to
Jenkins if an artifact is an actual dependency or a product the build.
For example, in a simple case:
Build 1 builds artifact A using two external dependencies X and Y.
So, build 1 fingerprints A, X and Y.
Build 2 builds artifact B using A, and it transitively dependends on X and Y.
I understand that by fingerprinting A, B, X and Y Jenkins will set this as a downstream
build of build 1.
Build 3 builds an artifact C totally unrelated to builds 1 and 2, but it still depends
on X and Y. But, since X and Y have been fingerprinted in builds 1 and 2, won't
Jenkins record this as a downstream job of both build 1 and 2? Or am I missing
something here? I expected there would be a way to tell to Jenkins that
artifacts X and Y have not been created by build 1 and 2, but the fingerprint
function doesn't seem to be accepting any option.