blob: 76f722c65f50f3725fbbfe768db34848fe2054c5 [file] [log] [blame]
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -04001# Copyright © 2018 Amdocs
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
15apiVersion: extensions/v1beta1
16kind: Deployment
17metadata:
18 name: {{ include "common.fullname" . }}
19 namespace: {{ include "common.namespace" . }}
20 labels:
21 app: {{ include "common.name" . }}
22 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
23 release: {{ .Release.Name }}
24 heritage: {{ .Release.Service }}
25spec:
26 replicas: 1
27 template:
28 metadata:
29 labels:
30 app: {{ include "common.name" . }}
31 release: {{ .Release.Name }}
32 spec:
33 initContainers:
34 - command:
35 - /root/ready.py
36 args:
37 - --container-name
38 - sdnc
39 - --container-name
40 - consul
41 env:
42 - name: NAMESPACE
43 valueFrom:
44 fieldRef:
45 apiVersion: v1
46 fieldPath: metadata.namespace
47 image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
48 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
49 name: {{ include "common.name" . }}-readiness
50 containers:
51 - name: {{ include "common.name" . }}
52 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
53 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
54 envFrom:
55 - configMapRef:
56 name: {{ .Release.Name }}-sdnc-env
57 workingDir: "/app"
58 command: [ "bin/prom.sh" ]
59 volumeMounts:
60 - name: localtime
61 mountPath: /etc/localtime
62 readOnly: true
63 - name: prom-config
64 mountPath: /app/config
65 - name: prom-scripts
66 mountPath: /app/bin
67 - name: core-dns-keyfile
68 mountPath: /app/config/coredns
69
70 resources:
71{{ toYaml .Values.resources | indent 12 }}
72 {{- if .Values.nodeSelector }}
73 nodeSelector:
74{{ toYaml .Values.nodeSelector | indent 10 }}
75 {{- end -}}
76 {{- if .Values.affinity }}
77 affinity:
78{{ toYaml .Values.affinity | indent 10 }}
79 {{- end }}
80 volumes:
81 - name: localtime
82 hostPath:
83 path: /etc/localtime
84 - name: prom-config
85 configMap:
86 name: {{ include "common.fullname" . }}-configmap
87 - name: prom-scripts
88 configMap:
89 name: {{ include "common.fullname" . }}-scripts
90 defaultMode: 0755
91 - name: core-dns-keyfile
92 hostPath:
93 path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
94 imagePullSecrets:
95 - name: {{ include "common.namespace" . }}-docker-registry-key"