Merge "[DCAEGEN2] Update cm-container and consul-loader"
[oom.git] / kubernetes / policy / components / policy-clamp-be / templates / job.yaml
1 {{/*
2 # Copyright © 2018 Amdocs, Bell Canada
3 # Modifications Copyright © 2020-2021 AT&T Intellectual Property
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 */}}
17
18 apiVersion: batch/v1
19 kind: Job
20 metadata:
21   name: {{ include "common.release" . }}-policy-clamp-galera-config
22   namespace: {{ include "common.namespace" . }}
23   labels:
24     app: {{ include "common.name" . }}-policy-clamp-job
25     release: {{ include "common.release" . }}
26 spec:
27   template:
28     metadata:
29       labels:
30         app: {{ include "common.name" . }}-policy-clamp-job
31         release: {{ include "common.release" . }}
32     spec:
33       initContainers:
34 #This container checks that all galera instances are up before initializing it.
35       - name: {{ include "common.name" . }}-readiness
36         image: {{ include "repositoryGenerator.image.readiness" . }}
37         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
38         command:
39         - /app/ready.py
40         - --job-name
41         - {{ include "common.release" . }}-policy-galera-config
42         env:
43         - name: NAMESPACE
44           valueFrom:
45             fieldRef:
46               apiVersion: v1
47               fieldPath: metadata.namespace
48       containers:
49       - name: {{ include "common.release" . }}-policy-clamp-galera-config
50         image: {{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.db.image }}
51         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
52         volumeMounts:
53         - mountPath: /dbcmd-config/create-db-tables.sh
54           name: {{ include "common.fullname" . }}-config
55           subPath: create-db-tables.sh
56         - mountPath: /dbcmd-config/policy-clamp-create-tables.sql
57           name: {{ include "common.fullname" . }}-config
58           subPath: policy-clamp-create-tables.sql
59         command:
60         - /bin/sh
61         args:
62         - -x
63         - /dbcmd-config/create-db-tables.sh
64         env:
65         - name: MYSQL_HOST
66           value: "{{ .Values.db.service.name }}"
67         - name: MYSQL_USER
68           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-creds" "key" "login") | indent 10 }}
69         - name: MYSQL_PASSWORD
70           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-creds" "key" "password") | indent 10 }}
71         - name: MYSQL_PORT
72           value: "{{ .Values.db.service.internalPort }}"
73         resources:
74 {{ include "common.resources" . }}
75       restartPolicy: Never
76       volumes:
77         - name: {{ include "common.fullname" . }}-config
78           configMap:
79             name: {{ include "common.fullname" . }}-configmap
80             items:
81               - key: create-db-tables.sh
82                 path: create-db-tables.sh
83               - key: policy-clamp-create-tables.sql
84                 path: policy-clamp-create-tables.sql