Extend K8S and RIC installation instructions
[it/dep.git] / ric-aux / helm / dashboard / 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.dashboard.image.registry }}
18 {{- $pullpolicyctx := dict "ctx" . "defaultpullpolicy" .Values.dashboard.imagePullPolicy }}
19 apiVersion: apps/v1
20 kind: Deployment
21 metadata:
22   name: {{ include "common.deploymentname.dashboard" . }}
23   namespace: {{ include "common.namespace.aux" . }}
24   labels:
25     app: {{ include "common.namespace.aux" . }}-{{ include "common.name.dashboard" . }}
26     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
27     release: {{ .Release.Name }}
28     heritage: {{ .Release.Service }}
29 spec:
30   replicas: {{ .Values.dashboard.replicaCount }}
31   selector:
32     matchLabels:
33       app: {{ include "common.namespace.aux" . }}-{{ include "common.name.dashboard" . }}
34       release: {{ .Release.Name }}
35   template:
36     metadata:
37       labels:
38         app: {{ include "common.namespace.aux" . }}-{{ include "common.name.dashboard" . }}
39         release: {{ .Release.Name }}
40     spec:
41       hostname: {{ include "common.name.dashboard" . }}
42       imagePullSecrets:
43         - name: {{ include "common.dockerregistry.credential" $imagectx }}
44       {{- with .Values.dashboard.nodeselector }}
45       nodeSelector: {{ toYaml . | trim | nindent 8 -}}
46       {{- end }}
47       containers:
48         - name: {{ include "common.containername.dashboard" . }}
49           image: {{ include "common.dockerregistry.url" $imagectx }}/{{ .Values.dashboard.image.name }}:{{ .Values.dashboard.image.tag }}
50           imagePullPolicy: {{ include "common.dockerregistry.pullpolicy" $pullpolicyctx }}
51           ports:
52             - name: http
53               containerPort: {{ include "common.serviceport.dashboard.container" . }}
54               protocol: TCP
55           volumeMounts:
56             - name: appconfig
57               mountPath: /config/application.yaml
58               subPath: application.yaml
59               readOnly: true
60             - name: appconfig
61               mountPath: /maven/key.properties
62               subPath: key.properties
63               readOnly: true
64             - name: appconfig
65               mountPath: /maven/portal.properties
66               subPath: portal.properties
67               readOnly: true
68 # Temp solution until portal 2.6
69             - name: appconfig
70               mountPath: /dashboard-data/users.json
71               subPath: users.json
72 #            - name: dashboard-users
73 #              mountPath: /dashboard-data
74           livenessProbe:
75             httpGet:
76               path: /api/admin/health
77               port: http
78             initialDelaySeconds: 15
79           readinessProbe:
80             httpGet:
81               path: /api/admin/version
82               port: http
83             initialDelaySeconds: 15
84       volumes:
85         - name: appconfig
86           configMap:
87             name: {{ include "common.configmapname.dashboard" . }}-appconfig
88         - name: dashboard-users
89           persistentVolumeClaim:
90             claimName: pvc-{{ include "common.name.dashboard" . }}