The one way to integrate with Jenkins it to make HTTP request (as build step) to trigger a build. That's absolutely valid.
I would like to propose another way:
- we call .../notifyCommit url with commit details on Jenkins
- that would affect any job, that have polling enabled to start a build with that commit
Of course Jenkins host and credentials (username, api token) needs to be stored as Harbormaster configuration for this to work.
Here we are not triggering Jenkins build directly so there is no way for Jenkins to know how to contact Phabricator back, but that's ok for now.
I can implement proposed functionality.
In my fork I've implemented Conduit API call that accepts repository.callsign, jenkins.jobName and jenkins.buildNumber so Jenkins can associate it's build with particular commit. If needed we can figure out the build with that commit as well, but that won't be part of this task.