{{- if .Capabilities.APIVersions.Has "batch/v1" -}} apiVersion: batch/v1 {{- else -}} apiVersion: batch/v1beta1 {{- end }} kind: CronJob metadata: name: {{ .Release.Name }}-mysqlbackuprestore spec: schedule: "{{ .Values.backup.testRestoreSchedule }}" successfulJobsHistoryLimit: 30 failedJobsHistoryLimit: 30 concurrencyPolicy: Forbid jobTemplate: spec: template: metadata: labels: app: mysqlbackuprestore {{- with .Values.backup.podLabels }} {{ toYaml . | indent 12 }} {{- end }} {{- with .Values.backup.annotations }} annotations: {{ toYaml . | indent 12 }} {{- end }} spec: serviceAccountName: mysqlbackup containers: - name: test-mysql-restore image: "{{ .Values.backup.restoreImage.repository }}:{{ .Values.backup.restoreImage.tag }}" env: - name: MYSQL_ROOT_PASSWORD valueFrom: secretKeyRef: name: {{ .Values.mysql.secret.name }} key: {{ .Values.mysql.secret.keys.password }} - name: GOOGLE_APPLICATION_CREDENTIALS value: "/secrets/gcs-credentials.json" - name: BACKUPS_PATH value: {{ .Values.gcs.filePath }} - name: GCP_GCS_BUCKET value: {{ .Values.gcs.bucket }} volumeMounts: - name: credentials mountPath: /secrets resources: {{- toYaml .Values.backup.resources | nindent 14 }} - name: test-mysql-database image: "{{ .Values.backup.restoreImageDb.repository }}:{{ .Values.backup.restoreImageDb.tag }}" env: - name: MYSQL_ROOT_PASSWORD valueFrom: secretKeyRef: name: {{ .Values.mysql.secret.name }} key: {{ .Values.mysql.secret.keys.password }} resources: {{- toYaml .Values.backup.resources | nindent 14 }} {{- if .Values.backup.image.imagePullSecret }} imagePullSecrets: - name: {{ .Values.backup.image.imagePullSecret }} {{- end }} {{- with .Values.backup.nodeSelector }} nodeSelector: {{ toYaml . | indent 12 }} {{- end }} {{- with .Values.backup.affinity }} affinity: {{ toYaml . | indent 12 }} {{- end }} {{- with .Values.backup.tolerations }} tolerations: {{ toYaml . | indent 12 }} {{- end }} restartPolicy: Never {{- if .Values.gcs.enabled }} volumes: - name: credentials secret: secretName: {{ .Release.Name }}-mysqlbackup-gcs-credentials {{- end }}