Add graphadmin microservice to oom
[oom.git] / kubernetes / aai / charts / aai-traversal / templates / job.yaml
1 # Copyright © 2017-2018 AT&T
2 # Modifications Copyright © 2018 Amdocs, Bell Canada
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 {{ if .Values.global.jobs.updateQueryData.enabled }}
17
18 apiVersion: batch/v1
19 kind: Job
20 metadata:
21   name: {{ include "common.fullname" . }}-update-query-data
22   namespace: {{ include "common.namespace" . }}
23   labels:
24     app: {{ include "common.name" . }}
25     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
26     release: {{ .Release.Name }}
27     heritage: {{ .Release.Service }}
28 spec:
29   template:
30     metadata:
31       labels:
32         app: {{ include "common.name" . }}-job
33         release: {{ .Release.Name }}
34       name: {{ include "common.name" . }}
35     spec:
36       initContainers:
37       - command:
38         - /root/ready.py
39         args:
40         - --container-name
41         - aai
42         env:
43         - name: NAMESPACE
44           valueFrom:
45             fieldRef:
46               apiVersion: v1
47               fieldPath: metadata.namespace
48         image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
49         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
50         name: {{ include "common.name" . }}-readiness
51       containers:
52       - name: {{ include "common.name" . }}-job
53         image: "{{ include "common.repository" . }}/{{ .Values.image }}"
54         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
55         command:
56         - bash
57         - "-c"
58         - |
59           set -x
60           mkdir -p /opt/aai/logroot/AAI-GQ/misc
61           bash -x /opt/app/aai-traversal/docker-entrypoint.sh install/updateQueryData.sh
62         env:
63         - name: LOCAL_USER_ID
64           value: {{ .Values.global.config.userId | quote }}
65         - name: LOCAL_GROUP_ID
66           value: {{ .Values.global.config.groupId | quote }}
67         volumeMounts:
68         - mountPath: /etc/localtime
69           name: localtime
70           readOnly: true
71         - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
72           name: {{ include "common.fullname" . }}-db-real-conf
73           subPath: janusgraph-realtime.properties
74         - mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
75           name: {{ include "common.fullname" . }}-db-cached-conf
76           subPath: janusgraph-cached.properties
77         - mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
78           name: {{ include "common.fullname" . }}-aaiconfig-conf
79           subPath: aaiconfig.properties
80         - mountPath: /var/log/onap
81           name: {{ include "common.fullname" . }}-logs
82         - mountPath: /opt/app/aai-traversal/resources/logback.xml
83           name: {{ include "common.fullname" . }}-log-conf
84           subPath: logback.xml
85         - mountPath: /opt/app/aai-traversal/resources/localhost-access-logback.xml
86           name: {{ include "common.fullname" . }}-localhost-access-log-conf
87           subPath: localhost-access-logback.xml
88         - mountPath: /opt/app/aai-traversal/resources/application.properties
89           name: {{ include "common.fullname" . }}-springapp-conf
90           subPath: application.properties
91           {{ $global := . }}
92           {{ range $job := .Values.global.config.auth.files }}
93         - mountPath: /opt/app/aai-traversal/resources/etc/auth/{{ . }}
94           name: {{ include "common.fullname" $global }}-auth-truststore-sec
95           subPath: {{ . }}
96           {{ end }}
97         # disable liveness probe when breakpoints set in debugger
98         # so K8s doesn't restart unresponsive container
99       volumes:
100       - name: localtime
101         hostPath:
102           path: /etc/localtime
103       - name: filebeat-conf
104         configMap:
105           name: aai-filebeat
106       - name: {{ include "common.fullname" . }}-logs
107         hostPath:
108           path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}-update-query
109       - name: {{ include "common.fullname" . }}-filebeat
110         emptyDir: {}
111       - name: {{ include "common.fullname" . }}-log-conf
112         configMap:
113          name: {{ include "common.fullname" . }}-log
114       - name: {{ include "common.fullname" . }}-localhost-access-log-conf
115         configMap:
116          name: {{ include "common.fullname" . }}-localhost-access-log-configmap
117       - name: {{ include "common.fullname" . }}-db-real-conf
118         configMap:
119          name: {{ include "common.fullname" . }}-db-real-configmap
120       - name: {{ include "common.fullname" . }}-db-cached-conf
121         configMap:
122          name: {{ include "common.fullname" . }}-db-cached-configmap
123       - name: {{ include "common.fullname" . }}-aaiconfig-conf
124         configMap:
125          name: {{ include "common.fullname" . }}-aaiconfig-configmap
126       - name: {{ include "common.fullname" . }}-springapp-conf
127         configMap:
128          name: {{ include "common.fullname" . }}-springapp-configmap
129       - name: {{ include "common.fullname" . }}-realm-conf
130         configMap:
131          name: {{ include "common.fullname" . }}-realm-configmap
132       - name: {{ include "common.fullname" . }}-auth-truststore-sec
133         secret:
134          secretName: aai-auth-truststore-secret
135          items:
136           {{ range $job := .Values.global.config.auth.files }}
137            - key: {{ . }}
138              path: {{ . }}
139           {{ end }}
140       restartPolicy: OnFailure
141       imagePullSecrets:
142       - name: "{{ include "common.namespace" . }}-docker-registry-key"
143 {{ end }}