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.
43 lines
1.6 KiB
43 lines
1.6 KiB
{{- if .Values.velero.backup.enabled }}
|
|
apiVersion: velero.io/v1
|
|
kind: Schedule
|
|
metadata:
|
|
name: {{ include "saberes.fullname" . }}-weekdays
|
|
namespace: {{ .Values.velero.namespace }}
|
|
spec:
|
|
# generate a random backup time between 1 and 5 AM on weekdays
|
|
schedule: {{ mod (randNumeric 2) 60 }} {{ mod (randNumeric 1) 6 }} * * 1-5
|
|
template:
|
|
includedNamespaces:
|
|
- {{ .Release.Namespace }}
|
|
{{- with .Values.velero.backup.includedNamespaces }}
|
|
{{- toYaml . | nindent 6 }}
|
|
{{- end }}
|
|
{{- with .Values.velero.backup.excludedResources }}
|
|
excludedResources:
|
|
{{- toYaml . | nindent 6 }}
|
|
{{- end }}
|
|
snapshotVolumes: {{ .Values.velero.backup.snapshotVolumes }}
|
|
# every weekday backup is good for the 3 days
|
|
ttl: 72h0m0s
|
|
defaultVolumesToFsBackup: {{ .Values.velero.backup.defaultVolumesToFsBackup }}
|
|
hooks:
|
|
resources:
|
|
- name: pgdump
|
|
includedResources:
|
|
- pods
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/component: primary
|
|
app.kubernetes.io/instance: {{ .Values.velero.backup.dbAppName }}
|
|
app.kubernetes.io/name: postgresql
|
|
pre:
|
|
- exec:
|
|
command:
|
|
- "/bin/bash"
|
|
- "-c"
|
|
- "PGPASSWORD=$POSTGRES_PASSWORD /opt/bitnami/postgresql/bin/pg_dump -Fc -U {{ .Values.moodle.dbUser }} -d {{ .Values.moodle.dbName }} > /bitnami/postgresql/{{ .Values.moodle.dbName }}.dump"
|
|
timeout: 14400s
|
|
onError: Continue
|
|
useOwnerReferencesInBackup: false
|
|
{{- end }}
|