From 284c5dc9850fa763713b8ce0528331d83cbdd785 Mon Sep 17 00:00:00 2001 From: Arsolitt Date: Wed, 20 May 2026 13:52:10 +0300 Subject: [PATCH] fix(kafka): treat tls.enabled=null as unset in Kafka CR template MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When tls.enabled is present in values but set to null, the previous logic treated it as explicit (hasKey returned true), assigned null to $tlsEnabled, and rendered tls: null on the external listener — an invalid Strimzi CR field value. Introduce $tlsEnabledRaw and guard the explicit check with an additional ne nil condition so that null behaves like an absent key and falls back to inheriting from .Values.external. Assisted-By: Claude Signed-off-by: Arsolitt --- packages/apps/kafka/templates/kafka.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/apps/kafka/templates/kafka.yaml b/packages/apps/kafka/templates/kafka.yaml index 0ac291f21..af0d58824 100644 --- a/packages/apps/kafka/templates/kafka.yaml +++ b/packages/apps/kafka/templates/kafka.yaml @@ -12,10 +12,11 @@ Internal TLS listener (port 9093) is always on; Strimzi manages the PKI. */ -}} {{- $tlsMap := .Values.tls | default dict -}} -{{- $tlsEnabledExplicit := hasKey $tlsMap "enabled" -}} +{{- $tlsEnabledRaw := index $tlsMap "enabled" -}} +{{- $tlsEnabledExplicit := and (hasKey $tlsMap "enabled") (ne $tlsEnabledRaw nil) -}} {{- $tlsEnabled := false -}} {{- if $tlsEnabledExplicit -}} - {{- $tlsEnabled = index $tlsMap "enabled" -}} + {{- $tlsEnabled = $tlsEnabledRaw -}} {{- else -}} {{- $tlsEnabled = .Values.external | default false -}} {{- end -}}