blob: 6b6fcc7e562e2f17ee5421fc09e800c8cf2a461d [file] [log] [blame]
sebdetd85e24c2019-09-04 18:35:26 +02001# Copyright © 2017 Amdocs, Bell Canada
2# Modifications Copyright © 2018 AT&T
3#
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 - 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 # side car containers
51 - name: {{ include "common.name" . }}-filebeat-onap
52 image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
53 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
54 volumeMounts:
55 - name: {{ include "common.fullname" . }}-filebeat-conf
56 mountPath: /usr/share/filebeat/filebeat.yml
57 subPath: filebeat.yml
58 - name: {{ include "common.fullname" . }}-data-filebeat
59 mountPath: /usr/share/filebeat/data
60 - name: {{ include "common.fullname" . }}-logs
61 mountPath: /var/log/onap
62 - name: {{ include "common.name" . }}
63 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
64 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
65 args:
66 - "-Dcom.att.eelf.logging.file=file:/opt/clamp/logback.xml"
67 - ""
68 ports:
69 - containerPort: {{ .Values.service.internalPort }}
70 # disable liveness probe when breakpoints set in debugger
71 # so K8s doesn't restart unresponsive container
72 {{- if eq .Values.liveness.enabled true }}
73 livenessProbe:
74 tcpSocket:
75 port: {{ .Values.service.internalPort }}
76 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
77 periodSeconds: {{ .Values.liveness.periodSeconds }}
78 {{ end -}}
79 readinessProbe:
80 tcpSocket:
81 port: {{ .Values.service.internalPort }}
82 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
83 periodSeconds: {{ .Values.readiness.periodSeconds }}
84 volumeMounts:
85 - name: {{ include "common.fullname" . }}-logs
86 mountPath: /var/log/onap
87 - mountPath: /opt/clamp/sdc-controllers-config.json
88 name: {{ include "common.fullname" . }}-config
89 subPath: sdc-controllers-config.json
90 - mountPath: /opt/clamp/logback.xml
91 name: {{ include "common.fullname" . }}-config
92 subPath: logback.xml
93 env:
94 - name: SPRING_APPLICATION_JSON
95 valueFrom:
96 configMapKeyRef:
97 name: {{ template "common.fullname" . }}
98 key: spring_application_json
99 resources:
100{{ include "common.resources" . | indent 12 }}
101 {{- if .Values.nodeSelector }}
102 nodeSelector:
103{{ toYaml .Values.nodeSelector | indent 10 }}
104 {{- end -}}
105 {{- if .Values.affinity }}
106 affinity:
107{{ toYaml .Values.affinity | indent 10 }}
108 {{- end }}
109 volumes:
110 - name: {{ include "common.fullname" . }}-config
111 configMap:
112 name: {{ include "common.fullname" . }}
113 items:
114 - key: sdc-controllers-config.json
115 path: sdc-controllers-config.json
116 - key: logback.xml
117 path: logback.xml
118 - name: {{ include "common.fullname" . }}-filebeat-conf
119 configMap:
120 name: {{ .Release.Name }}-clamp-filebeat-configmap
121 - name: {{ include "common.fullname" . }}-data-filebeat
122 emptyDir: {}
123 - name: {{ include "common.fullname" . }}-logs
124 emptyDir: {}
125 imagePullSecrets:
126 - name: "{{ include "common.namespace" . }}-docker-registry-key"