blob: da7cb70009db5f49a4f94e3a690a9c41aed3cbae [file] [log] [blame]
Ikram Ikramullah40b120b2018-05-01 11:35:40 -04001# Copyright © 2017 Amdocs, Bell Canada
Nishukumar376ba1e2018-08-03 09:17:23 +00002# Modifications Copyright © 2018 AT&T,VMware
Ikram Ikramullah40b120b2018-05-01 11:35:40 -04003#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16apiVersion: extensions/v1beta1
17kind: Deployment
18metadata:
19 name: {{ include "common.fullname" . }}
20 namespace: {{ include "common.namespace" . }}
21 labels:
22 app: {{ include "common.name" . }}
23 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
24 release: {{ .Release.Name }}
25 heritage: {{ .Release.Service }}
26spec:
27 replicas: {{ .Values.replicaCount }}
28 template:
29 metadata:
30 labels:
31 app: {{ include "common.name" . }}
32 release: {{ .Release.Name }}
33 spec:
34 initContainers:
35 - command:
36 - /root/ready.py
37 args:
38 - --container-name
39 - pdp
40 - --container-name
41 - oof-has-api
42 env:
43 - name: NAMESPACE
44 valueFrom:
45 fieldRef:
46 apiVersion: v1
47 fieldPath: metadata.namespace
48 image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
49 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
50 name: {{ include "common.name" . }}-readiness
51 containers:
52 - name: {{ include "common.name" . }}
53 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
54 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
55 ports:
56 - containerPort: {{ .Values.service.internalPort }}
57 # disable liveness probe when breakpoints set in debugger
58 # so K8s doesn't restart unresponsive container
59 {{- if .Values.liveness.enabled }}
60 livenessProbe:
61 tcpSocket:
62 port: {{ .Values.service.internalPort }}
63 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
64 periodSeconds: {{ .Values.liveness.periodSeconds }}
65 {{ end -}}
66 readinessProbe:
67 tcpSocket:
68 port: {{ .Values.service.internalPort }}
69 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
70 periodSeconds: {{ .Values.readiness.periodSeconds }}
71 env:
72 volumeMounts:
73 - mountPath: /etc/localtime
74 name: localtime
75 readOnly: true
76 - mountPath: /opt/app/config/osdf_config.yaml
77 name: {{ include "common.fullname" . }}-config
78 subPath: osdf_config.yaml
79 resources:
80{{ toYaml .Values.resources | indent 12 }}
81 {{- if .Values.nodeSelector }}
82 nodeSelector:
83{{ toYaml .Values.nodeSelector | indent 10 }}
84 {{- end -}}
85 {{- if .Values.affinity }}
86 affinity:
87{{ toYaml .Values.affinity | indent 10 }}
88 {{- end }}
89
90 volumes:
91 - name: localtime
92 hostPath:
93 path: /etc/localtime
94 - name: {{ include "common.fullname" . }}-config
95 configMap:
96 name: {{ include "common.fullname" . }}-configmap
97 items:
98 - key: osdf_config.yaml
99 path: osdf_config.yaml
100 imagePullSecrets:
101 - name: "{{ include "common.namespace" . }}-docker-registry-key"