summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKrzysztof Opasiak <k.opasiak@samsung.com>2020-07-16 21:02:56 +0200
committerKrzysztof Opasiak <k.opasiak@samsung.com>2020-07-16 21:02:56 +0200
commite00bd6af6003beb51111eb3a1a7dd2def3bf80df (patch)
tree84bb3d32652874fb0d8e102d18b84e5e80cfef72
parent3fa21c6d5531d387849afa55cd0fbd890f9edb6b (diff)
[COMMON] Fix name generation in readinessCheck template
According to docummentation readinessCheck template accept wait_for value in a type of list. Unfortunately in that case it generated the init container name with -- as the name key was empty. This commit fixes this and ensures acceptance of both simple and extended format for wait_for value. Issue-ID: OOM-2511 Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com> Change-Id: Ia345251f01ade5191f0a06d6eaec41cdd6a53459
-rw-r--r--kubernetes/common/readinessCheck/templates/_readinessCheck.tpl25
1 files changed, 19 insertions, 6 deletions
diff --git a/kubernetes/common/readinessCheck/templates/_readinessCheck.tpl b/kubernetes/common/readinessCheck/templates/_readinessCheck.tpl
index 1bdea6bb27..3cdf13a362 100644
--- a/kubernetes/common/readinessCheck/templates/_readinessCheck.tpl
+++ b/kubernetes/common/readinessCheck/templates/_readinessCheck.tpl
@@ -17,18 +17,29 @@
{{/*
Generate readiness part for a pod
Will look by default to .Values.wait_for
+ There are two formats available.
- Value of wait_for is an array of all pods /jobs to wait:
-
- Example:
+ The simple one (where wait_for is just list of containers):
wait_for:
- aaf-locate
- aaf-cm
- aaf-service
- The function can takes two arguments (inside a dictionary):
+ The powerful one (where wait_for is a map):
+
+ wait_for:
+ name: myname
+ containers:
+ - aaf-locate
+ - aaf-cm
+ - aaf-service
+
+
+ The function can takes below arguments (inside a dictionary):
- .dot : environment (.)
+ - .initRoot : the root dictionary of readinessCheck submodule
+ (default to .Values.readinessCheck)
- .wait_for : list of containers / jobs to wait for (default to
.Values.wait_for)
@@ -42,13 +53,15 @@
{{/* Our version of helm doesn't support deepCopy so we need this nasty trick */}}
{{- $subchartDot := fromJson (include "common.subChartDot" (dict "dot" $dot "initRoot" $initRoot)) }}
{{- $wait_for := default $initRoot.wait_for .wait_for -}}
-- name: {{ include "common.name" $dot }}-{{ $wait_for.name }}-readiness
+{{- $containers := index (ternary (dict "containers" $wait_for) $wait_for (kindIs "slice" $wait_for)) "containers" -}}
+{{- $namePart := index (ternary (dict) $wait_for (kindIs "slice" $wait_for)) "name" -}}
+- name: {{ include "common.name" $dot }}{{ ternary "" (printf "-%s" $namePart) (empty $namePart) }}-readiness
image: "{{ $subchartDot.Values.global.readinessRepository }}/{{ $subchartDot.Values.global.readinessImage }}"
imagePullPolicy: {{ $subchartDot.Values.global.pullPolicy | default $subchartDot.Values.pullPolicy }}
command:
- /root/ready.py
args:
- {{- range $container := $wait_for.containers }}
+ {{- range $container := $containers }}
- --container-name
- {{ tpl $container $dot }}
{{- end }}