[DMAAP] DMaaP ServiceMesh compatibility
[oom.git] / kubernetes / policy / templates / job.yaml
1 {{/*
2 # Copyright © 2018 Amdocs, Bell Canada
3 # Modifications Copyright © 2020 AT&T Intellectual Property
4 # Modifications Copyright (C) 2021 Nordix Foundation.
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 #       http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 */}}
18
19 apiVersion: batch/v1
20 kind: Job
21 metadata:
22   name: {{ include "common.release" . }}-policy-galera-config
23   namespace: {{ include "common.namespace" . }}
24   labels:
25     app: {{ include "common.name" . }}-job
26     release: {{ include "common.release" . }}
27 spec:
28   template:
29     metadata:
30       labels:
31         app: {{ include "common.name" . }}-job
32         release: {{ include "common.release" . }}
33     spec:
34       imagePullSecrets:
35       - name: "{{ include "common.namespace" . }}-docker-registry-key"
36       initContainers:
37 #This container checks that all galera instances are up before initializing it.
38       - name: {{ include "common.name" . }}-readiness
39         image: {{ include "repositoryGenerator.image.readiness" . }}
40         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
41         command:
42         - /app/ready.py
43         - --container-name
44         - {{ index .Values "mariadb-galera" "service" "name" }}
45         env:
46         - name: NAMESPACE
47           valueFrom:
48             fieldRef:
49               apiVersion: v1
50               fieldPath: metadata.namespace
51       - name: {{ include "common.release" . }}-policy-galera-config
52         image: {{ include "repositoryGenerator.dockerHubRepository" . }}/{{ .Values.mariadb.image }}
53         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
54         volumeMounts:
55         - mountPath: /dbcmd-config/db.sh
56           name: {{ include "common.fullname" . }}-config
57           subPath: db.sh
58         command:
59         - /bin/sh
60         args:
61         - -x
62         - /dbcmd-config/db.sh
63         env:
64         - name: MYSQL_ROOT_PASSWORD
65           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-root-password" "key" "password") | indent 10 }}
66         - name: MYSQL_HOST
67           value: "{{ index .Values "mariadb-galera" "service" "name" }}"
68         - name: MYSQL_USER
69           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 10 }}
70         - name: MYSQL_PORT
71           value: "{{ index .Values "mariadb-galera" "service" "internalPort" }}"
72         resources:
73 {{ include "common.resources" . }}
74       containers:
75       - name: {{ include "common.release" . }}-policy-galera-db-migrator
76         image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.dbmigrator.image }}
77         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
78         volumeMounts:
79         - mountPath: /dbcmd-config/db_migrator_policy_init.sh
80           name: {{ include "common.fullname" . }}-config
81           subPath: db_migrator_policy_init.sh
82         command:
83         - /bin/sh
84         args:
85         - -x
86         - /dbcmd-config/db_migrator_policy_init.sh
87         env:
88         - name: SQL_HOST
89           value: "{{ index .Values "mariadb-galera" "service" "name" }}"
90         - name: SQL_USER
91           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 10 }}
92         - name: SQL_PASSWORD
93           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 10 }}
94         - name: SQL_DB
95           value: {{ .Values.dbmigrator.schema }}
96         - name: POLICY_HOME
97           value: {{ .Values.dbmigrator.policy_home }}
98         resources:
99 {{ include "common.resources" . }}
100       restartPolicy: Never
101       serviceAccountName: {{ include "common.fullname" (dict "suffix" "read" "dot" . )}}
102       volumes:
103         - name: {{ include "common.fullname" . }}-config
104           configMap:
105             name: {{ include "common.fullname" . }}-db-configmap
106             items:
107               - key: db.sh
108                 path: db.sh
109               - key: db_migrator_policy_init.sh
110                 path: db_migrator_policy_init.sh