blob: 3be4d7cef7be0cb8cfa506dc157e3174e671fb2b [file] [log] [blame]
Changjun Wang4ecb76c2019-05-06 07:28:14 +00001{{/*
2# Copyright (c) 2019 Lenovo
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*/}}
16
17apiVersion: extensions/v1beta1
18kind: Deployment
19metadata:
20 name: {{ include "common.fullname" . }}
21 namespace: {{ include "common.namespace" . }}
22 labels:
23 app: {{ include "common.name" . }}
24 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
25 release: {{ .Release.Name }}
26 heritage: {{ .Release.Service }}
27spec:
28 replicas: {{ .Values.replicaCount }}
29 selector:
30 matchLabels:
31 app: {{ include "common.name" . }}
32 template:
33 metadata:
34 labels:
35 app: {{ include "common.name" . }}
36 release: {{ .Release.Name }}
37 name: {{ include "common.name" . }}
38 annotations:
39 sidecar.istio.io/inject: "{{.Values.istioSidecar}}"
40 spec:
41 containers:
42 - env:
43 - name: MSB_ADDR
44 value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
45 - name: MSB_PORT
46 value: "{{ .Values.config.msbPort }}"
47 - name: AAI_ADDR
48 value: aai.{{ include "common.namespace" . }}
49 - name: AAI_PORT
50 value: "{{ .Values.config.aai.port }}"
51 - name: AAI_SCHEMA_VERSION
52 value: "{{ .Values.config.aai.schemaVersion }}"
53 - name: AAI_USERNAME
54 value: "{{ .Values.config.aai.username }}"
55 - name: AAI_PASSWORD
56 value: "{{ .Values.config.aai.password }}"
57 name: {{ include "common.name" . }}
58 volumeMounts:
59 - mountPath: /var/log/onap
60 name: lenovo-log
61 - mountPath: /opt/lenovo/thinkcloud/pub/config/log.yml
62 name: lenovo-logconfig
63 subPath: log.yml
64 resources:
65{{ include "common.resources" . | indent 12 }}
66 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
67 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
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 .Values.liveness.enabled }}
73 livenessProbe:
74 httpGet:
75 path: /api/multicloud-thinkcloud/v1/swagger.json
76 port: {{ .Values.service.internalPort }}
77 scheme: HTTP
78 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
79 periodSeconds: {{ .Values.liveness.periodSeconds }}
80 timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
81 successThreshold: {{ .Values.liveness.successThreshold }}
82 failureThreshold: {{ .Values.liveness.failureThreshold }}
83 {{ end }}
84 # side car containers
85 - image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
86 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
87 name: filebeat-onap
88 volumeMounts:
89 - mountPath: /usr/share/filebeat/filebeat.yml
90 name: filebeat-conf
91 subPath: filebeat.yml
92 - mountPath: /var/log/onap
93 name: lenovo-log
94 - mountPath: /usr/share/filebeat/data
95 name: lenovo-data-filebeat
96
97 volumes:
98 - name: lenovo-log
99 emptyDir: {}
100 - name: lenovo-data-filebeat
101 emptyDir: {}
102 - name: filebeat-conf
103 configMap:
104 name: multicloud-filebeat-configmap
105 - name: lenovo-logconfig
106 configMap:
107 name: {{ include "common.fullname" . }}-log-configmap
108 imagePullSecrets:
109 - name: "{{ include "common.namespace" . }}-docker-registry-key"
110 restartPolicy: Always