A webhook handler that securely forwards Buildkite build events to Google Cloud Pub/Sub, enabling event-driven architectures and integrations with your Buildkite pipelines.
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
- Google Cloud Project with Pub/Sub enabled
- Buildkite organization with webhook configuration access
# 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-webhookConfigure your Buildkite webhook to point to your deployed service URL.
# 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 testContributions are welcome! Please see CONTRIBUTING.md for guidelines.
MIT License - see LICENSE file for details.