blob: 5413327d0bda769a31329c024365038f6527d246 [file] [log] [blame]
Sylvain Desbureaux37dc40c2020-11-21 22:46:57 +01001{{/*
2# Copyright (c) 2019 Intel Corporation.
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: apps/v1
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: {{ include "common.release" . }}
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: {{ include "common.release" . }}
37 name: {{ include "common.name" . }}
38 annotations:
39 sidecar.istio.io/inject: "{{.Values.istioSidecar}}"
40 spec:
41 containers:
42 - env:
43 - name: MSB_PROTO
44 value: {{ .Values.config.msbprotocol }}
45 - name: MSB_ADDR
46 value: "{{ .Values.config.msbgateway }}.{{ include "common.namespace" . }}"
47 - name: MSB_PORT
48 value: "{{ .Values.config.msbPort }}"
49 - name: AAI_ADDR
50 value: aai.{{ include "common.namespace" . }}
51 - name: AAI_PORT
52 value: "{{ .Values.config.aai.port }}"
53 - name: AAI_SCHEMA_VERSION
54 value: "{{ .Values.config.aai.schemaVersion }}"
55 - name: AAI_USERNAME
56 value: "{{ .Values.config.aai.username }}"
57 - name: AAI_PASSWORD
58 value: "{{ .Values.config.aai.password }}"
59 - name: SSL_ENABLED
60 value: "{{ .Values.config.ssl_enabled }}"
61 name: {{ include "common.name" . }}
62 volumeMounts:
63 - mountPath: /var/log/onap
64 name: starlingx-log
65 - mountPath: /opt/starlingx/starlingx/pub/config/log.yml
66 name: starlingx-logconfig
67 subPath: log.yml
68 - mountPath: /opt/artifacts/
69 name: artifact-data
70 resources: {{ include "common.resources" . | nindent 12 }}
71 image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
72 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
73 ports:
74 - containerPort: {{ .Values.service.internalPort }}
75 # disable liveness probe when breakpoints set in debugger
76 # so K8s doesn't restart unresponsive container
77 {{ if .Values.liveness.enabled }}
78 livenessProbe:
79 httpGet:
80 path: /api/multicloud-starlingx/v0/swagger.json
81 port: {{ .Values.service.internalPort }}
82 scheme: HTTPS
83 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
84 periodSeconds: {{ .Values.liveness.periodSeconds }}
85 timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
86 successThreshold: {{ .Values.liveness.successThreshold }}
87 failureThreshold: {{ .Values.liveness.failureThreshold }}
88 {{ end }}
89 # side car containers
90 - image: {{ include "repositoryGenerator.image.logging" . }}
91 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
92 name: filebeat-onap
93 volumeMounts:
94 - mountPath: /usr/share/filebeat/filebeat.yml
95 name: filebeat-conf
96 subPath: filebeat.yml
97 - mountPath: /var/log/onap
98 name: starlingx-log
99 - mountPath: /usr/share/filebeat/data
100 name: starlingx-data-filebeat
101 - image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.global.artifactImage }}
102 name: framework-artifactbroker
103 command: ["/opt/app/distribution/bin/artifact-dist.sh"]
104 args: ["/opt/app/distribution/etc/mounted/config.json"]
105 ports:
106 - containerPort: 9014
107 protocol: TCP
108 volumeMounts:
109 - mountPath: /opt/app/distribution/etc/mounted/config.json
110 name: starlingx-logconfig
111 subPath: config.json
112 - mountPath: /data
113 name: artifact-data
114
115 volumes:
116 - name: starlingx-log
117 emptyDir: {}
118 - name: starlingx-data-filebeat
119 emptyDir: {}
120 - name: filebeat-conf
121 configMap:
122 name: multicloud-filebeat-configmap
123 - name: starlingx-logconfig
124 configMap:
125 name: {{ include "common.fullname" . }}-log-configmap
126 - name: artifact-data
127 emptyDir: {}
128 imagePullSecrets:
129 - name: "{{ include "common.namespace" . }}-docker-registry-key"
130 restartPolicy: Always