rpm-mock-build job is made to be attached to a dist-git repository. But when build_from_source is set then the job can handle that the project source repository is also a dist-git repository (source + included specfile).
Here the idea is to handle a build_from_source where the source is elsewhere.
https://pagure.io/zuul-distro-jobs/blob/master/f/zuul.d/jobs.yaml#_3
To achieve that in addition to 'build_from_source' var we could have another var 'source'. 'source' is an object that describe the external source such as: { 'clone_target_dir': path where the source land on the testnode, 'clone_url': url to clone the source }
'clone_url' if specified will tell the job to clone 'clone_url' into 'clone_target_dir' if not set, it means the job must have a required-project set (the source) and 'clone_target_dir' set to the directory where zuul has cloned the external source.
We will then support cases where the external source repository is a known project to Zuul and benefit from depends-on. But also if the external source is not attached to Zuul, the job will clone the master branch.
Use cases: periodic job on a fedora dist-git to validate package still build with upstream source code check pipeline job on a dist-git with depends-on on a source known to zuul
Implementation: https://pagure.io/zuul-distro-jobs/pull-request/62
Login to comment on this ticket.