Overview
The GitLab integration allows Steadwing to analyze your GitLab repositories and track deployments, commits, merge requests, and CI/CD pipelines. This enables comprehensive root cause analysis by correlating production incidents with recent code changes, helping you identify which deployment or commit may have introduced an issue.Why Use GitLab with Steadwing?
Deployment Tracking
Correlate incidents with recent deployments and releases
Code Change Analysis
Identify which commits and merge requests may have caused production issues
CI/CD Pipeline Insights
Monitor pipeline failures and correlate them with incidents
Timeline Correlation
Link incidents to specific MRs, commits, and deployment times
Benefits
- Faster Root Cause Identification - Quickly pinpoint which code change triggered an incident
- Automated Code Analysis - Steadwing reviews relevant code sections during RCA
- Deployment Context - Understand what was deployed when an incident occurred
- Pipeline Failure Detection - Identify CI/CD pipeline issues that may have contributed to incidents
- Better Solution Proposals - Get context-aware fixes based on your actual codebase
- Historical Insights - Track patterns between code changes and incidents over time
Setup Instructions
Step 1: Connect GitLab OAuth
- Navigate to Steadwing Settings
- Find the GitLab integration card
- Click the Connect button
- You will be redirected to GitLab’s authorization page
- Click Authorize to complete OAuth
Step 2: Grant Repository Access
After completing OAuth, configure which repositories Steadwing can access:- In GitLab, go to Settings → Applications → Authorized Applications
- Find Steadwing in the list
- Configure repository access permissions
- Steadwing will now have access to track changes in your selected repositories
How GitLab Integration Works
Automatic Event Tracking
Steadwing automatically monitors and tracks:- Commits - Every commit pushed to your repositories
- Merge Requests - MR merges and their associated changes
- Releases - Tagged releases and their deployment times
- CI/CD Pipelines - Pipeline runs, failures, and job statuses
- Deployments - Deployment events via GitLab CI/CD
Code Analysis
Steadwing can:- Review relevant files and functions
- Identify potentially problematic changes
- Suggest code-level fixes
- Link incidents to specific lines of code
- Analyze merge request diffs
Configuration
Required Permissions
The GitLab integration requires:- read_api - Read access to API endpoints
- Read repository contents
- Read commit history
- Read merge request data
- Read pipeline information
- read_repository - Repository access
- Clone and read repository contents
- Access file contents and history
Repository Access
You can control which repositories Steadwing can access:- Go to GitLab Settings → Applications → Authorized Applications
- Find Steadwing in the list
- Click Edit to modify permissions
- Adjust repository access settings
- Save changes
Supported Features
Code Investigation
- Fetch file contents from repositories
- Analyze commit history and diffs
- Review merge request changes
- Track code changes over time
CI/CD Pipeline Monitoring
- Monitor pipeline runs and failures
- Identify failed jobs and stages
- Correlate pipeline failures with incidents
- Track deployment events
Merge Request Analysis
- Review recent merge requests
- Analyze MR diffs and changes
- Identify potentially problematic merges
- Track MR approval and merge times
FAQs
Does Steadwing work with self-hosted GitLab instances?
Does Steadwing work with self-hosted GitLab instances?
Currently, Steadwing supports GitLab.com (SaaS). Support for self-hosted GitLab instances is planned for a future release.
Can I limit Steadwing's access to specific repositories?
Can I limit Steadwing's access to specific repositories?
Yes, you can configure repository access permissions in GitLab’s application settings. Steadwing will only access repositories you explicitly grant permission to.
Does Steadwing modify my code or create commits?
Does Steadwing modify my code or create commits?
No, Steadwing only has read access. It analyzes your code but never modifies, commits, or pushes changes to your repositories.
What happens if I add new repositories later?
What happens if I add new repositories later?
You can grant access to new repositories at any time by updating the application permissions in GitLab settings. Steadwing will automatically start tracking changes in newly authorized repositories.
Does Steadwing work with private repositories?
Does Steadwing work with private repositories?
Yes, Steadwing works with both public and private repositories. The integration respects GitLab’s permission model and only accesses repositories you explicitly authorize.
How does Steadwing handle nested groups and subgroups?
How does Steadwing handle nested groups and subgroups?
Steadwing supports GitLab’s nested group structure. When analyzing repositories, it correctly handles project paths in the format
group/subgroup/project and uses URL-encoded project IDs for API calls.Can Steadwing analyze CI/CD pipeline failures?
Can Steadwing analyze CI/CD pipeline failures?
Yes, Steadwing monitors CI/CD pipeline runs and can correlate pipeline failures with incidents. This helps identify if a deployment or build issue contributed to production problems.
How do I disconnect the GitLab integration?
How do I disconnect the GitLab integration?
Go to Settings, find the GitLab integration, and click Disconnect. You should also revoke access in GitLab Settings → Applications → Authorized Applications.