Set up GitLab Duo Workflow
Use the following guide to set up GitLab Duo Workflow.
Prerequisites
Before you can use Workflow:
- Ensure you have an account on GitLab.com.
- Ensure that the GitLab.com project you want to use with Workflow meets these requirements:
- You must have at least the Developer role for the project.
- Your project must belong to a group namespace with an Ultimate subscription and experimental features turned on.
- The project must have GitLab Duo turned on.
- Install Visual Studio Code (VS Code).
- Install and set up the GitLab Workflow extension for VS Code. Minimum version 5.16.0.
- Install Docker and set the socket file path.
Install Docker and set the socket file path
Workflow needs an execution platform like Docker where it can execute arbitrary code, read and write files, and make API calls to GitLab.
If you are on macOS or Linux, you can either:
- Use the automated setup script. Recommended.
- Follow the manual setup.
If you are not on macOS or Linux, follow the manual setup.
Automated setup
The automated setup script:
You can run the script with the --dry-run
flag to check the dependencies
that get installed with the script.
Download the setup script.
wget https://gitlab.com/gitlab-org/duo-workflow/duo-workflow-executor/-/raw/main/scripts/install-runtime
Run the script.
chmod +x install-runtime ./install-runtime
Manual setup
- Install a Docker container engine, such as Rancher Desktop.
- Set the Docker socket path in VS Code:
Open VS Code, then open its settings:
- On macOS: Cmd + ,
- On Windows and Linux: Ctrl + ,
In the upper-right corner, select the Open Settings (JSON) icon.
Add the Docker socket path setting
gitlab.duoWorkflow.dockerSocket
, according to your container manager, and save your settings file. Some examples for common container managers on macOS, where you would replace<your_user>
with your user’s home folder:Rancher Desktop:
"gitlab.duoWorkflow.dockerSocket": "/Users/<your_user>/.rd/docker.sock",
Colima:
"gitlab.duoWorkflow.dockerSocket": "/Users/<your_user>/.colima/default/docker.sock",
Next steps
Docs
Edit this page to fix an error or add an improvement in a merge request.
Create an issue to suggest an improvement to this page.
Product
Create an issue if there's something you don't like about this feature.
Propose functionality by submitting a feature request.
Feature availability and product trials
View pricing to see all GitLab tiers and features, or to upgrade.
Try GitLab for free with access to all features for 30 days.
Get help
If you didn't find what you were looking for, search the docs.
If you want help with something specific and could use community support, post on the GitLab forum.
For problems setting up or using this feature (depending on your GitLab subscription).
Request support