Add common repository template 11/40711/1
authorMike Elliott <mike.elliott@amdocs.com>
Tue, 3 Apr 2018 14:23:32 +0000 (10:23 -0400)
committerMike Elliott <mike.elliott@amdocs.com>
Tue, 3 Apr 2018 14:23:32 +0000 (10:23 -0400)
Introducing a common template to be used by all ONAP
helm charts to ensure consistency in repository resolution.

This will allow the default repository in a chart to be
overridden with a global.repository value and then, if need be,
have the global.repository value be overridden on a per chart
basis using a repositoryOverride configuration value.

In the future will look at trying to address 3rdparty repository
resolution in a simular manor.

Change-Id: I7d6a14ae39d60bf75f80e28a038cea5de31aa558
Issue-ID: OOM-845
Signed-off-by: Mike Elliott <mike.elliott@amdocs.com>
kubernetes/common/common/templates/_repository.tpl [new file with mode: 0644]
kubernetes/helm/starters/onap-app/templates/deployment.yaml

diff --git a/kubernetes/common/common/templates/_repository.tpl b/kubernetes/common/common/templates/_repository.tpl
new file mode 100644 (file)
index 0000000..e054b57
--- /dev/null
@@ -0,0 +1,31 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{/*
+  Resolve the name of the common image repository.
+  The value for .Values.repository is used by default,
+  unless either override mechanism is used.
+
+  - .Values.global.repository  : override default image repository for all images
+  - .Values.repositoryOverride : override global and default image repository on a per image basis
+*/}}
+{{- define "common.repository" -}}
+  {{if .Values.repositoryOverride }}
+    {{- printf "%s" .Values.repositoryOverride -}}
+  {{else}}
+    {{- default .Values.repository .Values.global.repository -}}
+  {{end}}
+{{- end -}}
\ No newline at end of file
index 8b2bb4e..71aae08 100644 (file)
@@ -48,7 +48,7 @@ spec:
 #        name: {{ include "common.name" . }}-readiness
       containers:
         - name: {{ include "common.name" . }}
-          image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+          image: "{{ include "common.repository" . }}/{{ .Values.image }}"
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
           ports:
           - containerPort: {{ .Values.service.internalPort }}