You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.3 KiB
40 lines
1.3 KiB
2 years ago
|
{{- if .Values.velero.backup.enabled }}
|
||
|
apiVersion: velero.io/v1
|
||
|
kind: Schedule
|
||
|
metadata:
|
||
|
name: {{ include "sigi.fullname" . }}-weekly
|
||
|
namespace: {{ .Values.velero.namespace }}
|
||
|
spec:
|
||
|
# generate a random backup time between 1 and 5 AM on sunday
|
||
|
schedule: {{ mod (randNumeric 2) 60 }} {{ mod (randNumeric 1) 6 }} * * 0
|
||
|
template:
|
||
|
includedNamespaces:
|
||
|
- {{ .Release.Namespace }}
|
||
|
{{- with .Values.velero.backup.excludedResources }}
|
||
|
excludedResources:
|
||
|
{{- toYaml . | nindent 8 }}
|
||
|
{{- end }}
|
||
|
snapshotVolumes: {{ .Values.velero.backup.snapshotVolumes }}
|
||
|
# every sunday backup is good for 30 days (aprox. 1 month)
|
||
|
ttl: 744h0m0s
|
||
|
defaultVolumesToRestic: {{ .Values.velero.backup.defaultVolumesToRestic }}
|
||
|
hooks:
|
||
|
resources:
|
||
|
- name: pgdump
|
||
|
includedResources:
|
||
|
- pods
|
||
|
labelSelector:
|
||
|
matchLabels:
|
||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||
|
app.kubernetes.io/name: postgresql
|
||
|
pre:
|
||
|
- exec:
|
||
|
command:
|
||
|
- "/bin/bash"
|
||
|
- "-c"
|
||
|
- "PGPASSWORD=$POSTGRES_PASSWORD /opt/bitnami/postgresql/bin/pg_dump -U postgres -d sigi > /bitnami/postgresql/sigi.dump"
|
||
|
timeout: 360s
|
||
|
onError: Continue
|
||
|
useOwnerReferencesInBackup: false
|
||
|
{{- end }}
|