helm chart for so containers
[oom.git] / kubernetes / so / charts / so-openstack-adapter / templates / service.yaml
1 # Copyright © 2018 AT&T USA
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 apiVersion: v1
15 kind: Service
16 metadata:
17   name: {{ include "common.servicename" . }}
18   namespace: {{ include "common.namespace" . }}
19   labels:
20     app: {{ include "common.name" . }}
21     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
22     release: {{ .Release.Name }}
23     heritage: {{ .Release.Service }}
24   annotations:
25     msb.onap.org/service-info: '[
26          {
27         "serviceName": "so/openstack",
28         "version": "v1",
29         "url": "/NetworkAdapter",
30         "protocol": "REST",
31         "port": "{{ .Values.service.externalPort }}",
32         "visualRange":"1",
33         "lb_policy":"ip_hash"
34          },
35          {
36         "serviceName": "so/openstack",
37         "version": "v1",
38         "url": "/NetworkAdapterAsync",
39         "protocol": "REST",
40         "port": "{{ .Values.service.externalPort }}",
41         "visualRange":"1",
42         "lb_policy":"ip_hash"
43          },
44           {
45         "serviceName": "so/openstack",
46         "version": "v1",
47         "url": "/TenantAdapter",
48         "protocol": "REST",
49         "port": "{{ .Values.service.externalPort }}",
50         "visualRange":"1",
51         "lb_policy":"ip_hash"
52          },
53          {
54         "serviceName": "so/openstack",
55         "version": "v1",
56         "url": "/VnfAdapter",
57         "protocol": "REST",
58         "port": "{{ .Values.service.externalPort }}",
59         "visualRange":"1",
60         "lb_policy":"ip_hash"
61          },
62          {
63         "serviceName": "so/openstack",
64         "version": "v1",
65         "url": "/VnfCloudifyAdapterImpl",
66         "protocol": "REST",
67         "port": "{{ .Values.service.externalPort }}",
68         "visualRange":"1",
69         "lb_policy":"ip_hash"
70          }
71          ]'
72 spec:
73   type: {{ .Values.service.type }}
74   ports:
75     {{if eq .Values.service.type "NodePort" -}}
76     - port: {{ .Values.service.internalPort }}
77       nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
78       name: {{ .Values.service.portName }}
79     {{- else -}}
80     - port: {{ .Values.service.externalPort }}
81       targetPort: {{ .Values.service.internalPort }}
82       name: {{ .Values.service.portName }}
83     {{- end}}
84   selector:
85     app: {{ include "common.name" . }}
86     release: {{ .Release.Name }}