blob: a4afe05c95a287ca4b9cc8f2d1a334615749291d [file] [log] [blame]
Jack Lucas7723ffe2020-02-13 17:19:01 -05001#============LICENSE_START========================================================
2# ================================================================================
3# Copyright (c) 2019-2020 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: apps/v1
19kind: Deployment
20metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
21spec:
22 replicas: 1
23 selector: {{- include "common.selectors" . | nindent 4 }}
24 template:
25 metadata: {{- include "common.templateMetadata" . | nindent 6 }}
26 spec:
Jack Lucas8d8c9b92020-03-30 15:56:46 -040027 initContainers:
28 # apps run as uid 1000, gid 1000
29 # the volume is mounted with root permissions
30 # this initContainer changes ownership to uid 1000 gid 1000
31 # (tried using a securityContext in the pod spec, but it didn't seem to work)
32 - name: set-permissions
33 image: busybox:latest
34 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
35 command:
36 - sh
37 - -c
38 - chown -R 1000:1000 /genprocessor-data
39 volumeMounts:
40 - mountPath: /genprocessor-data
41 name: genprocessor-data
Jack Lucas7723ffe2020-02-13 17:19:01 -050042 containers:
43 - name: {{ include "common.name" . }}
44 image: "{{ include "common.repository" . }}/{{ .Values.image }}"
45 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
46 ports: {{ include "common.containerPorts" . | nindent 12 }}
47 {{- if eq .Values.liveness.enabled true }}
48 livenessProbe:
49 tcpSocket:
50 port: {{ .Values.liveness.port }}
51 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
52 periodSeconds: {{ .Values.liveness.periodSeconds }}
53 {{ end }}
54 readinessProbe:
55 tcpSocket:
56 port: {{ .Values.readiness.port }}
57 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
58 periodSeconds: {{ .Values.readiness.periodSeconds }}
59 env:
60 - name: GENPROC_ONBOARDING_API_HOST
61 value: {{ .Values.config.onboardingAPIURL }}
62 volumeMounts:
63 - mountPath: /work/
64 name: genprocessor-data
65 resources: {{ include "common.resources" . | nindent 12 }}
66 - name: {{ include "common.name" . }}-http
67 image: "{{ include "common.repository" . }}/{{ .Values.httpImage }}"
68 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
69 volumeMounts:
70 - mountPath: /www/data
71 name: genprocessor-data
72 readOnly: true
73 volumes:
74 - name: genprocessor-data
75 persistentVolumeClaim:
76 claimName: {{ include "common.fullname" . }}
77 imagePullSecrets:
78 - name: "{{ include "common.namespace" . }}-docker-registry-key"