From 0cedccce02bd6da61313059df8e845fa7aee1e14 Mon Sep 17 00:00:00 2001 From: honarkhah Date: Mon, 16 Feb 2026 14:50:15 +0100 Subject: [PATCH] feat: add namespaceOverride option --- charts/fluent-bit-aggregator/templates/_helpers.tpl | 11 +++++++++++ .../templates/clusterrole.yaml | 2 +- .../templates/clusterrolebinding.yaml | 4 ++-- .../templates/configmap-config.yaml | 2 +- .../templates/configmap-dashboard.yaml | 2 +- .../templates/configmap-scripts.yaml | 2 +- charts/fluent-bit-aggregator/templates/hpa.yaml | 2 +- charts/fluent-bit-aggregator/templates/ingress.yaml | 2 +- charts/fluent-bit-aggregator/templates/pdb.yaml | 2 +- .../templates/service-headless.yaml | 2 +- charts/fluent-bit-aggregator/templates/service.yaml | 2 +- .../templates/serviceaccount.yaml | 2 +- .../templates/servicemonitor.yaml | 4 ++-- .../templates/statefulset.yaml | 2 +- charts/fluent-bit-aggregator/values.yaml | 3 +++ charts/fluent-bit-collector/templates/_helpers.tpl | 11 +++++++++++ .../fluent-bit-collector/templates/clusterrole.yaml | 2 +- .../templates/clusterrolebinding.yaml | 4 ++-- .../templates/configmap-config.yaml | 2 +- .../templates/configmap-dashboard.yaml | 2 +- .../templates/configmap-scripts.yaml | 2 +- .../fluent-bit-collector/templates/daemonset.yaml | 2 +- .../fluent-bit-collector/templates/podmonitor.yaml | 4 ++-- charts/fluent-bit-collector/templates/service.yaml | 2 +- .../templates/serviceaccount.yaml | 2 +- .../templates/servicemonitor.yaml | 4 ++-- charts/fluent-bit-collector/values.yaml | 3 +++ charts/fluent-bit/templates/NOTES.txt | 4 ++-- charts/fluent-bit/templates/_helpers.tpl | 11 +++++++++++ charts/fluent-bit/templates/clusterrolebinding.yaml | 2 +- .../fluent-bit/templates/configmap-dashboards.yaml | 2 +- .../fluent-bit/templates/configmap-luascripts.yaml | 2 +- charts/fluent-bit/templates/configmap.yaml | 2 +- charts/fluent-bit/templates/daemonset.yaml | 2 +- charts/fluent-bit/templates/deployment.yaml | 2 +- charts/fluent-bit/templates/hpa.yaml | 2 +- charts/fluent-bit/templates/ingress.yaml | 2 +- charts/fluent-bit/templates/networkpolicy.yaml | 2 +- charts/fluent-bit/templates/pdb.yaml | 2 +- charts/fluent-bit/templates/prometheusrule.yaml | 2 +- charts/fluent-bit/templates/service.yaml | 2 +- charts/fluent-bit/templates/serviceaccount.yaml | 2 +- charts/fluent-bit/templates/servicemonitor.yaml | 4 ++-- .../fluent-bit/templates/tests/test-connection.yaml | 2 +- charts/fluent-bit/templates/vpa.yaml | 2 +- charts/fluent-bit/values.yaml | 1 + charts/fluentd/templates/NOTES.txt | 4 ++-- charts/fluentd/templates/_helpers.tpl | 13 ++++++++++++- charts/fluentd/templates/clusterrolebinding.yaml | 2 +- charts/fluentd/templates/configmap-dashboards.yaml | 2 +- charts/fluentd/templates/servicemonitor.yaml | 2 +- charts/fluentd/values.yaml | 1 + 52 files changed, 105 insertions(+), 53 deletions(-) diff --git a/charts/fluent-bit-aggregator/templates/_helpers.tpl b/charts/fluent-bit-aggregator/templates/_helpers.tpl index 3e0a94fb..6ce30cb4 100644 --- a/charts/fluent-bit-aggregator/templates/_helpers.tpl +++ b/charts/fluent-bit-aggregator/templates/_helpers.tpl @@ -23,6 +23,17 @@ If release name contains chart name it will be used as a full name. {{- end }} {{- end }} +{{/* +Allow the release namespace to be overridden for multi-namespace deployments in combined charts +*/}} +{{- define "fluent-bit-aggregator.namespace" -}} +{{- if .Values.namespaceOverride -}} +{{- .Values.namespaceOverride -}} +{{- else -}} +{{- .Release.Namespace -}} +{{- end -}} +{{- end -}} + {{/* Create chart name and version as used by the chart label. */}} diff --git a/charts/fluent-bit-aggregator/templates/clusterrole.yaml b/charts/fluent-bit-aggregator/templates/clusterrole.yaml index e99bcbc0..c0ea0dad 100644 --- a/charts/fluent-bit-aggregator/templates/clusterrole.yaml +++ b/charts/fluent-bit-aggregator/templates/clusterrole.yaml @@ -3,7 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: {{ include "fluent-bit-aggregator.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} rules: diff --git a/charts/fluent-bit-aggregator/templates/clusterrolebinding.yaml b/charts/fluent-bit-aggregator/templates/clusterrolebinding.yaml index 5560afe6..93419758 100644 --- a/charts/fluent-bit-aggregator/templates/clusterrolebinding.yaml +++ b/charts/fluent-bit-aggregator/templates/clusterrolebinding.yaml @@ -3,7 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: {{ include "fluent-bit-aggregator.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} roleRef: @@ -13,5 +13,5 @@ roleRef: subjects: - kind: ServiceAccount name: {{ include "fluent-bit-aggregator.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} {{- end }} diff --git a/charts/fluent-bit-aggregator/templates/configmap-config.yaml b/charts/fluent-bit-aggregator/templates/configmap-config.yaml index 7bdc30ff..d4bd74e7 100644 --- a/charts/fluent-bit-aggregator/templates/configmap-config.yaml +++ b/charts/fluent-bit-aggregator/templates/configmap-config.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit-aggregator.configConfigMapName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} data: diff --git a/charts/fluent-bit-aggregator/templates/configmap-dashboard.yaml b/charts/fluent-bit-aggregator/templates/configmap-dashboard.yaml index 9ae02340..e64bc6d6 100644 --- a/charts/fluent-bit-aggregator/templates/configmap-dashboard.yaml +++ b/charts/fluent-bit-aggregator/templates/configmap-dashboard.yaml @@ -4,7 +4,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit-aggregator.dashboardConfigMapName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} grafana_dashboard: "1" diff --git a/charts/fluent-bit-aggregator/templates/configmap-scripts.yaml b/charts/fluent-bit-aggregator/templates/configmap-scripts.yaml index 5b7de776..62518e2c 100644 --- a/charts/fluent-bit-aggregator/templates/configmap-scripts.yaml +++ b/charts/fluent-bit-aggregator/templates/configmap-scripts.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit-aggregator.scriptsConfigMapName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} data: diff --git a/charts/fluent-bit-aggregator/templates/hpa.yaml b/charts/fluent-bit-aggregator/templates/hpa.yaml index 0e4d8053..f53311ff 100644 --- a/charts/fluent-bit-aggregator/templates/hpa.yaml +++ b/charts/fluent-bit-aggregator/templates/hpa.yaml @@ -3,7 +3,7 @@ apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: {{ include "fluent-bit-aggregator.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} spec: diff --git a/charts/fluent-bit-aggregator/templates/ingress.yaml b/charts/fluent-bit-aggregator/templates/ingress.yaml index 95ce1856..126e90c9 100644 --- a/charts/fluent-bit-aggregator/templates/ingress.yaml +++ b/charts/fluent-bit-aggregator/templates/ingress.yaml @@ -5,7 +5,7 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: {{ (printf "%s-%s" ((include "fluent-bit-aggregator.fullname" $) | trunc 60) (toString $i)) | trunc 63 | trimSuffix "-" }} - namespace: {{ $.Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" $ }} labels: {{- include "fluent-bit-aggregator.labels" $ | nindent 4 }} {{- with $v.annotations }} diff --git a/charts/fluent-bit-aggregator/templates/pdb.yaml b/charts/fluent-bit-aggregator/templates/pdb.yaml index 78078255..591b3a02 100644 --- a/charts/fluent-bit-aggregator/templates/pdb.yaml +++ b/charts/fluent-bit-aggregator/templates/pdb.yaml @@ -3,7 +3,7 @@ apiVersion: policy/v1 kind: PodDisruptionBudget metadata: name: {{ include "fluent-bit-aggregator.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} spec: diff --git a/charts/fluent-bit-aggregator/templates/service-headless.yaml b/charts/fluent-bit-aggregator/templates/service-headless.yaml index a953e92b..1237bbb8 100644 --- a/charts/fluent-bit-aggregator/templates/service-headless.yaml +++ b/charts/fluent-bit-aggregator/templates/service-headless.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: Service metadata: name: {{ include "fluent-bit-aggregator.headlessServiceName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} prometheus.io/service-monitor: "false" diff --git a/charts/fluent-bit-aggregator/templates/service.yaml b/charts/fluent-bit-aggregator/templates/service.yaml index 20509192..a9631673 100644 --- a/charts/fluent-bit-aggregator/templates/service.yaml +++ b/charts/fluent-bit-aggregator/templates/service.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: Service metadata: name: {{ include "fluent-bit-aggregator.serviceName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} {{- with .Values.service.annotations }} diff --git a/charts/fluent-bit-aggregator/templates/serviceaccount.yaml b/charts/fluent-bit-aggregator/templates/serviceaccount.yaml index e34ec780..9b39b4ac 100644 --- a/charts/fluent-bit-aggregator/templates/serviceaccount.yaml +++ b/charts/fluent-bit-aggregator/templates/serviceaccount.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: ServiceAccount metadata: name: {{ include "fluent-bit-aggregator.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} {{- with .Values.serviceAccount.labels }} diff --git a/charts/fluent-bit-aggregator/templates/servicemonitor.yaml b/charts/fluent-bit-aggregator/templates/servicemonitor.yaml index 9f9bdad4..8836edd1 100644 --- a/charts/fluent-bit-aggregator/templates/servicemonitor.yaml +++ b/charts/fluent-bit-aggregator/templates/servicemonitor.yaml @@ -3,7 +3,7 @@ apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: {{ include "fluent-bit-aggregator.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} {{- with .Values.serviceMonitor.additionalLabels }} @@ -13,7 +13,7 @@ spec: jobLabel: app.kubernetes.io/instance namespaceSelector: matchNames: - - {{ .Release.Namespace }} + - {{ include "fluent-bit-aggregator.namespace" . }} selector: matchLabels: {{- include "fluent-bit-aggregator.selectorLabels" . | nindent 6 }} diff --git a/charts/fluent-bit-aggregator/templates/statefulset.yaml b/charts/fluent-bit-aggregator/templates/statefulset.yaml index d6167a2f..54e5035e 100644 --- a/charts/fluent-bit-aggregator/templates/statefulset.yaml +++ b/charts/fluent-bit-aggregator/templates/statefulset.yaml @@ -2,7 +2,7 @@ apiVersion: apps/v1 kind: StatefulSet metadata: name: {{ include "fluent-bit-aggregator.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-aggregator.namespace" . }} labels: {{- include "fluent-bit-aggregator.labels" . | nindent 4 }} spec: diff --git a/charts/fluent-bit-aggregator/values.yaml b/charts/fluent-bit-aggregator/values.yaml index fe383850..16e0bc4b 100644 --- a/charts/fluent-bit-aggregator/values.yaml +++ b/charts/fluent-bit-aggregator/values.yaml @@ -21,6 +21,9 @@ nameOverride: # -- (string) Override the full name of the chart. fullnameOverride: +# -- (string) Override the namespace of the chart. +namespaceOverride: + # -- Labels to add to all chart resources. commonLabels: {} diff --git a/charts/fluent-bit-collector/templates/_helpers.tpl b/charts/fluent-bit-collector/templates/_helpers.tpl index 7925489b..20e4ca58 100644 --- a/charts/fluent-bit-collector/templates/_helpers.tpl +++ b/charts/fluent-bit-collector/templates/_helpers.tpl @@ -23,6 +23,17 @@ If release name contains chart name it will be used as a full name. {{- end }} {{- end }} +{{/* +Allow the release namespace to be overridden for multi-namespace deployments in combined charts +*/}} +{{- define "fluent-bit-collector.namespace" -}} +{{- if .Values.namespaceOverride -}} +{{- .Values.namespaceOverride -}} +{{- else -}} +{{- .Release.Namespace -}} +{{- end -}} +{{- end -}} + {{/* Create chart name and version as used by the chart label. */}} diff --git a/charts/fluent-bit-collector/templates/clusterrole.yaml b/charts/fluent-bit-collector/templates/clusterrole.yaml index ae2770fb..42318ed1 100644 --- a/charts/fluent-bit-collector/templates/clusterrole.yaml +++ b/charts/fluent-bit-collector/templates/clusterrole.yaml @@ -3,7 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: {{ include "fluent-bit-collector.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} rules: diff --git a/charts/fluent-bit-collector/templates/clusterrolebinding.yaml b/charts/fluent-bit-collector/templates/clusterrolebinding.yaml index 25de77b6..ea3ebcc0 100644 --- a/charts/fluent-bit-collector/templates/clusterrolebinding.yaml +++ b/charts/fluent-bit-collector/templates/clusterrolebinding.yaml @@ -3,7 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: {{ include "fluent-bit-collector.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} roleRef: @@ -13,5 +13,5 @@ roleRef: subjects: - kind: ServiceAccount name: {{ include "fluent-bit-collector.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} {{- end }} diff --git a/charts/fluent-bit-collector/templates/configmap-config.yaml b/charts/fluent-bit-collector/templates/configmap-config.yaml index 6618ccf7..c61c509f 100644 --- a/charts/fluent-bit-collector/templates/configmap-config.yaml +++ b/charts/fluent-bit-collector/templates/configmap-config.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit-collector.configConfigMapName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} data: diff --git a/charts/fluent-bit-collector/templates/configmap-dashboard.yaml b/charts/fluent-bit-collector/templates/configmap-dashboard.yaml index 5ef4cbf9..1606214c 100644 --- a/charts/fluent-bit-collector/templates/configmap-dashboard.yaml +++ b/charts/fluent-bit-collector/templates/configmap-dashboard.yaml @@ -4,7 +4,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit-collector.dashboardConfigMapName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} grafana_dashboard: "1" diff --git a/charts/fluent-bit-collector/templates/configmap-scripts.yaml b/charts/fluent-bit-collector/templates/configmap-scripts.yaml index 437713f4..1560bd86 100644 --- a/charts/fluent-bit-collector/templates/configmap-scripts.yaml +++ b/charts/fluent-bit-collector/templates/configmap-scripts.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit-collector.scriptsConfigMapName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} data: diff --git a/charts/fluent-bit-collector/templates/daemonset.yaml b/charts/fluent-bit-collector/templates/daemonset.yaml index c671ec25..c4bb2dc0 100644 --- a/charts/fluent-bit-collector/templates/daemonset.yaml +++ b/charts/fluent-bit-collector/templates/daemonset.yaml @@ -2,7 +2,7 @@ apiVersion: apps/v1 kind: DaemonSet metadata: name: {{ include "fluent-bit-collector.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} spec: diff --git a/charts/fluent-bit-collector/templates/podmonitor.yaml b/charts/fluent-bit-collector/templates/podmonitor.yaml index a4cb0202..61335c6a 100644 --- a/charts/fluent-bit-collector/templates/podmonitor.yaml +++ b/charts/fluent-bit-collector/templates/podmonitor.yaml @@ -3,7 +3,7 @@ apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: name: {{ include "fluent-bit-collector.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} {{- with .Values.serviceMonitor.additionalLabels }} @@ -13,7 +13,7 @@ spec: jobLabel: app.kubernetes.io/instance namespaceSelector: matchNames: - - {{ .Release.Namespace }} + - {{ include "fluent-bit-collector.namespace" . }} selector: matchLabels: {{- include "fluent-bit-collector.selectorLabels" . | nindent 6 }} diff --git a/charts/fluent-bit-collector/templates/service.yaml b/charts/fluent-bit-collector/templates/service.yaml index 359fe726..67fa3d1d 100644 --- a/charts/fluent-bit-collector/templates/service.yaml +++ b/charts/fluent-bit-collector/templates/service.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: Service metadata: name: {{ include "fluent-bit-collector.serviceName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} {{- with .Values.service.annotations }} diff --git a/charts/fluent-bit-collector/templates/serviceaccount.yaml b/charts/fluent-bit-collector/templates/serviceaccount.yaml index 6d2319d6..b0851a17 100644 --- a/charts/fluent-bit-collector/templates/serviceaccount.yaml +++ b/charts/fluent-bit-collector/templates/serviceaccount.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: ServiceAccount metadata: name: {{ include "fluent-bit-collector.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} {{- with .Values.serviceAccount.labels }} diff --git a/charts/fluent-bit-collector/templates/servicemonitor.yaml b/charts/fluent-bit-collector/templates/servicemonitor.yaml index a62c02d3..5d84d69b 100644 --- a/charts/fluent-bit-collector/templates/servicemonitor.yaml +++ b/charts/fluent-bit-collector/templates/servicemonitor.yaml @@ -3,7 +3,7 @@ apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: {{ include "fluent-bit-collector.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit-collector.namespace" . }} labels: {{- include "fluent-bit-collector.labels" . | nindent 4 }} {{- with .Values.serviceMonitor.additionalLabels }} @@ -13,7 +13,7 @@ spec: jobLabel: app.kubernetes.io/instance namespaceSelector: matchNames: - - {{ .Release.Namespace }} + - {{ include "fluent-bit-collector.namespace" . }} selector: matchLabels: {{- include "fluent-bit-collector.selectorLabels" . | nindent 6 }} diff --git a/charts/fluent-bit-collector/values.yaml b/charts/fluent-bit-collector/values.yaml index a3ab9dec..1996c169 100644 --- a/charts/fluent-bit-collector/values.yaml +++ b/charts/fluent-bit-collector/values.yaml @@ -21,6 +21,9 @@ nameOverride: # -- (string) Override the full name of the chart. fullnameOverride: +# -- (string) Override the namespace of the chart. +namespaceOverride: + # -- Labels to add to all chart resources. commonLabels: {} diff --git a/charts/fluent-bit/templates/NOTES.txt b/charts/fluent-bit/templates/NOTES.txt index 7e09ee62..4cbae6d8 100644 --- a/charts/fluent-bit/templates/NOTES.txt +++ b/charts/fluent-bit/templates/NOTES.txt @@ -1,6 +1,6 @@ Get Fluent Bit build information by running these commands: -export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "fluent-bit.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") -kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 2020:2020 +export POD_NAME=$(kubectl get pods --namespace {{ include "fluent-bit.namespace" . }} -l "app.kubernetes.io/name={{ include "fluent-bit.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") +kubectl --namespace {{ include "fluent-bit.namespace" . }} port-forward $POD_NAME 2020:2020 curl http://127.0.0.1:2020 diff --git a/charts/fluent-bit/templates/_helpers.tpl b/charts/fluent-bit/templates/_helpers.tpl index 84a30563..a49f0486 100644 --- a/charts/fluent-bit/templates/_helpers.tpl +++ b/charts/fluent-bit/templates/_helpers.tpl @@ -24,6 +24,17 @@ If release name contains chart name it will be used as a full name. {{- end -}} {{- end -}} +{{/* +Allow the release namespace to be overridden for multi-namespace deployments in combined charts +*/}} +{{- define "fluent-bit.namespace" -}} +{{- if .Values.namespaceOverride -}} +{{- .Values.namespaceOverride -}} +{{- else -}} +{{- .Release.Namespace -}} +{{- end -}} +{{- end -}} + {{/* Create chart name and version as used by the chart label. */}} diff --git a/charts/fluent-bit/templates/clusterrolebinding.yaml b/charts/fluent-bit/templates/clusterrolebinding.yaml index e4b55b20..a521e510 100644 --- a/charts/fluent-bit/templates/clusterrolebinding.yaml +++ b/charts/fluent-bit/templates/clusterrolebinding.yaml @@ -12,5 +12,5 @@ roleRef: subjects: - kind: ServiceAccount name: {{ include "fluent-bit.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} {{- end -}} diff --git a/charts/fluent-bit/templates/configmap-dashboards.yaml b/charts/fluent-bit/templates/configmap-dashboards.yaml index 8047d51f..5095b476 100644 --- a/charts/fluent-bit/templates/configmap-dashboards.yaml +++ b/charts/fluent-bit/templates/configmap-dashboards.yaml @@ -5,7 +5,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit.fullname" $ }}-dashboard-{{ trimSuffix ".json" (base $path) }} - namespace: {{ default $.Release.Namespace $.Values.dashboards.namespace }} + namespace: {{ default (include "fluent-bit.namespace" $) $.Values.dashboards.namespace }} {{- with $.Values.dashboards.annotations }} annotations: {{- toYaml . | nindent 4 -}} diff --git a/charts/fluent-bit/templates/configmap-luascripts.yaml b/charts/fluent-bit/templates/configmap-luascripts.yaml index 451e433d..aefc65e5 100644 --- a/charts/fluent-bit/templates/configmap-luascripts.yaml +++ b/charts/fluent-bit/templates/configmap-luascripts.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit.fullname" . }}-luascripts - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} data: diff --git a/charts/fluent-bit/templates/configmap.yaml b/charts/fluent-bit/templates/configmap.yaml index 37821d3c..70e57d57 100644 --- a/charts/fluent-bit/templates/configmap.yaml +++ b/charts/fluent-bit/templates/configmap.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} data: diff --git a/charts/fluent-bit/templates/daemonset.yaml b/charts/fluent-bit/templates/daemonset.yaml index 12570954..b496531b 100644 --- a/charts/fluent-bit/templates/daemonset.yaml +++ b/charts/fluent-bit/templates/daemonset.yaml @@ -3,7 +3,7 @@ apiVersion: apps/v1 kind: DaemonSet metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.labels }} diff --git a/charts/fluent-bit/templates/deployment.yaml b/charts/fluent-bit/templates/deployment.yaml index 7ba61b5f..8371d1fb 100644 --- a/charts/fluent-bit/templates/deployment.yaml +++ b/charts/fluent-bit/templates/deployment.yaml @@ -3,7 +3,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.labels }} diff --git a/charts/fluent-bit/templates/hpa.yaml b/charts/fluent-bit/templates/hpa.yaml index 243459f8..000cc071 100644 --- a/charts/fluent-bit/templates/hpa.yaml +++ b/charts/fluent-bit/templates/hpa.yaml @@ -3,7 +3,7 @@ apiVersion: {{ include "fluent-bit.hpa.apiVersion" . }} kind: HorizontalPodAutoscaler metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} spec: diff --git a/charts/fluent-bit/templates/ingress.yaml b/charts/fluent-bit/templates/ingress.yaml index a6ce859b..70c6167e 100644 --- a/charts/fluent-bit/templates/ingress.yaml +++ b/charts/fluent-bit/templates/ingress.yaml @@ -9,7 +9,7 @@ apiVersion: {{ include "fluent-bit.ingress.apiVersion" . }} kind: Ingress metadata: name: {{ $fullName }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.ingress.annotations }} diff --git a/charts/fluent-bit/templates/networkpolicy.yaml b/charts/fluent-bit/templates/networkpolicy.yaml index aee927cb..35eab38d 100644 --- a/charts/fluent-bit/templates/networkpolicy.yaml +++ b/charts/fluent-bit/templates/networkpolicy.yaml @@ -3,7 +3,7 @@ apiVersion: "networking.k8s.io/v1" kind: "NetworkPolicy" metadata: name: {{ include "fluent-bit.fullname" . | quote }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} spec: diff --git a/charts/fluent-bit/templates/pdb.yaml b/charts/fluent-bit/templates/pdb.yaml index d073f678..2d87a72d 100644 --- a/charts/fluent-bit/templates/pdb.yaml +++ b/charts/fluent-bit/templates/pdb.yaml @@ -3,7 +3,7 @@ apiVersion: {{ include "fluent-bit.pdb.apiVersion" . }} kind: PodDisruptionBudget metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.podDisruptionBudget.annotations }} diff --git a/charts/fluent-bit/templates/prometheusrule.yaml b/charts/fluent-bit/templates/prometheusrule.yaml index 26e92e56..b5b6e285 100644 --- a/charts/fluent-bit/templates/prometheusrule.yaml +++ b/charts/fluent-bit/templates/prometheusrule.yaml @@ -3,7 +3,7 @@ apiVersion: monitoring.coreos.com/v1 kind: PrometheusRule metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ default $.Release.Namespace .Values.prometheusRule.namespace }} + namespace: {{ default (include "fluent-bit.namespace" $) .Values.prometheusRule.namespace }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- if .Values.prometheusRule.additionalLabels }} diff --git a/charts/fluent-bit/templates/service.yaml b/charts/fluent-bit/templates/service.yaml index ad92af56..f9fa4999 100644 --- a/charts/fluent-bit/templates/service.yaml +++ b/charts/fluent-bit/templates/service.yaml @@ -2,7 +2,7 @@ apiVersion: v1 kind: Service metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.service.labels }} diff --git a/charts/fluent-bit/templates/serviceaccount.yaml b/charts/fluent-bit/templates/serviceaccount.yaml index 433e182d..cc0d7d7b 100644 --- a/charts/fluent-bit/templates/serviceaccount.yaml +++ b/charts/fluent-bit/templates/serviceaccount.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: ServiceAccount metadata: name: {{ include "fluent-bit.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.serviceAccount.annotations }} diff --git a/charts/fluent-bit/templates/servicemonitor.yaml b/charts/fluent-bit/templates/servicemonitor.yaml index 75ba026d..1c4b3f87 100644 --- a/charts/fluent-bit/templates/servicemonitor.yaml +++ b/charts/fluent-bit/templates/servicemonitor.yaml @@ -3,7 +3,7 @@ apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: {{ template "fluent-bit.fullname" . }} - namespace: {{ default .Release.Namespace .Values.serviceMonitor.namespace }} + namespace: {{ default (include "fluent-bit.namespace" .) .Values.serviceMonitor.namespace }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.serviceMonitor.selector }} @@ -44,7 +44,7 @@ spec: {{- end }} namespaceSelector: matchNames: - - {{ .Release.Namespace }} + - {{ include "fluent-bit.namespace" . }} selector: matchLabels: {{- include "fluent-bit.selectorLabels" . | nindent 6 }} diff --git a/charts/fluent-bit/templates/tests/test-connection.yaml b/charts/fluent-bit/templates/tests/test-connection.yaml index 4852059c..542729b3 100644 --- a/charts/fluent-bit/templates/tests/test-connection.yaml +++ b/charts/fluent-bit/templates/tests/test-connection.yaml @@ -3,7 +3,7 @@ apiVersion: v1 kind: Pod metadata: name: "{{ include "fluent-bit.fullname" . }}-test-connection" - namespace: {{ default .Release.Namespace .Values.testFramework.namespace }} + namespace: {{ default (include "fluent-bit.namespace" .) .Values.testFramework.namespace }} labels: helm.sh/chart: {{ include "fluent-bit.chart" . }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} diff --git a/charts/fluent-bit/templates/vpa.yaml b/charts/fluent-bit/templates/vpa.yaml index d4df3ed8..386a5d19 100644 --- a/charts/fluent-bit/templates/vpa.yaml +++ b/charts/fluent-bit/templates/vpa.yaml @@ -3,7 +3,7 @@ apiVersion: autoscaling.k8s.io/v1 kind: VerticalPodAutoscaler metadata: name: {{ include "fluent-bit.fullname" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluent-bit.namespace" . }} labels: {{- include "fluent-bit.labels" . | nindent 4 }} {{- with .Values.autoscaling.vpa.annotations }} diff --git a/charts/fluent-bit/values.yaml b/charts/fluent-bit/values.yaml index 5de1d0a2..cd8667a8 100644 --- a/charts/fluent-bit/values.yaml +++ b/charts/fluent-bit/values.yaml @@ -26,6 +26,7 @@ testFramework: imagePullSecrets: [] nameOverride: "" fullnameOverride: "" +namespaceOverride: "" serviceAccount: create: true diff --git a/charts/fluentd/templates/NOTES.txt b/charts/fluentd/templates/NOTES.txt index b248dcb2..c02e4476 100644 --- a/charts/fluentd/templates/NOTES.txt +++ b/charts/fluentd/templates/NOTES.txt @@ -1,5 +1,5 @@ Get Fluentd build information by running these commands: -export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "fluentd.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") -kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 24231:24231 +export POD_NAME=$(kubectl get pods --namespace {{ include "fluentd.namespace" . }} -l "app.kubernetes.io/name={{ include "fluentd.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") +kubectl --namespace {{ include "fluentd.namespace" . }} port-forward $POD_NAME 24231:24231 curl http://127.0.0.1:24231/metrics diff --git a/charts/fluentd/templates/_helpers.tpl b/charts/fluentd/templates/_helpers.tpl index 1b1bf702..52e4a226 100644 --- a/charts/fluentd/templates/_helpers.tpl +++ b/charts/fluentd/templates/_helpers.tpl @@ -24,6 +24,17 @@ If release name contains chart name it will be used as a full name. {{- end -}} {{- end -}} +{{/* +Allow the release namespace to be overridden for multi-namespace deployments in combined charts +*/}} +{{- define "fluentd.namespace" -}} +{{- if .Values.namespaceOverride -}} +{{- .Values.namespaceOverride -}} +{{- else -}} +{{- .Release.Namespace -}} +{{- end -}} +{{- end -}} + {{/* Create chart name and version as used by the chart label. */}} @@ -101,4 +112,4 @@ autoscaling/v2beta2 {{- else -}} autoscaling/v2 {{- end -}} -{{- end -}} \ No newline at end of file +{{- end -}} diff --git a/charts/fluentd/templates/clusterrolebinding.yaml b/charts/fluentd/templates/clusterrolebinding.yaml index dff8cae1..82eb5459 100644 --- a/charts/fluentd/templates/clusterrolebinding.yaml +++ b/charts/fluentd/templates/clusterrolebinding.yaml @@ -12,5 +12,5 @@ roleRef: subjects: - kind: ServiceAccount name: {{ include "fluentd.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} + namespace: {{ include "fluentd.namespace" . }} {{- end -}} diff --git a/charts/fluentd/templates/configmap-dashboards.yaml b/charts/fluentd/templates/configmap-dashboards.yaml index de0d5cf1..ba8ad04a 100644 --- a/charts/fluentd/templates/configmap-dashboards.yaml +++ b/charts/fluentd/templates/configmap-dashboards.yaml @@ -4,7 +4,7 @@ apiVersion: v1 kind: ConfigMap metadata: name: dashboard-{{ trimSuffix ".json" (base $path) }}-{{ include "fluentd.shortReleaseName" $ }} - namespace: {{ $.Values.dashboards.namespace | default $.Release.Namespace }} + namespace: {{ $.Values.dashboards.namespace | default (include "fluentd.namespace" $) }} labels: {{- include "fluentd.labels" $ | nindent 4 }} {{- range $key, $val := $.Values.dashboards.labels }} diff --git a/charts/fluentd/templates/servicemonitor.yaml b/charts/fluentd/templates/servicemonitor.yaml index 521b6c53..99da1407 100644 --- a/charts/fluentd/templates/servicemonitor.yaml +++ b/charts/fluentd/templates/servicemonitor.yaml @@ -36,7 +36,7 @@ spec: {{ else }} namespaceSelector: matchNames: - - {{ .Release.Namespace }} + - {{ include "fluentd.namespace" . }} {{- end }} selector: matchLabels: diff --git a/charts/fluentd/values.yaml b/charts/fluentd/values.yaml index ac05f8b2..4555b656 100644 --- a/charts/fluentd/values.yaml +++ b/charts/fluentd/values.yaml @@ -1,5 +1,6 @@ nameOverride: "" fullnameOverride: "" +namespaceOverride: "" # DaemonSet, Deployment or StatefulSet kind: "DaemonSet"