Skip to content

Distinguish operator default and operator override values

Distinguish operator default and operator override values

The new value priority:
  operator overrides > user values > operator default > chart default
allows more granular configuration.

The following value-keys were moved to default values:
  - 'certmanager-issuer.email' and
  - 'gitlab.webservice.serviceAccount.name'.

Changelog: other

This allows setting a user controlled gitlab.webservice.serviceAccount.name, which currently get's overridden by the operator.

The certmanager-issuer.email has also been moved to the operator defaults. Previously it was added to the values if not set by the user. Moving it to the operator defaults does not change this behavior, but keeps things a bit cleaner.

Relates Issues

Closes #927 (closed)

Testing

  1. Deploy the operator
  2. Create a ServiceAccount
kubectl -n gitlab-system create serviceaccount some-serviceaccount
  1. Create the following custom resource

GitLab CR
apiVersion: apps.gitlab.com/v1beta1
kind: GitLab
metadata:
  name: gitlab
spec:
  chart:
    version: "6.8.3" # select a version from the CHART_VERSIONS file in the root of this project
    values:
      global:
        hosts:
          domain: REDAC.nip.io # use a real domain here
      certmanager-issuer:
        email: REDAC # use your real email address here
      gitlab:
        webservice:
          serviceAccount:
            create: false
            name: some-serviceaccount

  1. Inspect the webservice's service account
kubectl -n gitlab-system get deploy gitlab-webservice-default -o yaml | yq .spec.template.spec.serviceAccountName
Edited by Clemens Beck

Merge request reports