From 90cd55698bfd253acb55cb5809b28e7aef282903 Mon Sep 17 00:00:00 2001 From: Dominik Hebeler <dominik@hebeler.club> Date: Tue, 14 Mar 2023 13:39:42 +0100 Subject: [PATCH] added cronjob and backup script --- chart/templates/backups.yaml | 54 ++++++++++++++++++++++++++++++++++++ pass/bin/do_backup | 5 ++++ 2 files changed, 59 insertions(+) create mode 100644 chart/templates/backups.yaml create mode 100644 pass/bin/do_backup diff --git a/chart/templates/backups.yaml b/chart/templates/backups.yaml new file mode 100644 index 0000000..d677651 --- /dev/null +++ b/chart/templates/backups.yaml @@ -0,0 +1,54 @@ +apiVersion: batch/v1 +kind: CronJob +metadata: + creationTimestamp: null + name: {{ include "chart.fullname" . }}-backup +spec: + jobTemplate: + metadata: + creationTimestamp: null + name: {{ include "chart.fullname" . }}-backup + labels: + {{- include "chart.selectorLabels" . | nindent 6 }} + spec: + template: + metadata: + creationTimestamp: null + labels: + {{- include "chart.selectorLabels" . | nindent 10 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 12 }} + {{- end }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 12 }} + volumes: + - name: order-data + persistentVolumeClaim: + claimName: order-data + {{- if .Values.application.secretName }} + - name: application-secret + secret: + secretName: {{ .Values.application.secretName }} + defaultMode: 420 + {{- end }} + containers: + - image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Chart.Name }}-backup + command: ["/bin/bash"] + args: ["-c", "bin/do_backup"] + securityContext: + {{- toYaml .Values.securityContext | nindent 14 }} + volumeMounts: + - name: order-data + mountPath: /data + {{- if .Values.application.secretName }} + - name: application-secret + readOnly: true + mountPath: /app/config/production.json + subPath: production.json + {{- end }} + restartPolicy: OnFailure + schedule: '*/15 * * * *' \ No newline at end of file diff --git a/pass/bin/do_backup b/pass/bin/do_backup new file mode 100644 index 0000000..61f2fef --- /dev/null +++ b/pass/bin/do_backup @@ -0,0 +1,5 @@ +#!/bin/bash + +set -e + +node backup -- GitLab