79bd8962da02c04d40838099ede4aeab6be4f71a
[oom.git] / kubernetes / dcaegen2 / charts / dcae-cloudify-manager / templates / deployment.yaml
1 #============LICENSE_START========================================================
2 # ================================================================================
3 # Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
4 # Modifications Copyright © 2018 Amdocs, Bell Canada
5 # ================================================================================
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 #     http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 # ============LICENSE_END=========================================================
18
19 apiVersion: extensions/v1beta1
20 kind: Deployment
21 metadata:
22   name: {{ include "common.fullname" . }}
23   namespace: {{ include "common.namespace" . }}
24   labels:
25     app: {{ include "common.name" . }}
26     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
27     release: {{ .Release.Name }}
28     heritage: {{ .Release.Service }}
29 spec:
30   replicas: 1
31   template:
32     metadata:
33       labels:
34         app: {{ include "common.name" . }}
35         release: {{ .Release.Name }}
36     spec:
37       containers:
38         - name: {{ include "common.name" . }}
39           image: "{{ include "common.repository" . }}/{{ .Values.image }}"
40           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
41           resources:
42 {{ include "common.resources" . | indent 12 }}
43           ports:
44           - containerPort: {{ .Values.service.internalPort }}
45           # disable liveness probe when breakpoints set in debugger
46           # so K8s doesn't restart unresponsive container
47           {{- if eq .Values.liveness.enabled true }}
48           livenessProbe:
49             tcpSocket:
50               port: {{ .Values.service.internalPort }}
51             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
52             periodSeconds: {{ .Values.liveness.periodSeconds }}
53           {{ end -}}
54           readinessProbe:
55             tcpSocket:
56               port: {{ .Values.service.internalPort }}
57             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
58             periodSeconds: {{ .Values.readiness.periodSeconds }}
59           volumeMounts:
60           - mountPath: /opt/onap/config.txt
61             subPath: config.txt
62             name: {{ include "common.fullname" .}}-config
63             readOnly: true
64           - mountPath: /secret
65             name: dcae-token
66             readOnly: true
67           - mountPath: /sys/fs/cgroup
68             name: {{ include "common.fullname" . }}-cgroup
69             readOnly: true
70           - mountPath: /etc/localtime
71             name: localtime
72             readOnly: true
73           securityContext:
74             privileged: True
75           lifecycle:
76             postStart:
77               exec:
78                 command:
79                 - bash
80                 - "-c"
81                 - |
82                   set -ex
83                   mkdir -p /var/run/secrets/kubernetes.io/
84                   ln -s /secret /var/run/secrets/kubernetes.io/serviceaccount
85       volumes:
86         - name: {{ include "common.fullname" . }}-config
87           configMap:
88             name: {{ include "common.fullname" . }}-configmap
89         - name: dcae-token
90           secret:
91             secretName: dcae-token
92         - name: {{ include "common.fullname" . }}-cgroup
93           hostPath:
94             path: /sys/fs/cgroup
95         - name: localtime
96           hostPath:
97             path: /etc/localtime
98       imagePullSecrets:
99       - name: "{{ include "common.namespace" . }}-docker-registry-key"