Install GitLab Runner with a cluster management project

Introduced in GitLab 14.0.

Assuming you already have a Cluster management project created from a management project template, to install GitLab Runner you should uncomment this line from your helmfile.yaml:

  - path: applications/gitlab-runner/helmfile.yaml

GitLab Runner is installed by default into the gitlab-managed-apps namespace of your cluster.

Required variables

For GitLab Runner to function, you must specify the following in your applications/gitlab-runner/values.yaml.gotmpl file:

  • gitlabUrl: The GitLab server full URL (for example, https://gitlab.example.com) to register the Runner against.
  • runnerRegistrationToken: The registration token for adding new runners to GitLab. This must be retrieved from your GitLab instance.

These values can be specified using CI/CD variables:

  • CI_SERVER_URL is used for gitlabUrl. If you are using GitLab.com, you don't need to set this variable.
  • GITLAB_RUNNER_REGISTRATION_TOKEN is used for runnerRegistrationToken

The methods of specifying these values are mutually exclusive. Either specify variables GITLAB_RUNNER_REGISTRATION_TOKEN and CI_SERVER_URL as CI variables (recommended) or provide values for runnerRegistrationToken: and gitlabUrl: in applications/gitlab-runner/values.yaml.gotmpl.

The runner registration token allows connection to a project by a runner and therefore should be treated as a secret to prevent malicious use and code exfiltration through a runner. For this reason, we recommend that you specify the runner registration token as a protected variable and masked variable and do not commit them to the Git repository in the values.yaml.gotmpl file.

You can customize the installation of GitLab Runner by defining applications/gitlab-runner/values.yaml.gotmpl file in your cluster management project. Refer to the chart for the available configuration options.