From 87664af9f99a231dce92f5be150b69fdaec68932 Mon Sep 17 00:00:00 2001 From: pieter Date: Sat, 7 Feb 2026 00:22:08 +0000 Subject: [PATCH] =?UTF-8?q?templates/cronjob-backup.yaml=20=E3=82=92?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- templates/cronjob-backup.yaml | 55 +++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 templates/cronjob-backup.yaml diff --git a/templates/cronjob-backup.yaml b/templates/cronjob-backup.yaml new file mode 100644 index 0000000..1d1e729 --- /dev/null +++ b/templates/cronjob-backup.yaml @@ -0,0 +1,55 @@ +{{- if .Values.backup.enabled }} +apiVersion: batch/v1 +kind: CronJob +metadata: + name: {{ include "postgresql.fullname" . }}-backup + labels: + {{- include "postgresql.labels" . | nindent 4 }} + app.kubernetes.io/component: backup +spec: + schedule: {{ .Values.backup.schedule | quote }} + successfulJobsHistoryLimit: 3 + failedJobsHistoryLimit: 3 + concurrencyPolicy: Forbid + jobTemplate: + spec: + template: + metadata: + labels: + {{- include "postgresql.selectorLabels" . | nindent 12 }} + app.kubernetes.io/component: backup + spec: + restartPolicy: OnFailure + containers: + - name: backup + image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + command: + - /bin/bash + - /config/backup.sh + env: + - name: POSTGRES_USER + value: {{ .Values.postgres.user | quote }} + - name: PGPASSWORD + valueFrom: + secretKeyRef: + name: {{ .Values.postgres.existingSecret | default (include "postgresql.fullname" .) }} + key: {{ .Values.postgres.passwordKey }} + - name: PGHOST + value: {{ include "postgresql.fullname" . }}-primary + volumeMounts: + - name: backup + mountPath: /backup + - name: config + mountPath: /config + resources: + {{- toYaml .Values.backup.resources | nindent 14 }} + volumes: + - name: backup + persistentVolumeClaim: + claimName: {{ include "postgresql.fullname" . }}-backup + - name: config + configMap: + name: {{ include "postgresql.fullname" . }}-config + defaultMode: 0755 +{{- end }}