environment create deployments automatically, so projects that release with GitLab CI/CD can connect without changing their pipelines. This works for both GitLab.com and self-managed GitLab.
In Flashduty On-call
- In the Flashduty console, go to Integration Center → Change Events
- Select GitLab and enter an integration name
- To assign changes to specific channels, add rules under the integration’s Routes that match labels such as
projectorenvironment - Click Save and copy the generated Push URL
Configure GitLab
1
Open webhook settings
- Project: go to the project’s Settings → Webhooks and click Add new webhook
- Group (GitLab Premium or higher): go to the group’s Settings → Webhooks and click Add new webhook; deployments from every project in the group are sent
2
Enter the Push URL
- URL: paste the complete Flashduty integration Push URL
- Signing token and Secret token: not needed; Flashduty authenticates the request with the
integration_keyin the Push URL
3
Select events
- Under Trigger, select only Deployment events and clear the default Push events
- Keep Enable SSL verification selected and click Add webhook
What one change is
deployment_id is unique within one GitLab instance. To connect several GitLab instances (for example GitLab.com and a self-managed instance), create one integration per instance.
Status mapping
Done, Failed and Canceled are end states; Flashduty records the change’s end time. GitLab only sends events for blocked, running, success, failed and canceled.
These deliveries get a success response but create no change: event types other than Deployment (Push, Pipeline and so on), and the protected-environment approval events
approved and rejected. An approval event describes the approval record, not the deployment itself: after an approval GitLab sends running when the deployment starts, and after a rejection it sends failed; the change status follows those deployment events.
Change content
Labels can be used for routing and for filtering the change list:
FAQ
Why are no deployment changes coming in?
Why are no deployment changes coming in?
- Make sure the webhook has Deployment events selected. With only Push events selected, no changes are created
- Check the deliveries and Flashduty’s responses under Recent events on the GitLab webhook edit page
- Only GitLab deployments produce deployment events, for example a CI/CD job that declares an
environment, or a call to the Deployments API
Does resending a request in GitLab (Resend Request) record it twice?
Does resending a request in GitLab (Resend Request) record it twice?
No. An event with the same status and the same time is recorded only once.
Why does a rejected deployment show as Failed?
Why does a rejected deployment show as Failed?
After a deployment is rejected, GitLab sends
failed; Flashduty records the deployment status as Failed, with the state label set to failed.The push returns an InvalidParameter error?
The push returns an InvalidParameter error?
unsupported deployment status: Flashduty received a deployment status it does not support yet; contact usdeployment_id is missing: the payload is incomplete; make sure it comes from a native GitLab webhook