Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(chart): allow config of global defaults #1904

Merged
merged 1 commit into from
May 21, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 49 additions & 49 deletions charts/kargo/README.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions charts/kargo/templates/_helpers.tpl
Original file line number Diff line number Diff line change
@@ -54,8 +54,8 @@ helm.sh/chart: {{ include "kargo.chart" . }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- if .Values.additionalLabels }}
{{ toYaml .Values.additionalLabels }}
{{- with (mergeOverwrite .Values.additionalLabels .Values.global.additionalLabels) }}
{{ toYaml . }}
{{- end }}
{{- end -}}

16 changes: 10 additions & 6 deletions charts/kargo/templates/api/deployment.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.api.labels" . | nindent 4 }}
{{- with .Values.api.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.api.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
replicas: {{ .Values.api.replicas | default 1 }}
@@ -29,7 +31,7 @@ spec:
secret/checksum: {{ pick ( include (print $.Template.BasePath "/api/secret.yaml") . | fromYaml ) "stringData" | toYaml | sha256sum }}
spec:
serviceAccount: kargo-api
{{- with .Values.api.affinity }}
{{- with .Values.api.affinity | default .Values.global.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
@@ -86,8 +88,10 @@ spec:
name: config
readOnly: true
{{- end }}
{{- with .Values.api.securityContext | default .Values.global.securityContext }}
securityContext:
{{- toYaml .Values.api.securityContext | nindent 12 }}
{{- toYaml . | nindent 12 }}
{{- end }}
resources:
{{- toYaml .Values.api.resources | nindent 12 }}
{{- if or .Values.kubeconfigSecrets.kargo (and .Values.api.oidc.enabled .Values.api.oidc.dex.enabled) .Values.api.tls.enabled }}
@@ -120,11 +124,11 @@ spec:
path: idp-ca.crt
{{- end }}
{{- end }}
{{- with .Values.api.nodeSelector }}
{{- with .Values.api.nodeSelector | default .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.api.tolerations }}
{{- with .Values.api.tolerations | default .Values.global.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
6 changes: 4 additions & 2 deletions charts/kargo/templates/api/ingress.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.api.labels" . | nindent 4 }}
{{- with .Values.api.ingress.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.api.ingress.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
{{- if .Values.api.ingress.ingressClassName }}
6 changes: 4 additions & 2 deletions charts/kargo/templates/api/service.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.api.labels" . | nindent 4 }}
{{- with .Values.api.service.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.api.service.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
type: {{ .Values.api.service.type }}
16 changes: 10 additions & 6 deletions charts/kargo/templates/controller/deployment.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.controller.labels" . | nindent 4 }}
{{- with .Values.controller.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.controller.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
replicas: 1
@@ -28,7 +30,7 @@ spec:
configmap/checksum: {{ pick ( include (print $.Template.BasePath "/controller/configmap.yaml") . | fromYaml ) "data" | toYaml | sha256sum }}
spec:
serviceAccount: kargo-controller
{{- with .Values.controller.affinity }}
{{- with .Values.controller.affinity | default .Values.global.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
@@ -64,8 +66,10 @@ spec:
readOnly: true
{{- end }}
{{- end }}
{{- with .Values.controller.securityContext | default .Values.global.securityContext }}
securityContext:
{{- toYaml .Values.controller.securityContext | nindent 10 }}
{{- toYaml . | nindent 10 }}
{{- end }}
resources:
{{- toYaml .Values.controller.resources | nindent 10 }}
{{- if or .Values.kubeconfigSecrets.kargo .Values.kubeconfigSecrets.argocd .Values.controller.gitClient.signingKeySecret.name }}
@@ -98,11 +102,11 @@ spec:
defaultMode: 0644
{{- end }}
{{- end }}
{{- with .Values.controller.nodeSelector }}
{{- with .Values.controller.nodeSelector | default .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.controller.tolerations }}
{{- with .Values.controller.tolerations | default .Values.global.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
16 changes: 10 additions & 6 deletions charts/kargo/templates/dex-server/deployment.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.dexServer.labels" . | nindent 4 }}
{{- with .Values.api.oidc.dex.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.api.oidc.dex.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
replicas: 1
@@ -26,7 +28,7 @@ spec:
secret/checksum: {{ pick ( include (print $.Template.BasePath "/dex-server/secret.yaml") . | fromYaml ) "stringData" | toYaml | sha256sum }}
spec:
serviceAccount: kargo-dex-server
{{- with .Values.api.oidc.dex.affinity }}
{{- with .Values.api.oidc.dex.affinity | default .Values.global.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
@@ -55,8 +57,10 @@ spec:
{{- if .Values.api.oidc.dex.volumeMounts }}
{{- toYaml .Values.api.oidc.dex.volumeMounts | nindent 8 }}
{{- end }}
{{- with .Values.api.oidc.dex.securityContext | default .Values.global.securityContext }}
securityContext:
{{- toYaml .Values.api.oidc.dex.securityContext | nindent 10 }}
{{- toYaml . | nindent 10 }}
{{- end }}
resources:
{{- toYaml .Values.api.oidc.dex.resources | nindent 10 }}
{{- if .Values.api.oidc.dex.probes.enabled }}
@@ -98,11 +102,11 @@ spec:
{{- if .Values.api.oidc.dex.volumes }}
{{- toYaml .Values.api.oidc.dex.volumes | nindent 8 }}
{{- end }}
{{- with .Values.api.oidc.dex.nodeSelector }}
{{- with .Values.api.oidc.dex.nodeSelector | default .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.api.oidc.dex.tolerations }}
{{- with .Values.api.oidc.dex.tolerations | default .Values.global.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
16 changes: 10 additions & 6 deletions charts/kargo/templates/garbage-collector/cron-job.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.garbageCollector.labels" . | nindent 4 }}
{{- with .Values.garbageCollector.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.garbageCollector.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
schedule: {{ quote .Values.garbageCollector.schedule }}
@@ -25,7 +27,7 @@ spec:
template:
spec:
serviceAccountName: kargo-garbage-collector
{{- with .Values.garbageCollector.affinity }}
{{- with .Values.garbageCollector.affinity | default .Values.global.affinity }}
affinity:
{{- toYaml . | nindent 12 }}
{{- end }}
@@ -44,16 +46,18 @@ spec:
{{- with (concat .Values.global.envFrom .Values.garbageCollector.envFrom) }}
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.garbageCollector.securityContext | default .Values.global.securityContext }}
securityContext:
{{- toYaml .Values.garbageCollector.securityContext | nindent 14 }}
{{- toYaml . | nindent 14 }}
{{- end }}
resources:
{{- toYaml .Values.garbageCollector.resources | nindent 14 }}
restartPolicy: Never
{{- with .Values.garbageCollector.nodeSelector }}
{{- with .Values.garbageCollector.nodeSelector | default .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.garbageCollector.tolerations }}
{{- with .Values.garbageCollector.tolerations | default .Values.global.tolerations }}
tolerations:
{{- toYaml . | nindent 12 }}
{{- end }}
16 changes: 10 additions & 6 deletions charts/kargo/templates/management-controller/deployment.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.managementController.labels" . | nindent 4 }}
{{- with .Values.managementController.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.managementController.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
replicas: 1
@@ -28,7 +30,7 @@ spec:
configmap/checksum: {{ pick ( include (print $.Template.BasePath "/management-controller/configmap.yaml") . | fromYaml ) "data" | toYaml | sha256sum }}
spec:
serviceAccount: kargo-management-controller
{{- with .Values.managementController.affinity }}
{{- with .Values.managementController.affinity | default .Values.global.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
@@ -57,8 +59,10 @@ spec:
name: kubeconfigs
readOnly: true
{{- end }}
{{- with .Values.managementController.securityContext | default .Values.global.securityContext }}
securityContext:
{{- toYaml .Values.managementController.securityContext | nindent 10 }}
{{- toYaml . | nindent 10 }}
{{- end }}
resources:
{{- toYaml .Values.managementController.resources | nindent 10 }}
{{- if .Values.kubeconfigSecrets.kargo }}
@@ -73,11 +77,11 @@ spec:
path: kubeconfig.yaml
mode: 0644
{{- end }}
{{- with .Values.managementController.nodeSelector }}
{{- with .Values.managementController.nodeSelector | default .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.managementController.tolerations }}
{{- with .Values.managementController.tolerations | default .Values.global.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
16 changes: 10 additions & 6 deletions charts/kargo/templates/webhooks-server/deployment.yaml
Original file line number Diff line number Diff line change
@@ -7,9 +7,11 @@ metadata:
labels:
{{- include "kargo.labels" . | nindent 4 }}
{{- include "kargo.webhooksServer.labels" . | nindent 4 }}
{{- with .Values.webhooksServer.annotations }}
{{- with (mergeOverwrite (deepCopy .Values.global.annotations) .Values.webhooksServer.annotations) }}
annotations:
{{- toYaml . | nindent 4 }}
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
spec:
replicas: {{ .Values.webhooksServer.replicas | default 1 }}
@@ -28,7 +30,7 @@ spec:
configmap/checksum: {{ pick ( include (print $.Template.BasePath "/webhooks-server/configmap.yaml") . | fromYaml ) "data" | toYaml | sha256sum }}
spec:
serviceAccount: kargo-webhooks-server
{{- with .Values.webhooksServer.affinity }}
{{- with .Values.webhooksServer.affinity | default .Values.global.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
@@ -64,8 +66,10 @@ spec:
name: kubeconfigs
readOnly: true
{{- end }}
{{- with .Values.webhooksServer.securityContext | default .Values.global.securityContext }}
securityContext:
{{- toYaml .Values.webhooksServer.securityContext | nindent 10 }}
{{- toYaml . | nindent 10 }}
{{- end }}
resources:
{{- toYaml .Values.webhooksServer.resources | nindent 10 }}
volumes:
@@ -79,11 +83,11 @@ spec:
defaultMode: 0644
secretName: {{ .Values.kubeconfigSecrets.kargo }}
{{- end }}
{{- with .Values.webhooksServer.nodeSelector }}
{{- with .Values.webhooksServer.nodeSelector | default .Values.global.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.webhooksServer.tolerations }}
{{- with .Values.webhooksServer.tolerations | default .Values.global.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
80 changes: 46 additions & 34 deletions charts/kargo/values.yaml
Original file line number Diff line number Diff line change
@@ -5,6 +5,9 @@

## @section Global Parameters
global:
## @param global.additionalLabels Additional labels to add to all resources.
additionalLabels: {}
# my-label: my-value
## @param global.env Environment variables to add to all Kargo pods.
env: []
# - name: ENV_NAME
@@ -15,6 +18,16 @@ global:
# name: config-map-name
# - secretRef:
# name: secret-name
## @param global.nodeSelector Default node selector for all Kargo pods.
nodeSelector: {}
## @param global.annotations Default annotations for all Kargo pods.
annotations: {}
## @param global.tolerations Default tolerations for all Kargo pods.
tolerations: []
## @param global.affinity Default affinity for all Kargo pods.
affinity: {}
## @param global.securityContext Default security context for all Kargo pods.
securityContext: {}

## @section Image Parameters
image:
@@ -68,8 +81,7 @@ kubeconfigSecrets: {}
## @param kubeconfigSecrets.argocd [nullable] Kubernetes `Secret` name containing kubeconfig for a remote Kubernetes cluster hosting Argo CD resources. Used by Kargo controller(s) only.
# argocd: ""

## @section Labels
## @param additionalLabels Additional labels to add to all resources.
## @skip additionalLabels Deprecated, use `global.additionalLabels` instead.
additionalLabels: {}
# my-label: my-value

@@ -91,15 +103,15 @@ api:
# requests:
# cpu: 100m
# memory: 128Mi
## @param api.nodeSelector Node selector for api pods.
## @param api.nodeSelector Node selector for api pods. Defaults to `global.nodeSelector`.
nodeSelector: {}
## @param api.tolerations Tolerations for api pods.
## @param api.tolerations Tolerations for api pods. Defaults to `global.tolerations`.
tolerations: []
## @param api.affinity Specifies pod affinity for api pods.
## @param api.affinity Specifies pod affinity for api pods. Defaults to `global.affinity`.
affinity: {}
## @param api.annotations Annotations to add to the api pods.
## @param api.annotations Annotations to add to the api pods. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}
## @param api.securityContext Security context for api pods.
## @param api.securityContext Security context for api pods. Defaults to `global.securityContext`.
securityContext: {}
## @param api.env Environment variables to add to API server pods.
env: []
@@ -146,7 +158,7 @@ api:
type: ClusterIP
## @param api.service.nodePort [nullable] Host port the `Service` will be mapped to when `type` is either `NodePort` or `LoadBalancer`. If not specified, Kubernetes chooses.
# nodePort:
## @param api.service.annotations Annotations to add to the API server's service.
## @param api.service.annotations Annotations to add to the API server's service. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}

secret:
@@ -279,15 +291,15 @@ api:
# requests:
# cpu: 100m
# memory: 128Mi
## @param api.oidc.dex.nodeSelector Node selector for Dex server pods.
## @param api.oidc.dex.nodeSelector Node selector for Dex server pods. Defaults to `global.nodeSelector`.
nodeSelector: {}
## @param api.oidc.dex.tolerations Tolerations for Dex server pods.
## @param api.oidc.dex.tolerations Tolerations for Dex server pods. Defaults to `global.tolerations`.
tolerations: []
## @param api.oidc.dex.affinity Specifies pod affinity for the Dex server pods.
## @param api.oidc.dex.affinity Specifies pod affinity for the Dex server pods. Defaults to `global.affinity`.
affinity: {}
## @param api.oidc.dex.annotations Annotations to add to the Dex server pods.
## @param api.oidc.dex.annotations Annotations to add to the Dex server pods. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}
## @param api.oidc.dex.securityContext Security context for Dex server pods.
## @param api.oidc.dex.securityContext Security context for Dex server pods. Defaults to `global.securityContext`.
securityContext: {}

argocd:
@@ -319,12 +331,12 @@ controller:
email: "kargo-render@akuity.io"

signingKeySecret:
## @param controller.gitClient.signingKeySecret.name Specifies the name of an existing `Secret` which contains the Git users's signing key. The value should be accessible under `.data.signingKey` in the same namespace as Kargo. When the signing key is a GPG key, the GPG key's name and email address identity must match the values defined for `controller.gitClient.name` and `controller.gitClient.email`.
## @param controller.gitClient.signingKeySecret.name Specifies the name of an existing `Secret` which contains the Git user's signing key. The value should be accessible under `.data.signingKey` in the same namespace as Kargo. When the signing key is a GPG key, the GPG key's name and email address identity must match the values defined for `controller.gitClient.name` and `controller.gitClient.email`.
name: ""
## @param controller.gitClient.signingKeySecret.type Specifies the type of the signing key. The currently supported and default option is `gpg`.
type: ""

## @param controller.securityContext Security context for controller pods.
## @param controller.securityContext Security context for controller pods. Defaults to `global.securityContext`.
securityContext: {}

## @param controller.shardName [nullable] Set a shard name only if you are running multiple controllers backed by a single underlying control plane. Setting a shard name will cause this controller to operate **only** on resources with a matching shard name. Leaving the shard name undefined will designate this controller as the default controller that is responsible exclusively for resources that are **not** assigned to a specific shard. Leaving this undefined is the correct choice when you are not using sharding at all. It is also the correct setting if you are using sharding and want to designate a controller as the default for handling resources not assigned to a specific shard. In most cases, this setting should simply be left alone.
@@ -359,13 +371,13 @@ controller:
# requests:
# cpu: 100m
# memory: 128Mi
## @param controller.nodeSelector Node selector for controller pods.
## @param controller.nodeSelector Node selector for controller pods. Defaults to `global.nodeSelector`.
nodeSelector: {}
## @param controller.tolerations Tolerations for controller pods.
## @param controller.tolerations Tolerations for controller pods. Defaults to `global.tolerations`.
tolerations: []
## @param controller.affinity Specifies pod affinity for controller pods.
## @param controller.affinity Specifies pod affinity for controller pods. Defaults to `global.affinity`.
affinity: {}
## @param controller.annotations Annotations to add to the controller pods.
## @param controller.annotations Annotations to add to the controller pods. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}
## @param controller.env Environment variables to add to controller pods.
env: []
@@ -387,7 +399,7 @@ managementController:
## @param managementController.logLevel The log level for the management controller.
logLevel: INFO

## @param managementController.securityContext Security context for management controller pods.
## @param managementController.securityContext Security context for management controller pods. Defaults to `global.securityContext`.
securityContext: {}

## @param managementController.resources Resources limits and requests for the management controller containers.
@@ -398,13 +410,13 @@ managementController:
# requests:
# cpu: 100m
# memory: 128Mi
## @param managementController.nodeSelector Node selector for management controller pods.
## @param managementController.nodeSelector Node selector for management controller pods. Defaults to `global.nodeSelector`.
nodeSelector: {}
## @param managementController.tolerations Tolerations for management controller pods.
## @param managementController.tolerations Tolerations for management controller pods. Defaults to `global.tolerations`.
tolerations: []
## @param managementController.affinity Specifies pod affinity for management controller pods.
## @param managementController.affinity Specifies pod affinity for management controller pods. Defaults to `global.affinity`.
affinity: {}
## @param managementController.annotations Annotations to add to the management controller pods.
## @param managementController.annotations Annotations to add to the management controller pods. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}
## @param managementController.env Environment variables to add to management controller pods.
env: []
@@ -444,15 +456,15 @@ webhooksServer:
# requests:
# cpu: 100m
# memory: 128Mi
## @param webhooksServer.nodeSelector Node selector for the webhooks server pods.
## @param webhooksServer.nodeSelector Node selector for the webhooks server pods. Defaults to `global.nodeSelector`.
nodeSelector: {}
## @param webhooksServer.tolerations Tolerations for the webhooks server pods.
## @param webhooksServer.tolerations Tolerations for the webhooks server pods. Defaults to `global.tolerations`.
tolerations: []
## @param webhooksServer.affinity Specifies pod affinity for the webhooks server pods.
## @param webhooksServer.affinity Specifies pod affinity for the webhooks server pods. Defaults to `global.affinity`.
affinity: {}
## @param webhooksServer.annotations Annotations to add to the webhooks server pods.
## @param webhooksServer.annotations Annotations to add to the webhooks server pods. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}
## @param webhooksServer.securityContext Security context for webhooks server pods.
## @param webhooksServer.securityContext Security context for webhooks server pods. Defaults to `global.securityContext`.
securityContext: {}
## @param webhooksServer.env Environment variables to add to webhook server pods.
env: []
@@ -491,15 +503,15 @@ garbageCollector:
# requests:
# cpu: 100m
# memory: 128Mi
## @param garbageCollector.nodeSelector Node selector for the garbage collector pods.
## @param garbageCollector.nodeSelector Node selector for the garbage collector pods. Defaults to `global.nodeSelector`.
nodeSelector: {}
## @param garbageCollector.tolerations Tolerations for the garbage collector pods.
## @param garbageCollector.tolerations Tolerations for the garbage collector pods. Defaults to `global.tolerations`.
tolerations: []
## @param garbageCollector.affinity Specifies pod affinity for the garbage collector pods.
## @param garbageCollector.affinity Specifies pod affinity for the garbage collector pods. Defaults to `global.affinity`.
affinity: {}
## @param garbageCollector.annotations Annotations to add to the garbage collector pods.
## @param garbageCollector.annotations Annotations to add to the garbage collector pods. Merges with `global.annotations`, allowing you to override or add to the global annotations.
annotations: {}
## @param garbageCollector.securityContext Security context for garbage collector pods.
## @param garbageCollector.securityContext Security context for garbage collector pods. Defaults to `global.securityContext`.
securityContext: {}
## @param garbageCollector.env Environment variables to add to garbage collector pods.
env: []