diff options
Diffstat (limited to 'kubernetes/common/common/templates/_utils.tpl')
-rw-r--r-- | kubernetes/common/common/templates/_utils.tpl | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/kubernetes/common/common/templates/_utils.tpl b/kubernetes/common/common/templates/_utils.tpl new file mode 100644 index 0000000000..ece786f49f --- /dev/null +++ b/kubernetes/common/common/templates/_utils.tpl @@ -0,0 +1,41 @@ +{{/* +# Copyright © 2019 Orange +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +*/}} + +{{/* +Renders a value that contains template. +Usage: +{{ include "common.tplValue" ( dict "value" .Values.path.to.the.Value "context" $) }} +*/}} +{{- define "common.tplValue" -}} + {{- if typeIs "string" .value }} + {{- tpl .value .context }} + {{- else }} + {{- tpl (.value | toYaml) .context }} + {{- end }} +{{- end -}} + +{{/* +Retrieve values from the subchart, not from the main chart +Usage: +{{- $initRoot := default $dot.Values.subChartName .initRoot -}} +{{ $subchartDot := fromJson (include "common.subChartDot" (dict "dot" . "initRoot" $initRoot)) }} +*/}} +{{- define "common.subChartDot" }} +{{- $initRoot := .initRoot }} +{{- $dot := .dot }} +{{/* Our version of helm doesn't support deepCopy so we need this nasty trick */}} +{{ mergeOverwrite (deepCopy (omit $dot "Values")) (dict "Chart" (set (fromJson (toJson $dot.Chart)) "Name" $initRoot.nameOverride) "Values" (mergeOverwrite (deepCopy $initRoot) (dict "global" $dot.Values.global))) | toJson }} +{{- end -}} |