mirror of
https://github.com/auricom/home-cluster.git
synced 2025-09-17 18:24:14 +02:00
43 lines
1.6 KiB
YAML
43 lines
1.6 KiB
YAML
---
|
|
apiVersion: batch/v1
|
|
kind: Job
|
|
metadata:
|
|
name: ${APP}-${CLAIM}-restore
|
|
namespace: ${NAMESPACE}
|
|
spec:
|
|
ttlSecondsAfterFinished: 3600
|
|
template:
|
|
spec:
|
|
automountServiceAccountToken: false
|
|
restartPolicy: OnFailure
|
|
containers:
|
|
- name: restore
|
|
image: ghcr.io/onedr0p/kopia:0.12.1@sha256:ed13c180efbe3bbaf9101ebf6951666eddf9d97a08e695d366088fee9b60d508
|
|
env:
|
|
- name: KOPIA_PASSWORD
|
|
value: "none"
|
|
command:
|
|
- /bin/bash
|
|
- -c
|
|
- |-
|
|
shopt -s dotglob
|
|
printf "\e[1;32m%-6s\e[m\n" "[01/04] Connect to repo ..." && kopia repo connect filesystem --path=/snapshots --override-hostname=cluster --override-username=root
|
|
printf "\e[1;32m%-6s\e[m\n" "[02/04] Remove previous data ..." && rm -rf /data/${NAMESPACE}/${APP}/${CLAIM}/*
|
|
printf "\e[1;32m%-6s\e[m\n" "[03/04] Restore snapshot ..." && kopia snap restore "${SNAPSHOT}" /data/${NAMESPACE}/${APP}/${CLAIM}
|
|
printf "\e[1;32m%-6s\e[m\n" "[04/04] Disconnect from repo ..." && kopia repo disconnect
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data/${NAMESPACE}/${APP}/${CLAIM}
|
|
- name: snapshots
|
|
mountPath: /snapshots
|
|
securityContext:
|
|
privileged: true
|
|
volumes:
|
|
- name: data
|
|
persistentVolumeClaim:
|
|
claimName: ${CLAIM}
|
|
- name: snapshots
|
|
nfs:
|
|
server: 192.168.9.10
|
|
path: /mnt/storage/backups/kubernetes
|