Add override flag to the ingress template 35/100535/5
authorLucjan Bryndza <l.bryndza@samsung.com>
Tue, 21 Jan 2020 10:17:04 +0000 (11:17 +0100)
committerKrzysztof Opasiak <k.opasiak@samsung.com>
Wed, 22 Jan 2020 23:09:03 +0000 (00:09 +0100)
Issue-ID: OOM-2267
Change-Id: I0ee8b3bc35d5f71dda6322b35766b3dec105b9c0
Signed-off-by: Lucjan Bryndza <l.bryndza@samsung.com>
Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
kubernetes/common/common/templates/_ingress.tpl

index b4afe63..935e318 100644 (file)
@@ -1,5 +1,6 @@
 {{- define "ingress.config.port" -}}
 {{- if .Values.ingress -}}
+{{- if .Values.global.ingress -}}
 {{- if or (not .Values.global.ingress.virtualhost) (not .Values.global.ingress.virtualhost.enabled) -}}
   - http:
       paths:
@@ -27,6 +28,7 @@
 {{- end -}}
 {{- end -}}
 {{- end -}}
+{{- end -}}
 
 
 {{- define "ingress.config.annotations.ssl" -}}
@@ -55,11 +57,27 @@ nginx.ingress.kubernetes.io/ssl-redirect: "false"
 {{ include "ingress.config.annotations.ssl" . | indent 4 | trim }}
 {{- end -}}
 
+{{- define "common.ingress._overrideIfDefined" -}}
+  {{- $currValue := .currVal }}
+  {{- $parent := .parent }}
+  {{- $var := .var }}
+  {{- if $parent -}}
+    {{- if hasKey $parent $var }}
+      {{- default "" (index $parent $var) }}
+    {{- else -}}
+      {{- default "" $currValue -}}
+    {{- end -}}
+  {{- else -}}
+    {{- default "" $currValue }}
+  {{- end -}}
+{{- end -}}
 
 {{- define "common.ingress" -}}
 {{- if .Values.ingress -}}
-{{- if .Values.global.ingress -}}
-{{- if and .Values.ingress.enabled .Values.global.ingress.enabled -}}
+  {{- $ingressEnabled := default false .Values.ingress.enabled -}}
+  {{- $ingressEnabled := include "common.ingress._overrideIfDefined" (dict "currVal" $ingressEnabled "parent" (default (dict) .Values.global.ingress) "var" "enabled") }}
+  {{- $ingressEnabled := include "common.ingress._overrideIfDefined" (dict "currVal" $ingressEnabled "parent" .Values.ingress "var" "enabledOverride") }}
+  {{- if $ingressEnabled }}
 apiVersion: extensions/v1beta1
 kind: Ingress
 metadata:
@@ -81,4 +99,3 @@ spec:
 {{- end -}}
 {{- end -}}
 {{- end -}}
-{{- end -}}
\ No newline at end of file