Fix CI/CD Pipeline Flow
- Tier: Premium, Ultimate
- Add-on: GitLab Duo Core, Pro, or Enterprise
- Offering: GitLab.com, GitLab Self-Managed
- Status: Beta
The availability of this feature is controlled by a feature flag. For more information, see the history.
The Fix CI/CD Pipeline Flow helps you automatically diagnose and fix issues in your GitLab CI/CD pipeline. This flow:
- Analyzes pipeline failure logs and error messages.
- Identifies configuration issues and syntax errors.
- Suggests specific fixes based on the type of failure.
- Creates a merge request with changes that attempt to fix a failing pipeline.
The flow can automatically fix various pipeline issues, including:
- Syntax and configuration errors.
- Common job failures.
- Dependency and workflow issues.
This flow is available in the GitLab UI only.
Prerequisites
To use this flow, you must:
- Have an existing failed pipeline.
- Have at least the Developer role in the project.
- Meet the other prerequisites.
- Ensure the GitLab Duo service account can create commits and branches.
Fix the pipeline in a merge request
To fix the CI/CD pipeline in a merge request:
On the top bar, select Search or go to and find your project.
Select Code > Merge requests and open your merge request.
To fix the pipeline, you can either:
- Select the Overview tab and under the failing pipeline, select Fix pipeline with Duo.
- Select the Pipelines tab and in the rightmost column, select Fix pipeline with Duo ( ).
To monitor progress, select Automate > Sessions.
When the session is complete, a comment shows a link to a merge request that contains the fix, or a comment describes possible next steps.
Fix other CI/CD pipelines
To fix a CI/CD pipeline that is not associated with a merge request:
- Select Build > Pipelines.
- Select your failing pipeline.
- In the upper-right corner, select Fix pipeline with Duo.
- To monitor progress, select Automate > Sessions.
What the flow analyzes
The Fix CI/CD Pipeline Flow examines:
- Pipeline logs: Error messages, failed job outputs, and exit codes.
- Merge request changes: Changes that could have caused the failure.
- The current repository contents: For identifying syntax, linting, or import errors.
- Script errors: Command failures, missing executables, or permission issues.