diff --git a/functions/render/200-kyverno.yaml.gotmpl b/functions/render/200-kyverno.yaml.gotmpl index 8e381cd..7950e17 100644 --- a/functions/render/200-kyverno.yaml.gotmpl +++ b/functions/render/200-kyverno.yaml.gotmpl @@ -15,6 +15,38 @@ {{- $ky := $state.kyverno }} {{- if $ky.enabled }} +{{- $chartDefaults := dict + "admissionController" (dict + "replicas" 1 + "failurePolicy" "Ignore" + "container" (dict "resources" (dict + "requests" (dict "cpu" "296m" "memory" "105Mi") + "limits" (dict "cpu" "1000m" "memory" "512Mi") + )) + ) + "backgroundController" (dict + "replicas" 1 + "resources" (dict + "requests" (dict "cpu" "15m" "memory" "100Mi") + "limits" (dict "cpu" "100m" "memory" "256Mi") + ) + ) + "reportsController" (dict + "replicas" 1 + "resources" (dict + "requests" (dict "cpu" "15m" "memory" "100Mi") + "limits" (dict "cpu" "100m" "memory" "256Mi") + ) + ) + "cleanupController" (dict + "replicas" 1 + "resources" (dict + "requests" (dict "cpu" "15m" "memory" "100Mi") + "limits" (dict "cpu" "100m" "memory" "256Mi") + ) + ) +}} +{{- $mergedValues := mergeOverwrite $chartDefaults ($ky.values | default dict) }} --- apiVersion: helm.m.crossplane.io/v1beta1 kind: Release @@ -37,20 +69,7 @@ spec: {{- toYaml $ky.overrideAllValues | nindent 6 }} {{- else }} values: - admissionController: - replicas: 1 - # Colima-safe default. Production HA: 3 replicas + failurePolicy=Fail - # for security policies via a separate webhook config (deferred). - failurePolicy: Ignore - backgroundController: - replicas: 1 - reportsController: - replicas: 1 - cleanupController: - replicas: 1 - {{- if gt (len $ky.values) 0 }} - {{- toYaml $ky.values | nindent 6 }} - {{- end }} + {{- toYaml $mergedValues | nindent 6 }} {{- end }} rollbackLimit: 3 providerConfigRef: diff --git a/functions/render/210-policy-reporter.yaml.gotmpl b/functions/render/210-policy-reporter.yaml.gotmpl index bca3844..13679e3 100644 --- a/functions/render/210-policy-reporter.yaml.gotmpl +++ b/functions/render/210-policy-reporter.yaml.gotmpl @@ -11,6 +11,20 @@ {{- $pr := $state.policyReporter }} {{- if $pr.enabled }} +{{- $chartDefaults := dict + "resources" (dict + "requests" (dict "cpu" "15m" "memory" "100Mi") + "limits" (dict "cpu" "100m" "memory" "256Mi") + ) + "ui" (dict + "enabled" true + "resources" (dict + "requests" (dict "cpu" "15m" "memory" "100Mi") + "limits" (dict "cpu" "100m" "memory" "256Mi") + ) + ) +}} +{{- $mergedValues := mergeOverwrite $chartDefaults ($pr.values | default dict) }} --- apiVersion: helm.m.crossplane.io/v1beta1 kind: Release @@ -33,11 +47,7 @@ spec: {{- toYaml $pr.overrideAllValues | nindent 6 }} {{- else }} values: - ui: - enabled: true - {{- if gt (len $pr.values) 0 }} - {{- toYaml $pr.values | nindent 6 }} - {{- end }} + {{- toYaml $mergedValues | nindent 6 }} {{- end }} rollbackLimit: 3 providerConfigRef: diff --git a/tests/test-render/main.k b/tests/test-render/main.k index 6dd4b5d..6b58872 100644 --- a/tests/test-render/main.k +++ b/tests/test-render/main.k @@ -37,6 +37,12 @@ _items = [ version = "3.8.0" } namespace = "kyverno" + values = { + admissionController.container.resources.requests = {cpu = "296m", memory = "105Mi"} + backgroundController.resources.requests = {cpu = "15m", memory = "100Mi"} + cleanupController.resources.requests = {cpu = "15m", memory = "100Mi"} + reportsController.resources.requests = {cpu = "15m", memory = "100Mi"} + } } } { @@ -50,6 +56,10 @@ _items = [ version = "3.7.4" } namespace = "policy-reporter" + values = { + resources.requests = {cpu = "15m", memory = "100Mi"} + ui.resources.requests = {cpu = "15m", memory = "100Mi"} + } } } {