| apiVersion: batch/v1 |
| kind: Job |
| metadata: |
| name: {{ include "common.fullname" . }}-pre-upgrade |
| annotations: |
| "helm.sh/hook": "pre-upgrade" |
| "helm.sh/hook-weight": "1" |
| "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded |
| spec: |
| template: |
| spec: |
| securityContext: |
| fsGroup: 1001 |
| runAsUser: 1001 |
| containers: |
| - name: mariadb-job-pre-upgrade |
| image: {{ .Values.global.kubectlImage}} |
| imagePullPolicy: IfNotPresent |
| env: |
| - name: NAMESPACE_ENV |
| valueFrom: |
| fieldRef: |
| apiVersion: v1 |
| fieldPath: metadata.namespace |
| command: ["/bin/bash", "-c", "--"] |
| args: ["/upgrade/upgrade-scripts.sh"] |
| volumeMounts: |
| - name: config-mariadb-upgrade |
| mountPath: /upgrade |
| volumes: |
| - name: config-mariadb-upgrade |
| configMap: |
| name: {{ include "common.fullname" . }}-upgrade-deployment |
| defaultMode: 0777 |
| restartPolicy: OnFailure |
| --- |
| apiVersion: batch/v1 |
| kind: Job |
| metadata: |
| name: {{ include "common.fullname" . }}-post-upgrade |
| annotations: |
| "helm.sh/hook": "post-upgrade" |
| "helm.sh/hook-weight": "1" |
| "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded |
| spec: |
| template: |
| spec: |
| securityContext: |
| fsGroup: 1001 |
| runAsUser: 0 |
| initContainers: |
| - image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}" |
| name: mariadb-galera-upgrade-readiness |
| env: |
| - name: NAMESPACE |
| valueFrom: |
| fieldRef: |
| apiVersion: v1 |
| fieldPath: metadata.namespace |
| command: |
| - /root/ready.py |
| args: |
| - --container-name |
| - mariadb-galera |
| containers: |
| - name: mariadb-job-post-upgrade |
| image: {{ .Values.global.kubectlImage}} |
| imagePullPolicy: IfNotPresent |
| env: |
| - name: NAMESPACE_ENV |
| valueFrom: |
| fieldRef: |
| apiVersion: v1 |
| fieldPath: metadata.namespace |
| - name: REPLICA_COUNT |
| value: "{{ .Values.replicaCount }}" |
| command: ["/bin/bash", "-c", "--"] |
| args: ["/upgrade/post-upgrade-script.sh"] |
| volumeMounts: |
| - name: config-mariadb-upgrade |
| mountPath: /upgrade |
| volumes: |
| - name: config-mariadb-upgrade |
| configMap: |
| name: {{ include "common.fullname" . }}-post-upgrade-deployment |
| defaultMode: 0777 |
| restartPolicy: OnFailure |
| --- |
| apiVersion: batch/v1 |
| kind: Job |
| metadata: |
| name: {{ include "common.fullname" . }}-post-delete |
| annotations: |
| "helm.sh/hook": "post-delete" |
| "helm.sh/hook-weight": "1" |
| "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded |
| spec: |
| template: |
| spec: |
| containers: |
| - name: mariadb-job-post-delete |
| image: {{ .Values.global.kubectlImage}} |
| imagePullPolicy: IfNotPresent |
| command: ["/bin/bash", "-c", "--"] |
| args: |
| - for ((index=0;index<{{ $.Values.replicaCount }};index+=1)); |
| do kubectl delete pvc "{{ include "common.fullname" . }}-data-{{ include "common.fullname" . }}-$index"; |
| done; kubectl delete deployment {{ include "common.fullname" . }}-upgrade-deployment; |
| restartPolicy: OnFailure |