From 14d6eae467e8769f001d7d46694f87bdce9c44f1 Mon Sep 17 00:00:00 2001 From: Mike Elliott Date: Sun, 15 Apr 2018 10:39:41 -0400 Subject: Add service name standard template Updated helm starter to make use of a standard service name tpl. Change-Id: Ia387c2944da6d46238aa041db8542368b5c8d6a1 Issue-ID: OOM-906 Signed-off-by: Mike Elliott --- kubernetes/common/common/templates/_service.tpl | 30 ++++++++++++++++++++++ .../starters/onap-app/templates/deployment.yaml | 4 +-- .../helm/starters/onap-app/templates/service.yaml | 6 ++--- kubernetes/helm/starters/onap-app/values.yaml | 10 ++++++-- 4 files changed, 43 insertions(+), 7 deletions(-) create mode 100644 kubernetes/common/common/templates/_service.tpl diff --git a/kubernetes/common/common/templates/_service.tpl b/kubernetes/common/common/templates/_service.tpl new file mode 100644 index 0000000000..d76c5e0e8a --- /dev/null +++ b/kubernetes/common/common/templates/_service.tpl @@ -0,0 +1,30 @@ +{{/* +# 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 a chart's service. + + The default will be the chart name, unless + overridden in the service configuration. + + - .Values.service.name : override default service (ie. chart) name +*/}} +{{/* + Expand the service name for a chart. +*/}} +{{- define "common.servicename" -}} + {{- default .Chart.Name .Values.service.name trunc 63 | trimSuffix "-" -}} +{{- end -}} \ No newline at end of file diff --git a/kubernetes/helm/starters/onap-app/templates/deployment.yaml b/kubernetes/helm/starters/onap-app/templates/deployment.yaml index 71aae08f31..a78795486b 100644 --- a/kubernetes/helm/starters/onap-app/templates/deployment.yaml +++ b/kubernetes/helm/starters/onap-app/templates/deployment.yaml @@ -54,13 +54,13 @@ spec: - containerPort: {{ .Values.service.internalPort }} # disable liveness probe when breakpoints set in debugger # so K8s doesn't restart unresponsive container - {{- if eq .Values.liveness.enabled true }} + {{ if .Values.liveness.enabled }} livenessProbe: tcpSocket: port: {{ .Values.service.internalPort }} initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }} periodSeconds: {{ .Values.liveness.periodSeconds }} - {{ end -}} + {{ end }} readinessProbe: tcpSocket: port: {{ .Values.service.internalPort }} diff --git a/kubernetes/helm/starters/onap-app/templates/service.yaml b/kubernetes/helm/starters/onap-app/templates/service.yaml index cab488aac3..94b81e855c 100644 --- a/kubernetes/helm/starters/onap-app/templates/service.yaml +++ b/kubernetes/helm/starters/onap-app/templates/service.yaml @@ -15,7 +15,7 @@ apiVersion: v1 kind: Service metadata: - name: {{ include "common.fullname" . }} + name: {{ include "common.servicename" . }} namespace: {{ include "common.namespace" . }} labels: app: {{ include "common.name" . }} @@ -42,11 +42,11 @@ spec: #Example internal target port if required #targetPort: {{ .Values.service.internalPort }} nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }} - name: {{ .Values.service.name }} + name: {{ .Values.service.portName | default "http" }} {{- else -}} - port: {{ .Values.service.externalPort }} targetPort: {{ .Values.service.internalPort }} - name: {{ .Values.service.name }} + name: {{ .Values.service.portName | default "http" }} {{- end}} selector: app: {{ include "common.name" . }} diff --git a/kubernetes/helm/starters/onap-app/values.yaml b/kubernetes/helm/starters/onap-app/values.yaml index 2e0d7b7762..ada99edee8 100644 --- a/kubernetes/helm/starters/onap-app/values.yaml +++ b/kubernetes/helm/starters/onap-app/values.yaml @@ -60,15 +60,21 @@ readiness: initialDelaySeconds: 10 periodSeconds: 10 +#Example service definition with external, internal and node ports. service: - #Example service definition with external, internal and node ports. + # The default service name (exposed in the service.yaml) will be the same + # name as the chart. If the service name needs to be overriden (such as + # when a subchart is shared), uncomment the value below. + #name: + #Services may use any combination of ports depending on the 'type' of #service being defined. type: NodePort - name: externalPort: <8080> internalPort: <80> nodePort: + # optional port name override - default can be defined in service.yaml + #portName: http ingress: enabled: false -- cgit 1.2.3-korg