# Backup quotidien du Postgres ordinarthur-os. # Secrets dans `ordinarthur-os-backup-secrets` : # PGURL → chaîne `postgres://…` (copie de DATABASE_URL) # RCLONE_REMOTE → ex. `b2:ordinarthur-os-backups` apiVersion: batch/v1 kind: CronJob metadata: name: ordinarthur-os-backup namespace: ordinarthur-os spec: schedule: "0 3 * * *" successfulJobsHistoryLimit: 3 failedJobsHistoryLimit: 3 jobTemplate: spec: template: spec: restartPolicy: OnFailure containers: - name: pgdump image: postgres:16-alpine envFrom: - secretRef: { name: ordinarthur-os-backup-secrets } command: ["/bin/sh", "-c"] args: - | set -euo pipefail apk add --no-cache rclone pg_dump "$PGURL" --schema=ordinarthur_os --format=c | gzip > /tmp/dump.gz rclone copy /tmp/dump.gz "$RCLONE_REMOTE/$(date +%F).gz"