in GitLab 18.x Cloud, you can absolutely integrate with ServiceNow to support:
- ✅ Change Management workflows
- ✅ Incident Management
- ✅ Automated Service Request Fulfillment
However, this requires the use of GitLab’s ServiceNow DevOps Integration App, available via the Atlassian Marketplace and ServiceNow Store.
✅ GitLab ↔ ServiceNow Integration (as of GitLab 18.x)
GitLab provides official, bi-directional integration with ServiceNow DevOps for enterprise-level DevSecOps automation.
🔹 1. Change Management Workflow Integration
✅ What You Can Do:
- Automatically create Change Requests (CRs) in ServiceNow when a pipeline runs or code is merged in GitLab.
- Require ServiceNow approval before deployment.
🧠 Example Use Case:
- MR merged to
main
→ triggersPre-approved Change Request
in ServiceNow → waits for approval → continues deployment.
✅ How to Set Up:
- In ServiceNow:
- Install ServiceNow DevOps plugin
- Install GitLab Integration App from ServiceNow Store
- In GitLab:
- Configure a WebHook or use Custom GitLab CI Job to send pipeline events to ServiceNow.
- Optionally configure via GitLab Compliance Center → Pipeline Execution Policies
- You can also configure a change control gate in
.gitlab-ci.yml
:
approve_change_request:
stage: deploy
script:
- curl -X POST https://servicenow/api/trigger-change
rules:
- if: '$CI_COMMIT_BRANCH == "main"'
Code language: JavaScript (javascript)
🔹 2. Incident Management Integration
✅ What You Can Do:
- Auto-create incidents in ServiceNow when pipelines or deployments fail.
- Link GitLab issues/MRs to ServiceNow incident records.
🔧 Setup:
- Use ServiceNow DevOps Events API
- Configure a GitLab WebHook or CI job to send failure events to ServiceNow
- Tag ServiceNow incidents with commit/MR metadata for traceability
🔹 3. Automate Service Request Fulfillment
✅ What You Can Do:
- Use GitLab pipelines to fulfill service catalog requests (e.g., provision infra, deploy apps)
- ServiceNow → GitLab triggers via MID server or API connector
- GitLab → ServiceNow updates back with logs/status
🔧 Setup:
- Define catalog workflows in ServiceNow
- Trigger GitLab pipelines via:
- API calls (
POST /projects/:id/trigger/pipeline
) - Custom catalog items with Flow Designer
- API calls (
✅ Summary Table (GitLab 18.x Cloud)
Feature | Supported | Setup Method |
---|---|---|
Change Management | ✅ Yes | GitLab DevOps App in ServiceNow + WebHooks |
Incident Management | ✅ Yes | GitLab WebHooks + ServiceNow Events API |
Service Request Fulfillment | ✅ Yes | Catalog Items + GitLab pipeline triggers |
🚀 Official Resources
Here’s a complete, production-ready .gitlab-ci.yml
example that integrates with ServiceNow to:
- 🔧 Create a Change Request via API
- 🕒 Wait for ServiceNow approval
- 🚀 Proceed with deployment only if approved
✅ Prerequisites
- You have a ServiceNow DevOps integration set up.
- You have a ServiceNow API endpoint to:
- Create Change Requests (
/api/devops/create-change
) - Poll status (
/api/devops/change-status
)
- Create Change Requests (
- You have a valid bearer token (stored as GitLab CI variable:
SERVICENOW_TOKEN
)
I’m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I have worked at Cotocus. I share tech blog at DevOps School, travel stories at Holiday Landmark, stock market tips at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at TrueReviewNow , and SEO strategies at Wizbrand.
Do you want to learn Quantum Computing?
Please find my social handles as below;
Rajesh Kumar Personal Website
Rajesh Kumar at YOUTUBE
Rajesh Kumar at INSTAGRAM
Rajesh Kumar at X
Rajesh Kumar at FACEBOOK
Rajesh Kumar at LINKEDIN
Rajesh Kumar at WIZBRAND