11{ {/*
2- Copyright VMware , Inc.
2+ Copyright Broadcom , Inc. All Rights Reserved .
33SPDX-License-Identifier: APACHE-2.0
44*/} }
55
@@ -60,13 +60,14 @@ Return a topologyKey definition
6060
6161{ {/*
6262Return a soft podAffinity/podAntiAffinity definition
63- {{ include " common.affinities.pods.soft" (dict " component" " FOO" " customLabels" .Values.podLabels " extraMatchLabels" .Values.extraMatchLabels " topologyKey" " BAR" " extraPodAffinityTerms" .Values.extraPodAffinityTerms " context" $) -} }
63+ {{ include " common.affinities.pods.soft" (dict " component" " FOO" " customLabels" .Values.podLabels " extraMatchLabels" .Values.extraMatchLabels " topologyKey" " BAR" " extraPodAffinityTerms" .Values.extraPodAffinityTerms " extraNamespaces " (list " namespace1 " " namespace2 " ) " context" $) -} }
6464*/}}
6565{ {- define " common.affinities.pods.soft" -} }
6666{ {- $component := default " " .component -} }
6767{ {- $customLabels := default (dict) .customLabels -} }
6868{ {- $extraMatchLabels := default (dict) .extraMatchLabels -} }
6969{ {- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -} }
70+ { {- $extraNamespaces := default (list) .extraNamespaces -} }
7071preferredDuringSchedulingIgnoredDuringExecution:
7172 - podAffinityTerm:
7273 labelSelector:
@@ -77,6 +78,13 @@ preferredDuringSchedulingIgnoredDuringExecution:
7778 { {- range $key , $value := $extraMatchLabels } }
7879 { { $key } }: { { $value | quote } }
7980 { {- end } }
81+ { {- if $extraNamespaces } }
82+ namespaces:
83+ - { { .context.Release.Namespace } }
84+ { {- with $extraNamespaces } }
85+ { {- include " common.tplvalues.render" (dict " value" . " context" $) | nindent 8 } }
86+ { {- end } }
87+ { {- end } }
8088 topologyKey: { { include " common.affinities.topologyKey" (dict " topologyKey" .topologyKey) } }
8189 weight: 1
8290 { {- range $extraPodAffinityTerms } }
@@ -89,20 +97,28 @@ preferredDuringSchedulingIgnoredDuringExecution:
8997 { {- range $key , $value := .extraMatchLabels } }
9098 { { $key } }: { { $value | quote } }
9199 { {- end } }
100+ { {- if .namespaces } }
101+ namespaces:
102+ - { { $.context.Release.Namespace } }
103+ { {- with .namespaces } }
104+ { {- include " common.tplvalues.render" (dict " value" . " context" $) | nindent 8 } }
105+ { {- end } }
106+ { {- end } }
92107 topologyKey: { { include " common.affinities.topologyKey" (dict " topologyKey" .topologyKey) } }
93108 weight: { { .weight | default 1 -} }
94109 { {- end -} }
95110{ {- end -} }
96111
97112{ {/*
98113Return a hard podAffinity/podAntiAffinity definition
99- {{ include " common.affinities.pods.hard" (dict " component" " FOO" " customLabels" .Values.podLabels " extraMatchLabels" .Values.extraMatchLabels " topologyKey" " BAR" " extraPodAffinityTerms" .Values.extraPodAffinityTerms " context" $) -} }
114+ {{ include " common.affinities.pods.hard" (dict " component" " FOO" " customLabels" .Values.podLabels " extraMatchLabels" .Values.extraMatchLabels " topologyKey" " BAR" " extraPodAffinityTerms" .Values.extraPodAffinityTerms " extraNamespaces " (list " namespace1 " " namespace2 " ) " context" $) -} }
100115*/}}
101116{ {- define " common.affinities.pods.hard" -} }
102117{ {- $component := default " " .component -} }
103118{ {- $customLabels := default (dict) .customLabels -} }
104119{ {- $extraMatchLabels := default (dict) .extraMatchLabels -} }
105120{ {- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -} }
121+ { {- $extraNamespaces := default (list) .extraNamespaces -} }
106122requiredDuringSchedulingIgnoredDuringExecution:
107123 - labelSelector:
108124 matchLabels: { {- (include " common.labels.matchLabels" ( dict " customLabels" $customLabels " context" .context )) | nindent 8 } }
@@ -112,6 +128,13 @@ requiredDuringSchedulingIgnoredDuringExecution:
112128 { {- range $key , $value := $extraMatchLabels } }
113129 { { $key } }: { { $value | quote } }
114130 { {- end } }
131+ { {- if $extraNamespaces } }
132+ namespaces:
133+ - { { .context.Release.Namespace } }
134+ { {- with $extraNamespaces } }
135+ { {- include " common.tplvalues.render" (dict " value" . " context" $) | nindent 6 } }
136+ { {- end } }
137+ { {- end } }
115138 topologyKey: { { include " common.affinities.topologyKey" (dict " topologyKey" .topologyKey) } }
116139 { {- range $extraPodAffinityTerms } }
117140 - labelSelector:
@@ -122,6 +145,13 @@ requiredDuringSchedulingIgnoredDuringExecution:
122145 { {- range $key , $value := .extraMatchLabels } }
123146 { { $key } }: { { $value | quote } }
124147 { {- end } }
148+ { {- if .namespaces } }
149+ namespaces:
150+ - { { $.context.Release.Namespace } }
151+ { {- with .namespaces } }
152+ { {- include " common.tplvalues.render" (dict " value" . " context" $) | nindent 6 } }
153+ { {- end } }
154+ { {- end } }
125155 topologyKey: { { include " common.affinities.topologyKey" (dict " topologyKey" .topologyKey) } }
126156 { {- end -} }
127157{ {- end -} }
0 commit comments