blob: 28b5950b48b8701943dab65457d4befe6b8ccdd0 [file] [log] [blame]
Mike Elliott6ba69cd2018-04-03 16:37:06 -04001# Copyright © 2017 Amdocs, Bell Canada
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: {{ .Values.replicaCount }}
27 template:
28 metadata:
29 labels:
30 app: {{ include "common.name" . }}
31 release: {{ .Release.Name }}
32 spec:
33 initContainers:
34#Example init container for dependency checking
35# - command:
36# - /root/ready.py
37# args:
38# - --container-name
39# - mariadb
40# env:
41# - name: NAMESPACE
42# valueFrom:
43# fieldRef:
44# apiVersion: v1
45# fieldPath: metadata.namespace
46# image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
47# imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
48# name: {{ include "common.name" . }}-readiness
49 containers:
50 - name: {{ include "common.name" . }}
51 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
52 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
53 ports:
54 - containerPort: {{ .Values.service.internalPort }}
yangyan1c052992018-04-13 12:16:40 +080055 - containerPort: {{ .Values.service.internalPort2 }}
Mike Elliott6ba69cd2018-04-03 16:37:06 -040056 # disable liveness probe when breakpoints set in debugger
57 # so K8s doesn't restart unresponsive container
58 {{ if .Values.liveness.enabled }}
59 livenessProbe:
60 tcpSocket:
61 port: {{ .Values.service.internalPort }}
62 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
63 periodSeconds: {{ .Values.liveness.periodSeconds }}
64 {{ end }}
65 readinessProbe:
66 tcpSocket:
67 port: {{ .Values.service.internalPort }}
68 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
69 periodSeconds: {{ .Values.readiness.periodSeconds }}
70 env:
71 - name: MSB_ADDR
mahendrr08c3f452018-04-12 06:57:07 +000072 value: "{{ .Values.global.config.msbServiceName }}:{{ .Values.global.config.msbPort }}"
Mike Elliott6ba69cd2018-04-03 16:37:06 -040073 volumeMounts:
74 - name: {{ include "common.fullname" . }}-localtime
75 mountPath: /etc/localtime
76 readOnly: true
77 - name: {{ include "common.fullname" . }}-logs
78 mountPath: /var/log/onap
79 - name: {{ include "common.fullname" . }}-logconfig
80 mountPath: /opt/vfc/hwvnfmdriver/config/log4j.properties
81 subPath: log4j.properties
82 resources:
83{{ toYaml .Values.resources | indent 12 }}
84 {{- if .Values.nodeSelector }}
85 nodeSelector:
86{{ toYaml .Values.nodeSelector | indent 10 }}
87 {{- end -}}
88 {{- if .Values.affinity }}
89 affinity:
90{{ toYaml .Values.affinity | indent 10 }}
91 {{- end }}
92
93 # side car containers
94 - name: {{ include "common.name" . }}-filebeat-onap
95 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
96 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
97 volumeMounts:
98 - name: {{ include "common.fullname" . }}-filebeat-conf
99 mountPath: /usr/share/filebeat/filebeat.yml
100 subPath: filebeat.yml
101 - name: {{ include "common.fullname" . }}-logs
102 mountPath: /var/log/onap
103 - name: {{ include "common.fullname" . }}-data-filebeat
104 mountPath: /usr/share/filebeat/data
105
106 volumes:
107 - name: {{ include "common.fullname" . }}-localtime
108 hostPath:
109 path: /etc/localtime
110 - name: {{ include "common.fullname" . }}-logs
111 emptyDir: {}
112 - name: {{ include "common.fullname" . }}-logconfig
113 configMap:
114 name : {{ include "common.fullname" . }}-logging-configmap
115
116 - name: {{ include "common.fullname" . }}-filebeat-conf
117 configMap:
118 name: {{ .Release.Name }}-vfc-filebeat-configmap
119 - name: {{ include "common.fullname" . }}-data-filebeat
120 emptyDir: {}
121 imagePullSecrets:
122 - name: "{{ include "common.namespace" . }}-docker-registry-key"