GitHub Event Payload Forwarding

(Original thread on “is this possible?” here, no responses leaves me hoping that it can exist if it doesn’t already)

TLDR; can we have the GitHub Events JSON exposed to the pipelines that it triggers?

Hey Buildkite team, quite happy with this product so far. Our team is onboarding a large organization and this has all of the power we lacked in our old stack, and some things we didn’t even think to want before we saw it here!

I appreciate dynamic pipelines in particular. Their power introduces a new world of capabilities including advanced support for tailored workflows on a pipe-by-pipe basis. However, I’ve also recognized one major limitation in the integration between GitHub and Buildkite. I’m also thinking of this in terms of GitHub, but the idea could have much greater compatibility than just the one platform.

I would love to see pipeline-level exposure to the JSON payload that GitHub sends to Buildkite. It’s so rich and full that the most advanced workflows could be custom-tailored around it. So long as a users’ Buildkite agent has access to the jq utility as well, it could work with the metadata in bash scripts.

My particular example use case involves “I only want to do X when a merge upon master branch occurs”. I know there are other ways to achieve this, but the easiest path that I tried to explore was “use the JSON blob from the request to determine what exactly the event is doing and to act accordingly”. I can’t seem to do this yet. I’m convinced it would be awesome.

I could be wrong. And there are other ways to achieve this, e.g. an interceptor service. But maybe you’ll like the idea enough to add it?