Co-authored-by: Rhys Arkins <rhys@arkins.net>
GitLab
Authentication
First, create a Personal Access Token for the bot account.
If you are using a Group access token, the token must have Developer role or higher permissions in order to create issues and merge requests. The token must have Maintainer permissions in order to perform Automerge.
For real runs, give the PAT these scopes:
read_userapiwrite_repositoryread_registry(only if Renovate needs to access the GitLab Container registry)
For dry runs, give the PAT these scopes:
read_userread_apiread_repositorywrite_repository(when using autodiscover)read_registry(only if Renovate needs to access the GitLab Container registry)
Let Renovate use your PAT by doing one of the following:
- Set your PAT as a
tokenin yourconfig.jsfile - Set your PAT as an environment variable
RENOVATE_TOKEN - Set your PAT when you run Renovate in the CLI with
--token=
Remember to set platform=gitlab somewhere in your Renovate config file.
If you're using a private GitLab container registry, you must:
- Set the
RENOVATE_HOST_RULESCI variable to[{"matchHost": "${CI_REGISTRY}","username": "${GITLAB_USER_NAME}","password": "${RENOVATE_TOKEN}", "hostType": "docker"}]. - Make sure the user that owns the
RENOVATE_TOKENPAT is a member of the corresponding GitLab projects/groups with the right permissions. - Make sure the
RENOVATE_TOKENPAT has theread_registryscope.
Features awaiting implementation
- The
automergeStrategyconfiguration option has not been implemented for this platform, and all values behave as if the valueautowas used. Renovate will accept the Merge Request without further configuration, and respect the strategy defined in the Merge Request, and this cannot be overridden yet
Server version dependent features
We use the GitLab version API to fetch the server version.
You can use the experimental feature flag RENOVATE_X_PLATFORM_VERSION to set a specific server version.
By setting the server version yourself, you save a API call that fetches the server version.
- Use
Draft:MR prefix instead ofWIP:prefix sincev13.2.0 - Do not truncate Markdown body to 25K chars since
v13.4.0 - Allow configure reviewers since
v13.9.0
Multiple merge request assignees
Due to licensing restrictions multiple assignees are only available in GitLab Premium self-managed, GitLab Premium SaaS, and higher tiers. Because of a safeguard in GitLab's API if multiple assignees are set, but not available to the project, only the first assignee will be applied.