From aa1e51a4825fd30851bca631e46fe92ec9afa23b Mon Sep 17 00:00:00 2001 From: pierreozoux <pierre@ozoux.net> Date: Thu, 26 Aug 2021 16:11:03 +0200 Subject: [PATCH] Adds dump/restore to hedgedoc --- hedgedoc/other-manifests/dump-standard.yml | 43 ++++++++++++++++++++++ hedgedoc/other-manifests/restore.yml | 42 +++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 hedgedoc/other-manifests/dump-standard.yml create mode 100644 hedgedoc/other-manifests/restore.yml diff --git a/hedgedoc/other-manifests/dump-standard.yml b/hedgedoc/other-manifests/dump-standard.yml new file mode 100644 index 0000000..49c5ca3 --- /dev/null +++ b/hedgedoc/other-manifests/dump-standard.yml @@ -0,0 +1,43 @@ +apiVersion: batch/v1 +kind: Job +metadata: + labels: + application: spilo-logical-backup + job-name: dump + name: dump +spec: + backoffLimit: 6 + completions: 1 + parallelism: 1 + selector: + matchLabels: + job-name: dump + template: + metadata: + creationTimestamp: null + labels: + application: spilo-logical-backup + job-name: dump + spec: + containers: + - command: + - /bin/sh + - -c + args: + - psql -h ${FQDN}-postgresql -p 5432 -U codimd -c "\l"; + - pg_dump -h ${FQDN}-postgresql -p 5432 -U codimd -Fc codimd | pigz | aws s3 cp - s3://${NS}-dumps/migrations/$(date +%m-%d-%Y).sql.gz --endpoint-url=https://minio.k7.indie.host --region=default + env: + - name: PGPASSWORD + valueFrom: + secretKeyRef: + key: postgresql-password + name: ${FQDN} + - name: AWS_S3_FORCE_PATH_STYLE + value: "true" + envFrom: + - secretRef: + name: ${NS}-dumps + image: registry.opensource.zalan.do/acid/logical-backup:v1.6.2 + imagePullPolicy: IfNotPresent + name: logical-backup + restartPolicy: Never \ No newline at end of file diff --git a/hedgedoc/other-manifests/restore.yml b/hedgedoc/other-manifests/restore.yml new file mode 100644 index 0000000..9a5bcdb --- /dev/null +++ b/hedgedoc/other-manifests/restore.yml @@ -0,0 +1,42 @@ +apiVersion: batch/v1 +kind: Job +metadata: + labels: + application: spilo-logical-backup + job-name: restore + name: restore +spec: + backoffLimit: 6 + completions: 1 + parallelism: 1 + selector: + matchLabels: + job-name: restore + template: + metadata: + creationTimestamp: null + labels: + application: spilo-logical-backup + job-name: restore + spec: + containers: + - command: + - /bin/sh + - -c + args: + - aws s3 cp s3://${NS}-dumps/migrations/$(date +%m-%d-%Y).sql.gz - --endpoint-url=https://minio.k7.indie.host --region=default | unpigz | pg_restore -d hedgedoc -h pg-${NS} -p 5432 -U hedgedoc + env: + - name: PGPASSWORD + valueFrom: + secretKeyRef: + key: password + name: hedgedoc.pg-${NS}.credentials + - name: AWS_S3_FORCE_PATH_STYLE + value: "true" + envFrom: + - secretRef: + name: ${NS}-dumps + image: registry.opensource.zalan.do/acid/logical-backup:v1.6.2 + imagePullPolicy: IfNotPresent + name: logical-backup + restartPolicy: Never \ No newline at end of file -- GitLab