GitLab Helm chart 5.0

Along with the 14.0 release of GitLab, we have bumped the chart version to 5.0.

Summary of major changes

Upgrade path from 4.x

In order to upgrade to the 5.0 version of the chart, you first need to upgrade to the latest 4.12.x release of the chart. Check the version mapping details for the latest patch.

If you don’t first upgrade to the latest 4.12.x patch, you will see the following error from helm upgrade

Error: UPGRADE FAILED: Job failed: BackoffLimitExceeded

You can then confirm you are in this situation by looking for pods in error with the text gitlab-upgrade-check in the name.

If you check the logs for those pods will see the version upgrade error message:

It seems you are upgrading the GitLab Helm chart from X (GitLab X) to 5.0.0 (GitLab 14.0.0).
It is required to upgrade to the latest 4.12.x version first before proceeding.
Please follow the upgrade documentation at https://docs.gitlab.com/charts/releases/5_0.html
and upgrade to GitLab Helm chart version 4.12.x before upgrading to 5.0.0.

Upgrade from 4.12.x

Please follow the upgrade steps for 5.0 release.

Major Changes

PostgreSQL

As part of the 5.0.0 release of this chart, we upgraded the PostgreSQL version from 11.9 to 12.7. This is not a drop in replacement. Manual steps need to be performed to upgrade the database.

The 5.0 upgrade steps includes the manual steps required during upgrade.

note
Note that PostgreSQL 12 is the minimum required PostgreSQL version in GitLab 14.0 (June 2021). PostgreSQL 11 is no longer supported by GitLab 14.0 and later.

Unicorn webserver

In version 4.0.0 of the chart the use of Unicorn as webserver was deprecated and no longer used by default, instead Puma has been used as the default webserver. In 5.0.0 Unicorn support has been removed.

You will need to remove any Unicorn configuration from your values before upgrading to the newest version.

For Puma configuration options see the Webservice details.

Helm 2

Helm 2 has been deprecated and is no longer supported upstream with its last release being in November 2020. The 4.12 release of the GitLab Helm chart is the last to support Tiller Helm 2.x.

See the Helm 2-to-3 migration documentation

Cert-Manager

As part of the 5.0.0 release of this chart, we upgraded the Cert-Manager chart from 0.10.1 to 1.2.0. The new version uses the cert-manager.io/v1 API version for the Issuer so if you were using a seperate Cert-Manager instance but still using the Issuer provided by this chart, you will need to upgrade your Cert-Manager to a version that supports the cert-manager.io/v1 version.

If you are using the Cert-Manager and Issuer provided by this chart, the upgrade should happen automatically. During the upgrade the Cert-Manager Deployment objects (previously named with certmanager in their name), will be deleted, and new ones will be created with cert-manager in the name.

Check the Cert-Manager upgrade troubleshooting section if you run into issues with Cert-Manger during upgrade.

Upgrade path from versions prior to 4.x

You first need to upgrade to the 4.12.x release of the charts, before upgrading to 4.0. Please follow the 4.0 upgrade documentation.

Known issues and limitations

Below is a list of the known issues and limitations, although it may not be exhaustive.

Features that are currently out of scope:

Release cadence

We will be releasing a new version of the chart with each new GitLab patch.

More information on how we are versioning the chart can be found in the release documentation.

Along with the issues and merge requests in this repository, a changelog is available to more easily follow along with updates.

Kubernetes deployment support

GitLab is tested against:

Other Kubernetes deployments should also work. In the event of a specific non-GKE deployment issue, please raise an issue.

This release has automated CI testing for Kubernetes version v1.17.17-gke.4900 and v1.15.12-eks-31566f.

Technical support

Before opening an issue please review the known issues and limitations, and search to see if a similar issue already exists.

We greatly appreciate the wider testing of the community, and encourage detailed issues to be reported so we can address them.

We welcome any improvements contributed in the form of Merge Requests. Get started with our contributor documentation.