blob: 6769c00a2d1a88c313c0867aa82d572dbe5717c0 [file] [log] [blame]
Jack Lucas6fae7632019-01-25 11:46:00 -05001#============LICENSE_START========================================================
2# ================================================================================
3# Copyright (c) 2019 AT&T Intellectual Property. All rights reserved.
4# ================================================================================
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16# ============LICENSE_END=========================================================
17
18apiVersion: extensions/v1beta1
19kind: Deployment
20metadata:
21 name: {{ include "common.fullname" . }}
22 namespace: {{ include "common.namespace" . }}
23 labels:
24 app: {{ include "common.name" . }}
25 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010026 release: {{ include "common.release" . }}
Jack Lucas6fae7632019-01-25 11:46:00 -050027 heritage: {{ .Release.Service }}
28spec:
29 replicas: 1
30 template:
31 metadata:
32 labels:
33 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010034 release: {{ include "common.release" . }}
Jack Lucas6fae7632019-01-25 11:46:00 -050035 spec:
36 initContainers:
37 - name: {{ include "common.name" . }}-readiness
38 image: {{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}
39 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
40 command:
41 - /root/ready.py
42 args:
43 - --container-name
44 - {{ .Values.postgres.nameOverride }}
45 - "-t"
46 - "15"
47 env:
48 - name: NAMESPACE
49 valueFrom:
50 fieldRef:
51 apiVersion: v1
52 fieldPath: metadata.namespace
Vijay Venkatesh Kumara4535c92019-08-02 01:45:23 +000053 - name: init-tls
54 env:
Jack Lucasc6861312020-03-03 15:57:59 -050055 - name: aaf_locator_fqdn
56 value: dcae
Vijay Venkatesh Kumara4535c92019-08-02 01:45:23 +000057 - name: POD_IP
58 valueFrom:
59 fieldRef:
60 apiVersion: v1
61 fieldPath: status.podIP
62 image: {{ .Values.global.tlsRepository }}/{{ .Values.global.tlsImage }}
63 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
64 resources: {}
65 volumeMounts:
Jack Lucasc6861312020-03-03 15:57:59 -050066 - mountPath: /opt/app/osaaf
Vijay Venkatesh Kumara4535c92019-08-02 01:45:23 +000067 name: tls-info
Jack Lucas6fae7632019-01-25 11:46:00 -050068 containers:
69 - name: {{ include "common.name" . }}
Jack Lucas4c4ba442019-02-12 17:09:46 -050070 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
Jack Lucas6fae7632019-01-25 11:46:00 -050071 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
Jack Lucas4c4ba442019-02-12 17:09:46 -050072 # Assumes that the Docker image is built with ENTRYPOINT set to
73 # ["java", "-jar", "/opt/inventory-api-x.y.z.jar", "server"]
74 # where "x.y.z" is the version number (matches the Docker image version number)
75 # The arg below adds a parameter, the path to a config file.
76 # This tells the inventory-api app to get its configuration from the file
77 # rather than querying Consul.
Jack Lucas6fae7632019-01-25 11:46:00 -050078 args:
Jack Lucas6fae7632019-01-25 11:46:00 -050079 - "/opt/config.json"
80 resources:
81{{ include "common.resources" . | indent 12 }}
82 ports:
83 - containerPort: {{ .Values.service.internalPort }}
84 # disable liveness probe when breakpoints set in debugger
85 # so K8s doesn't restart unresponsive container
86 {{- if eq .Values.liveness.enabled true }}
87 livenessProbe:
88 tcpSocket:
89 port: {{ .Values.service.internalPort }}
90 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
91 periodSeconds: {{ .Values.liveness.periodSeconds }}
92 {{ end }}
93 readinessProbe:
94 httpGet:
95 path: {{ .Values.readiness.path }}
96 port: {{ .Values.service.internalPort }}
Vijay Venkatesh Kumara4535c92019-08-02 01:45:23 +000097 scheme: {{ .Values.readiness.scheme }}
Jack Lucas6fae7632019-01-25 11:46:00 -050098 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
99 periodSeconds: {{ .Values.readiness.periodSeconds }}
100 volumeMounts:
101 - name: {{ include "common.fullname" . }}-inv-config
102 mountPath: /opt/config.json
103 subPath: config.json
Vijay Venkatesh Kumara4535c92019-08-02 01:45:23 +0000104 - mountPath: /opt/cert/
105 name: tls-info
Vijay Venkatesh Kumar694394b2020-02-20 21:50:14 +0000106 - mountPath: /opt/logs/
107 name: component-log
Jack Lucas6fae7632019-01-25 11:46:00 -0500108 env:
109 - name: CONSUL_HOST
110 value: consul.{{ include "common.namespace" . }}
Vijay Venkatesh Kumar694394b2020-02-20 21:50:14 +0000111 - name: {{ include "common.name" . }}-filebeat
112 env:
113 - name: POD_IP
114 valueFrom:
115 fieldRef:
116 apiVersion: v1
117 fieldPath: status.podIP
118 image: {{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}
119 imagePullPolicy: IfNotPresent
120 resources: {}
121 volumeMounts:
122 - mountPath: /var/log/onap/inventory
123 name: component-log
124 - mountPath: /usr/share/filebeat/data
125 name: filebeat-data
126 - mountPath: /usr/share/filebeat/filebeat.yml
127 name: filebeat-conf
128 subPath: filebeat.yml
Jack Lucas6fae7632019-01-25 11:46:00 -0500129 volumes:
Vijay Venkatesh Kumar694394b2020-02-20 21:50:14 +0000130 - emptyDir: {}
131 name: component-log
132 - emptyDir: {}
133 name: filebeat-data
134 - configMap:
135 defaultMode: 420
136 name: {{ include "common.fullname" . }}-filebeat-configmap
137 name: filebeat-conf
Jack Lucas6fae7632019-01-25 11:46:00 -0500138 - name: {{ include "common.fullname" . }}-inv-config
139 configMap:
140 name: {{ include "common.fullname" . }}-configmap
Vijay Venkatesh Kumara4535c92019-08-02 01:45:23 +0000141 - emptyDir: {}
142 name: tls-info
Jack Lucas6fae7632019-01-25 11:46:00 -0500143 imagePullSecrets:
144 - name: "{{ include "common.namespace" . }}-docker-registry-key"
Vijay Venkatesh Kumar694394b2020-02-20 21:50:14 +0000145