{{- $secretNamespaces := dict -}}
{{- range $cfg := tuple .Values.ingressController .Values.gatewayAPI .Values.envoyConfig .Values.bgpControlPlane -}}
{{- if and $cfg.enabled $cfg.secretsNamespace.create $cfg.secretsNamespace.name -}}
{{- $_ := set $secretNamespaces $cfg.secretsNamespace.name 1 -}}
{{- end -}}
{{- end -}}

{{- if and .Values.tls.secretsNamespace.create .Values.tls.secretsNamespace.name (not .Values.preflight.enabled) -}}
{{- $_ := set $secretNamespaces .Values.tls.secretsNamespace.name 1 -}}
{{- end -}}

{{- range $name, $_ := $secretNamespaces }}
---
apiVersion: v1
kind: Namespace
metadata:
  name: {{ $name | quote }}
  labels:
    app.kubernetes.io/part-of: cilium
    {{- with $.Values.commonLabels }}
    {{- toYaml . | nindent 4 }}
    {{- end }}
{{- end}}
