In Flashduty On-call
- In the Flashduty console, go to Integration Center → Change Events
- Select Buildkite and enter an integration name
- To assign changes to specific channels, add rules under the integration’s Routes that match labels such as
pipelineorref - Click Save and copy the generated Push URL
Configure Buildkite
1
Add a webhook notification service
In your Buildkite organization, go to Settings → Notification Services and click Add next to Webhook. You need organization admin permission.
2
Enter the Push URL
- Description: a name you can recognize, such as
Flashduty - Webhook URL: paste the complete Flashduty integration Push URL
- Token: keep the default; Flashduty authenticates with the
integration_keyin the Push URL
3
Select events and pipelines
- Under Events, select
build.scheduled,build.running,build.failing,build.finished, andbuild.skipped - Under Pipelines, choose the pipelines to send (all, specific pipelines, or the pipelines of specific teams or clusters)
- To send only some branches, enter branch patterns under Branch filtering; leave it empty for all branches
- Click Add Webhook Notification to save
What one change is
One build is one change. Its change identifier (change_key) is the build’s
build.id, a UUID unique across Buildkite. Every build.* event of the same build updates the same change; two builds of the same pipeline and branch are two changes, and a rebuild creates a new build and a new change.
Status mapping
Flashduty takes the status from
build.state in the delivery:
Done, Failed, and Canceled are end states; Flashduty records the change’s end time when one arrives. A build waiting on a block step is delivered as
build.finished with state passed and blocked set to true; Flashduty records it as Planned and updates it to the final status when the build continues and finishes.
These deliveries return success but create no change: ping and other non-build events such as job.*, agent.*, and cluster_token.*.
Change content
Use labels for routing and for filtering the change list:
FAQ
Why are no build changes arriving?
Why are no build changes arriving?
- Make sure the webhook has the
build.*events selected;job.*oragent.*events alone create no changes - Make sure the build’s pipeline and branch are within the webhook’s Pipelines and Branch filtering settings
- At the bottom of the webhook settings page, click Load recent requests to see the last 20 deliveries and Flashduty’s responses
Does a repeated delivery record a duplicate?
Does a repeated delivery record a duplicate?
No. An event with the same state and time is recorded only once.
Why does a delivery return InvalidParameter?
Why does a delivery return InvalidParameter?
unsupported build.state: Flashduty received a build state it does not support yet; contact usbuild.id is missing: the delivery is incomplete; make sure it comes from Buildkite’s webhook notification service