74 lines
2.4 KiB
YAML
74 lines
2.4 KiB
YAML
|
---
|
||
|
# yaml-language-server: $schema=https://ks.hsn.dev/external-secrets.io/externalsecret_v1beta1.json
|
||
|
apiVersion: external-secrets.io/v1beta1
|
||
|
kind: ExternalSecret
|
||
|
metadata:
|
||
|
name: "${APP}-volsync"
|
||
|
spec:
|
||
|
secretStoreRef:
|
||
|
kind: ClusterSecretStore
|
||
|
name: onepassword-connect
|
||
|
target:
|
||
|
name: "${APP}-volsync-secret"
|
||
|
template:
|
||
|
engineVersion: v2
|
||
|
data:
|
||
|
RESTIC_REPOSITORY: "/repository/${APP}"
|
||
|
RESTIC_PASSWORD: "{{ .RESTIC_PASSWORD }}"
|
||
|
dataFrom:
|
||
|
- extract:
|
||
|
key: volsync-template
|
||
|
---
|
||
|
# yaml-language-server: $schema=https://ks.hsn.dev/volsync.backube/replicationsource_v1alpha1.json
|
||
|
apiVersion: volsync.backube/v1alpha1
|
||
|
kind: ReplicationSource
|
||
|
metadata:
|
||
|
name: "${APP}"
|
||
|
spec:
|
||
|
sourcePVC: "${APP}"
|
||
|
trigger:
|
||
|
schedule: "0 * * * *"
|
||
|
restic:
|
||
|
copyMethod: "${VOLSYNC_COPYMETHOD:-Snapshot}"
|
||
|
pruneIntervalDays: 7
|
||
|
repository: "${APP}-volsync-secret"
|
||
|
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-csi-ceph-blockpool}"
|
||
|
cacheCapacity: "${VOLSYNC_CACHE_CAPACITY:-4Gi}"
|
||
|
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-hostpath}"
|
||
|
cacheAccessModes: ["${VOLSYNC_CACHE_ACCESSMODES:-ReadWriteOnce}"]
|
||
|
storageClassName: "${VOLSYNC_STORAGECLASS:-ceph-block}"
|
||
|
accessModes: ["${VOLSYNC_ACCESSMODES:-ReadWriteOnce}"]
|
||
|
moverSecurityContext:
|
||
|
runAsUser: ${VOLSYNC_PUID:-568}
|
||
|
runAsGroup: ${VOLSYNC_PGID:-568}
|
||
|
fsGroup: ${VOLSYNC_PGID:-568}
|
||
|
retain:
|
||
|
hourly: 24
|
||
|
daily: 14
|
||
|
---
|
||
|
# yaml-language-server: $schema=https://ks.hsn.dev/volsync.backube/replicationdestination_v1alpha1.json
|
||
|
apiVersion: volsync.backube/v1alpha1
|
||
|
kind: ReplicationDestination
|
||
|
metadata:
|
||
|
name: "${APP}-dst"
|
||
|
spec:
|
||
|
trigger:
|
||
|
manual: restore-once
|
||
|
restic:
|
||
|
repository: "${APP}-volsync-secret"
|
||
|
copyMethod: Snapshot
|
||
|
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-csi-ceph-blockpool}"
|
||
|
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-hostpath}"
|
||
|
cacheAccessModes: ["${VOLSYNC_CACHE_ACCESSMODES:-ReadWriteOnce}"]
|
||
|
cacheCapacity: "${VOLSYNC_CACHE_CAPACITY:-8Gi}"
|
||
|
storageClassName: "${VOLSYNC_STORAGECLASS:-ceph-block}"
|
||
|
accessModes: ["${VOLSYNC_ACCESSMODES:-ReadWriteOnce}"]
|
||
|
capacity: "${VOLSYNC_CAPACITY}"
|
||
|
moverSecurityContext:
|
||
|
runAsUser: ${VOLSYNC_PUID:-568}
|
||
|
runAsGroup: ${VOLSYNC_PGID:-568}
|
||
|
fsGroup: ${VOLSYNC_PGID:-568}
|
||
|
enableFileDeletion: true
|
||
|
cleanupCachePVC: true
|
||
|
cleanupTempPVC: true
|