Create RMR route listening services. Further integrating charts with common template.
[it/dep.git] / ric-platform / 50-RIC-Platform / helm / appmgr / templates / deployment.yaml
1 ################################################################################
2 #   Copyright (c) 2019 AT&T Intellectual Property.                             #
3 #   Copyright (c) 2019 Nokia.                                                  #
4 #                                                                              #
5 #   Licensed under the Apache License, Version 2.0 (the "License");            #
6 #   you may not use this file except in compliance with the License.           #
7 #   You may obtain a copy of the License at                                    #
8 #                                                                              #
9 #       http://www.apache.org/licenses/LICENSE-2.0                             #
10 #                                                                              #
11 #   Unless required by applicable law or agreed to in writing, software        #
12 #   distributed under the License is distributed on an "AS IS" BASIS,          #
13 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
14 #   See the License for the specific language governing permissions and        #
15 #   limitations under the License.                                             #
16 ################################################################################
17
18 apiVersion: apps/v1
19 kind: Deployment
20 metadata:
21   name: {{ include "common.deploymentname.appmgr" . }}
22   namespace: {{ include "common.namespace.platform" . }}
23   labels:
24     app: {{ include "common.namespace.platform" . }}-{{ include "common.name.appmgr" . }}
25     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
26     release: {{ .Release.Name }}
27     heritage: {{ .Release.Service }}
28 spec:
29   replicas: {{ .Values.appmgr.replicaCount }}
30   selector:
31     matchLabels:
32       app: {{ include "common.namespace.platform" . }}-{{ include "common.name.appmgr" . }}
33       release: {{ .Release.Name }}
34   template:
35     metadata:
36       labels:
37         app: {{ include "common.namespace.platform" . }}-{{ include "common.name.appmgr" . }}
38         release: {{ .Release.Name }}
39     spec:
40       hostname: {{ include "common.name.appmgr" . }}
41       imagePullSecrets:
42         - name: {{ include "common.repositoryCred" . }}
43       containers:
44         - name: {{ include "common.containername.appmgr" . }}
45           image: {{ include "common.repository" . }}/{{ .Values.appmgr.image.name }}:{{ .Values.appmgr.image.tag }}
46           imagePullPolicy: {{ include "common.pullPolicy" . }}
47           ports:
48             - name: http
49               containerPort: {{ .Values.appmgr.service.http.containerPort }}
50               protocol: TCP
51             - name: rmrroute
52               containerPort: {{ .Values.appmgr.service.rmr.route.port }}
53               protocol: TCP
54             - name: rmrdata
55               containerPort: {{ .Values.appmgr.service.rmr.data.port }}
56               protocol: TCP
57           volumeMounts:
58             - name: config-volume
59               mountPath: {{ .Values.appmgr.appconfigpath }}/appmgr.yaml
60               subPath: appmgr.yaml
61             - name: secret-volume
62               mountPath: {{ .Values.appmgr.appsecretpath }}
63             - name: cert-volume
64               mountPath: {{ .Values.appmgr.appcertpath }}
65           envFrom:
66             - configMapRef:
67                 name: {{ include "common.configmapname.appmgr" . }}-env
68           livenessProbe:
69             #exec:
70             #  command:
71             #    - /bin/bash
72             #    - -c
73             #    - ps -ef | grep {{ .Values.livenessprocessname }}| grep -v "grep"
74             #initialDelaySeconds: 120
75             #periodSeconds: 30
76           readinessProbe:
77           #  httpGet:
78           #    path: /
79           #    port: http
80           restartPolicy: Always
81           securityContext:
82             # ubuntu
83             #runAsUser: 1000
84             #allowPrivilegeEscalation: false
85       volumes:
86         - name: config-volume
87           configMap:
88             name: {{ include "common.configmapname.appmgr" . }}-appconfig
89         - name: secret-volume
90           secret:
91             secretName: {{ include "common.helmrepositorycred" . }}
92         - name: cert-volume
93           configMap:
94             name: {{ include "common.helmrepositorycert" . }}