Skip to content

A lightweight, extensible webhook handler that forwards Buildkite events to Google Cloud Pub/Sub. Built to provide GCP feature parity with Buildkite's AWS EventBridge integration.

License

Notifications You must be signed in to change notification settings

mcncl/buildkite-pubsub

Repository files navigation

Buildkite PubSub

A webhook handler that securely forwards Buildkite build events to Google Cloud Pub/Sub, enabling event-driven architectures and integrations with your Buildkite pipelines.

Build status

Overview

This service connects Buildkite's webhook system to Google Cloud Pub/Sub, allowing you to:

  • Receive Buildkite build events (status changes, pipeline updates, etc.)
  • Forward events securely to Pub/Sub topics
  • Handle failures gracefully with Dead Letter Queue support
  • Protect against cascading failures with Circuit Breaker pattern
  • Monitor and alert on webhook delivery
  • Filter and process events using Pub/Sub subscriptions
  • Build event-driven workflows and integrations

Prerequisites

Quick Start

# Build and run with Docker
docker build -t buildkite-webhook .
docker run -p 8080:8080 \
  -e PROJECT_ID=your-project \
  -e TOPIC_ID=buildkite-events \
  -e BUILDKITE_WEBHOOK_TOKEN=your-token \
  buildkite-webhook

Configure your Buildkite webhook to point to your deployed service URL.

Development

# Run locally (requires Go 1.24+)
go run cmd/webhook/main.go

# Run tests
go test ./...

# Run tests with Docker
docker compose --profile ci up test

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

MIT License - see LICENSE file for details.

About

A lightweight, extensible webhook handler that forwards Buildkite events to Google Cloud Pub/Sub. Built to provide GCP feature parity with Buildkite's AWS EventBridge integration.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •