[CONSUL] Add limits to consul chart.
[oom.git] / kubernetes / msb / charts / msb-consul / templates / deployment.yaml
1 # Copyright © 2018 Amdocs, Bell Canada , ZTE
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: apps/v1
15 kind: Deployment
16 metadata:
17   name: {{ include "common.fullname" . }}
18   namespace: {{ include "common.namespace" . }}
19   labels:
20     app: {{ include "common.name" . }}
21     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
22     release: {{ include "common.release" . }}
23     heritage: {{ .Release.Service }}
24 spec:
25   selector:
26     matchLabels:
27       app: {{ include "common.name" . }}
28   replicas: {{ .Values.replicaCount }}
29   template:
30     metadata:
31       labels:
32         app: {{ include "common.name" . }}
33         release: {{ include "common.release" . }}
34       annotations:
35         sidecar.istio.io/inject: "{{.Values.istioSidecar}}"
36     spec:
37       serviceAccountName: msb
38       containers:
39         - name: {{ include "common.name" . }}
40           image: "{{ .Values.global.dockerHubRepository | default .Values.dockerHubRepository }}/{{ .Values.image }}"
41           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
42           ports:
43           - containerPort: {{ .Values.service.internalPort }}
44           # disable liveness probe when breakpoints set in debugger
45           # so K8s doesn't restart unresponsive container
46           {{- if eq .Values.liveness.enabled true }}
47           livenessProbe:
48             tcpSocket:
49               port: {{ .Values.service.internalPort }}
50             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
51             periodSeconds: {{ .Values.liveness.periodSeconds }}
52           {{ end -}}
53           readinessProbe:
54             tcpSocket:
55               port: {{ .Values.service.internalPort }}
56             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
57             periodSeconds: {{ .Values.readiness.periodSeconds }}
58           env:
59           volumeMounts:
60           - mountPath: /etc/localtime
61             name: localtime
62             readOnly: true
63           resources:
64 {{ include "common.resources" . | indent 12 }}
65         {{- if .Values.nodeSelector }}
66         nodeSelector:
67 {{ toYaml .Values.nodeSelector | indent 10 }}
68         {{- end -}}
69         {{- if .Values.affinity }}
70         affinity:
71 {{ toYaml .Values.affinity | indent 10 }}
72         {{- end }}
73       volumes:
74         - name: localtime
75           hostPath:
76             path: /etc/localtime
77       imagePullSecrets:
78       - name: "{{ include "common.namespace" . }}-docker-registry-key"