Greetings!
I'm interested in sprucing up my JJB template[0] so that the following
happens:
0) When a pull request is opened, a job is triggered that builds a
container with the contents of the pull request. The results of this
are reported to the pull request.
1) Success of that first job triggers a variety of jobs that all use
that container and test different things. I would like these to run
in parallel and I would like them to each also report back to the
pull request. I would like each of these to have their own
"status-context" that describes what they tested, if that makes sense.
I see that there are a variety of ways to have jobs trigger other jobs,
but what I don't know is how the subsequent jobs can set the
"status-context" since they wouldn't be triggered from the pull request
itself (outside of me manually using curl to GitHub, which I'd rather
not do).
Is there a nice clean/recommended way to achieve this with JJB?
The way we do this in stdci [1] for oVirt, RHV and CNV is to:
1. Manage complex flows with multiple tests using pipelines rather than jobs calling in another.
2. Use the pipeline GitHub notify plugins [2] to send different notifications from different tests.
Setting up pipelines with JJB is quite simple, but you can also use a Jenkinsfile which can make JJB redundant.
HTH,
Barak.