- Pipeline runs: each run becomes one Flashduty change, from the run starting to it succeeding, failing, or being canceled.
- Classic release stage deployments: one deployment of a release to one stage becomes one change, from the deployment starting to it completing.
In Flashduty On-call
- In the Flashduty console, go to Integration Center → Change Events
- Select Azure DevOps and enter an integration name
- To assign changes to specific channels, add rules under the integration’s Routes that match labels such as
pipeline,project, orenvironment - Click Save and copy the generated Push URL
In Azure DevOps
1
Create a service hooks subscription
- Open the project and go to Project settings → Service hooks
- Click Create subscription, select the Web Hooks service, and click Next
2
Select the trigger events
Create one subscription per event as needed:
Use Filters to limit a subscription to a pipeline, release definition, or stage. Do not subscribe Build completed or Run stage state changed; Flashduty ignores them.
3
Enter the push URL
- URL: paste the full push URL of the Flashduty integration
- Basic authentication username / password: leave empty; Flashduty authenticates with the
integration_keyin the push URL - Resource details to send: select All. With Minimal or None the delivery lacks the run id, release, and stage name, and Flashduty answers 400
- Messages to send and Detailed messages to send: keep the defaults. Flashduty uses the message Text as the change description. For release events, which have no link field, it uses the link in the Markdown message. If a format isn’t sent, the description or link is empty
- Click Test to verify, then Finish
How changes are merged
Azure DevOps run ids are unique only within an organization. Create a separate Flashduty integration for each Azure DevOps organization.
Status mapping
Pipeline runs (Run state changed)
Release stage deployments
A state value Flashduty does not recognize makes the delivery answer 400 (
unknown run state, unknown run result, unknown deployment status). The raw state is kept in the state label of the change event.
These deliveries return success and record nothing:
- Build completed, Run stage state changed, and any other event type
- The Test delivery of Service Hooks
Change content
Use labels for routing and for filtering the change list:
Run events carry no project name, so pipeline runs have no
project label.
FAQ
Does a repeated delivery create a duplicate record?
Does a repeated delivery create a duplicate record?
No. When Azure DevOps retries a delivery, the content is identical to the original and Flashduty records it once.
Why does Build completed produce no change?
Why does Build completed produce no change?
Flashduty records Pipelines run state events (Run state changed) and Release deployment events. Classic build pipelines do not send Run state changed; use YAML pipelines to have them recorded.
Why does redeploying a release to the same stage not create a new change?
Why does redeploying a release to the same stage not create a new change?
Release deployment events carry no deployment id, so Flashduty identifies a deployment by release and stage; a redeployment updates the same change.
The delivery returns an InvalidParameter error?
The delivery returns an InvalidParameter error?
unsupported …orunknown …: Flashduty does not support this status value yet. Contact usresource.… is missing: Resource details to send is not set to All, or the push does not come from Azure DevOps Service Hooks