Merge "[COMMON] Fix more array bashisms"
[oom.git] / kubernetes / common / common / templates / _utils.tpl
1 {{/*
2 # Copyright © 2019 Orange
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 */}}
16
17 {{/*
18 Renders a value that contains template.
19 Usage:
20 {{ include "common.tplValue" ( dict "value" .Values.path.to.the.Value "context" $) }}
21 */}}
22 {{- define "common.tplValue" -}}
23     {{- if typeIs "string" .value }}
24         {{- tpl .value .context }}
25     {{- else }}
26         {{- tpl (.value | toYaml) .context }}
27     {{- end }}
28 {{- end -}}
29
30 {{/*
31 Retrieve values from the subchart, not from the main chart
32 Usage:
33 {{- $initRoot := default $dot.Values.subChartName .initRoot -}}
34 {{  $subchartDot := fromJson (include "common.subChartDot" (dict "dot" . "initRoot" $initRoot)) }}
35 */}}
36 {{- define "common.subChartDot" }}
37 {{- $initRoot := .initRoot }}
38 {{- $dot := .dot }}
39 {{ mergeOverwrite (deepCopy (omit $dot "Values" "Chart")) (dict "Chart" (set (set (fromJson (toJson $dot.Chart)) "Name" $initRoot.nameOverride) "Version" $dot.Chart.Version) "Values" (mergeOverwrite (deepCopy $initRoot) (dict "global" $dot.Values.global))) | toJson }}
40 {{- end -}}