Changing upgrade-check behavior when version is not found
What does this MR do?
Changing upgrade-check behavior when version is not found
This check was introduced in 2019 to protect the user from a very specific
upgrade that is not supported. Namely the upgrade from a chart version
pre 1.9.4. The chart-info configmap that holds the information for
/chart-info/gitlabVersion was introduced in 1.9.4 and you had to
upgrade to the latest 1.9.x release before going on to 2.x.
The assumption behind this check is that, if the configmap (and in consequence the optionally mounted files in the upgrade-check pod) do not exist, that the previously installed version must be something pre 1.9.4.
Now in 2025 we can savely assume that no one is upgrading from pre
1.9.4 directly to a chart version 9.6.0 or later. Instead we should
assume that the helm hook got triggered in a situation where it should
not have been: a fresh install - as described in #2979 (closed) and #4661. Some tools like
ArgoCD are using helm as templating engine and are not properly calling
the hooks as helm would do. Resulting in the upgrade-checker hook
being called on a fresh install where the chart-info config map is not
present (yet).
Related issues
Fixes #2979 (closed) Fixes #4661
Author checklist
For general guidance, please follow our Contributing guide.
Required
For anything in this list which will not be completed, please provide a reason in the MR discussion.
-
Merge Request Title and Description are up to date, accurate, and descriptive. -
MR targeting the appropriate branch. -
MR has a green pipeline. -
Documentation created/updated. -
Tests added/updated, and test plan for scenarios not covered by automated tests. -
Equivalent MR/issue for omnibus-gitlab opened.
Reviewers checklist
-
MR has a green pipeline on https://gitlab.com/gitlab-org/charts/gitlab. -
Consider downstream impact to the Operator, as per evaluating impact from changes to GitLab chart.