How to trigger a build when a pull request message/title change

Is there a way to do this? You can specify that the github webhook should fire under these conditions, but I don’t see a way to make buildkite actually execute the pipeline when this occurs. Thanks.

Hiya! No sorry, we don’t have a way to trigger directly based on a pull request title change. You’re right that GitHub send a webhook, but it’s not one we consider a code change, and so doesn’t trigger a build. We try to focus on the most widely application use cases, but we’d be keen to hear yours and see if there’s something we could do.

You could build a little Heroku or Lambda endpoint which receives GitHub webhooks and starts a build via our API if you have a specific need?

Hi - we’re using danger.js (https://github.com/danger/danger-js) to automate conventions regarding code review, including enforcing some content that we require in our pull request names and messages. So there’s no workaround to get this to trigger on message/title updates other than implementing something outside of buildkite?

1 Like

I think one way to do this is to write a danger plugin (https://danger.systems/js/usage/extending-danger.html) that looks at changed files (https://danger.systems/js/reference.html#JSONDiffValue). When there is a title/body change, use our REST API to create a build.

Hope this helps!

Hmm, I’m not sure that’s quite enough to notice when a pull request title/body changes independent of a code change.

Triggering a build to lint pull request details separately from code changes is a great suggestion! I’m not sure we can ship something to make it work out of the box for you immediately, but we do have a neat github action:

You could have a workflow which runs on pull request title/body changes which uses this action to trigger a buildkite build to then run danger. Sorry it’s a bit kludgey, but I think it’s the best way to hook up this specific use case for now.

Thanks! The pipeline action trigger looks like it may be the best option. Are the docs for the action up to date though? All the github documentation indicates workflows must be yaml, and must be stored in .github/workflows.

I got this working but had to fork trigger-pipeline-action and make some changes to how it parses the github webhook, thanks for the help.

Eep, sorry it’s not up to date @james-heap! We don’t use it very often.

Could we merge those updates in to make it easier or yourself and potential future folks?