this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Volsync things

+140
+14
.taskfiles/VolSync/scripts/wait-for-job.sh
··· 1 + #!/usr/bin/env bash 2 + 3 + JOB=$1 4 + NAMESPACE="${2:-default}" 5 + CLUSTER="${3:-main}" 6 + 7 + [[ -z "${JOB}" ]] && echo "Job name not specified" && exit 1 8 + while true; do 9 + STATUS="$(kubectl --context "${CLUSTER}" -n "${NAMESPACE}" get pod -l job-name="${JOB}" -o jsonpath='{.items[*].status.phase}')" 10 + if [ "${STATUS}" == "Pending" ]; then 11 + break 12 + fi 13 + sleep 1 14 + done
+22
.taskfiles/VolSync/scripts/which-controller.sh
··· 1 + #!/usr/bin/env bash 2 + 3 + APP=$1 4 + NAMESPACE="${2:-default}" 5 + CLUSTER="${3:-main}" 6 + 7 + is_deployment() { 8 + kubectl --context "${CLUSTER}" -n "${NAMESPACE}" get deployment "${APP}" >/dev/null 2>&1 9 + } 10 + 11 + is_statefulset() { 12 + kubectl --context "${CLUSTER}" -n "${NAMESPACE}" get statefulset "${APP}" >/dev/null 2>&1 13 + } 14 + 15 + if is_deployment; then 16 + echo "deployment.apps/${APP}" 17 + elif is_statefulset; then 18 + echo "statefulset.apps/${APP}" 19 + else 20 + echo "No deployment or statefulset found for ${APP}" 21 + exit 1 22 + fi
+20
.taskfiles/VolSync/templates/list.tmpl.yaml
··· 1 + --- 2 + apiVersion: batch/v1 3 + kind: Job 4 + metadata: 5 + name: ${job} 6 + namespace: ${ns} 7 + spec: 8 + ttlSecondsAfterFinished: 3600 9 + template: 10 + spec: 11 + automountServiceAccountToken: false 12 + restartPolicy: OnFailure 13 + containers: 14 + - name: main 15 + image: docker.io/restic/restic:0.16.4 16 + args: ["snapshots"] 17 + envFrom: 18 + - secretRef: 19 + name: ${app}-volsync-secret 20 + resources: {}
+31
.taskfiles/VolSync/templates/replicationdestination.tmpl.yaml
··· 1 + --- 2 + apiVersion: volsync.backube/v1alpha1 3 + kind: ReplicationDestination 4 + metadata: 5 + name: ${job} 6 + namespace: ${ns} 7 + spec: 8 + trigger: 9 + manual: restore-once 10 + restic: 11 + repository: ${app}-volsync-secret 12 + destinationPVC: ${claim} 13 + copyMethod: Direct 14 + storageClassName: ceph-block 15 + # storageClassName: ceph-filesystem 16 + # accessModes: ["ReadWriteMany"] 17 + # IMPORTANT NOTE: 18 + # Set to the last X number of snapshots to restore from 19 + previous: ${previous} 20 + # OR; 21 + # IMPORTANT NOTE: 22 + # On bootstrap set `restoreAsOf` to the time the old cluster was destroyed. 23 + # This will essentially prevent volsync from trying to restore a backup 24 + # from a application that started with default data in the PVC. 25 + # Do not restore snapshots made after the following RFC3339 Timestamp. 26 + # date --rfc-3339=seconds (--utc) 27 + # restoreAsOf: "2022-12-10T16:00:00-05:00" 28 + moverSecurityContext: 29 + runAsUser: ${puid} 30 + runAsGroup: ${pgid} 31 + fsGroup: ${pgid}
+27
.taskfiles/VolSync/templates/unlock.tmpl.yaml
··· 1 + --- 2 + apiVersion: batch/v1 3 + kind: Job 4 + metadata: 5 + name: ${job} 6 + namespace: ${ns} 7 + spec: 8 + ttlSecondsAfterFinished: 3600 9 + template: 10 + spec: 11 + automountServiceAccountToken: false 12 + restartPolicy: OnFailure 13 + containers: 14 + - name: minio 15 + image: docker.io/restic/restic:0.16.4 16 + args: ["unlock", "--remove-all"] 17 + envFrom: 18 + - secretRef: 19 + name: ${app}-volsync-minio 20 + resources: {} 21 + - name: r2 22 + image: docker.io/restic/restic:0.16.4 23 + args: ["unlock", "--remove-all"] 24 + envFrom: 25 + - secretRef: 26 + name: ${app}-volsync-r2 27 + resources: {}
+26
.taskfiles/VolSync/templates/wipe.tmpl.yaml
··· 1 + --- 2 + apiVersion: batch/v1 3 + kind: Job 4 + metadata: 5 + name: ${job} 6 + namespace: ${ns} 7 + spec: 8 + ttlSecondsAfterFinished: 3600 9 + template: 10 + spec: 11 + automountServiceAccountToken: false 12 + restartPolicy: OnFailure 13 + containers: 14 + - name: main 15 + image: ghcr.io/onedr0p/alpine:rolling 16 + command: ["/bin/sh", "-c", "cd /config; find . -delete"] 17 + volumeMounts: 18 + - name: config 19 + mountPath: /config 20 + securityContext: 21 + privileged: true 22 + resources: {} 23 + volumes: 24 + - name: config 25 + persistentVolumeClaim: 26 + claimName: ${claim}