Merge changes I2940ea9d,I1390da5e,I9a55718c,I7f0510ca,I4d819ae1
[ric-plt/ric-dep.git] / helm / rtmgr / 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 {{- $imagectx := dict "ctx" . "defaultregistry" .Values.rtmgr.image.registry }}
18 {{- $pullpolicyctx := dict "ctx" . "defaultpullpolicy" .Values.rtmgr.imagePullPolicy }}
19 apiVersion: apps/v1
20 kind: Deployment
21 metadata:
22   name: {{ include "common.deploymentname.rtmgr" . }}
23   namespace: {{ include "common.namespace.platform" . }}
24   labels:
25     app: {{ include "common.namespace.platform" . }}-{{ include "common.name.rtmgr" . }}
26     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
27     release: {{ .Release.Name }}
28     heritage: {{ .Release.Service }}
29 spec:
30   replicas: {{ .Values.rtmgr.replicaCount }}
31   selector:
32     matchLabels:
33       app: {{ include "common.namespace.platform" . }}-{{ include "common.name.rtmgr" . }}
34       release: {{ .Release.Name }}
35   template:
36     metadata:
37       {{- if .Values.rtmgr.annotations }}
38       annotations:
39         {{- .Values.rtmgr.annotations | nindent 8 -}}
40       {{ end }}
41       labels:
42         app: {{ include "common.namespace.platform" . }}-{{ include "common.name.rtmgr" . }}
43         release: {{ .Release.Name }}
44     spec:
45       hostname: {{ include "common.name.rtmgr" . }}
46       imagePullSecrets:
47         - name: {{ include "common.dockerregistry.credential" $imagectx }}
48       containers:
49         - name: {{ include "common.containername.rtmgr" . }}
50           image: {{ include "common.dockerregistry.url" $imagectx }}/{{ .Values.rtmgr.image.name }}:{{ .Values.rtmgr.image.tag }}
51           imagePullPolicy: {{ include "common.dockerregistry.pullpolicy" $pullpolicyctx }}
52           command: ["/run_rtmgr.sh"]
53           #command: ["/bin/sh"]
54           #args: ["-c", "while true; do echo hello; sleep 10;done"]
55           envFrom:
56             - configMapRef:
57                 name: {{ include "common.configmapname.rtmgr" . }}-env
58             - configMapRef:
59                 name: {{ include "common.configmapname.dbaas" . }}-appconfig
60           volumeMounts:
61             - mountPath: /cfg
62               name: rtmgrcfg
63               readOnly: true
64           ports:
65             - name: "http"
66               containerPort: {{ include "common.serviceport.rtmgr.http" . }}
67             - name: "rmrroute"
68               containerPort: {{ include "common.serviceport.rtmgr.rmr.route" . }}
69             - name: "rmrdata"
70               containerPort: {{ include "common.serviceport.rtmgr.rmr.data" . }}
71
72           livenessProbe:
73             httpGet:
74               path: ric/v1/health/alive
75               port: 8080
76             initialDelaySeconds: 5
77             periodSeconds: 15
78
79           readinessProbe:
80             httpGet:
81               path: ric/v1/health/ready
82               port: 8080
83             initialDelaySeconds: 5
84             periodSeconds: 15
85     
86       volumes:
87         - name: "rtmgrcfg"
88           configMap:
89             name: {{ include "common.configmapname.rtmgr" . }}-rtmgrcfg
90             items:
91               - key: rtmgrcfg
92                 path: rtmgr-config.yaml
93                 mode: 0644