94b81e855ceb1965269da34024ab417c72fe1574
[oom.git] / kubernetes / helm / starters / onap-app / templates / service.yaml
1 # Copyright © 2017 Amdocs, Bell Canada
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #       http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 apiVersion: v1
16 kind: Service
17 metadata:
18   name: {{ include "common.servicename" . }}
19   namespace: {{ include "common.namespace" . }}
20   labels:
21     app: {{ include "common.name" . }}
22     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
23     release: {{ .Release.Name }}
24     heritage: {{ .Release.Service }}
25   annotations:
26 # Example MSB registration annotation
27 #    msb.onap.org/service-info: '[
28 #      {
29 #          "serviceName": "so",
30 #          "version": "v1",
31 #          "url": "/ecomp/mso/infra",
32 #          "protocol": "REST"
33 #          "port": "8080",
34 #          "visualRange":"1"
35 #      }
36 #      ]'
37 spec:
38   type: {{ .Values.service.type }}
39   ports:
40     {{if eq .Values.service.type "NodePort" -}}
41     - port: {{ .Values.service.externalPort }}
42       #Example internal target port if required
43       #targetPort: {{ .Values.service.internalPort }}
44       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
45       name: {{ .Values.service.portName | default "http" }}
46     {{- else -}}
47     - port: {{ .Values.service.externalPort }}
48       targetPort: {{ .Values.service.internalPort }}
49       name: {{ .Values.service.portName | default "http" }}
50     {{- end}}
51   selector:
52     app: {{ include "common.name" . }}
53     release: {{ .Release.Name }}