- aaf-cm
- aaf-service
+ the powerful one allows also to wait for pod names with this
+ (has to start with the given pod name):
+ wait_for:
+ name: myname
+ pods:
+ - test-pod
+
+ the powerful one allows also to wait for a service to be
+ available, which means all pods are deployed, which are
+ selected by the service definition:
+ wait_for:
+ name: myservice
+ services:
+ - mariadb-galera-service
+
+ the powerful one allows also to wait for pods with the
+ given "app" label:
+ wait_for:
+ name: myname
+ apps:
+ - mariadb-galera
+
+ the powerful one allows also to wait for jobs with this:
+ wait_for:
+ name: myname
+ jobs:
+ - '{{ include "common.release" . }}-the-job'
+
+ Be careful, as on the example above, the job name may have a "non fixed" name
+ and thus don't forget to use templates if needed
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)
+ - .wait_for : list of service / containers / pods /apps / jobs to wait for
+ (default to .Values.wait_for)
Example calls:
{{ include "common.readinessCheck.waitFor" . }}
{{- $subchartDot := fromJson (include "common.subChartDot" (dict "dot" $dot "initRoot" $initRoot)) }}
{{- $wait_for := default $initRoot.wait_for .wait_for -}}
{{- $containers := index (ternary (dict "containers" $wait_for) $wait_for (kindIs "slice" $wait_for)) "containers" -}}
+{{- $services := index (ternary (dict) $wait_for (kindIs "slice" $wait_for)) "services" -}}
+{{- $pods := index (ternary (dict) $wait_for (kindIs "slice" $wait_for)) "pods" -}}
+{{- $apps := index (ternary (dict) $wait_for (kindIs "slice" $wait_for)) "apps" -}}
{{- $namePart := index (ternary (dict) $wait_for (kindIs "slice" $wait_for)) "name" -}}
+{{- $jobs := index (ternary (dict) $wait_for (kindIs "slice" $wait_for)) "jobs" -}}
- name: {{ include "common.name" $dot }}{{ ternary "" (printf "-%s" $namePart) (empty $namePart) }}-readiness
- image: "{{ include "common.repository" $subchartDot }}/{{ $subchartDot.Values.global.readinessImage }}"
+ image: {{ include "repositoryGenerator.image.readiness" $subchartDot }}
imagePullPolicy: {{ $subchartDot.Values.global.pullPolicy | default $subchartDot.Values.pullPolicy }}
+ securityContext:
+ runAsUser: {{ $subchartDot.Values.user }}
+ runAsGroup: {{ $subchartDot.Values.group }}
command:
- /app/ready.py
args:
- {{- range $container := $containers }}
+ {{- range $container := default (list) $containers }}
- --container-name
- {{ tpl $container $dot }}
{{- end }}
+ {{- range $pod := default (list) $pods }}
+ - --pod-name
+ - {{ tpl $pod $dot }}
+ {{- end }}
+ {{- range $service := default (list) $services }}
+ - --service-name
+ - {{ tpl $service $dot }}
+ {{- end }}
+ {{- range $app := default (list) $apps }}
+ - --app-name
+ - {{ tpl $app $dot }}
+ {{- end }}
+ {{- range $job := $jobs }}
+ - --job-name
+ - {{ tpl $job $dot }}
+ {{- end }}
env:
- name: NAMESPACE
+ {{- if $subchartDot.Values.namespace }}
+ value: {{ $subchartDot.Values.namespace }}
+ {{- else }}
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
+ {{- end }}
resources:
limits:
cpu: {{ $subchartDot.Values.limits.cpu }}