From 80eafdb56b5a9b109d89f5f1ac2dde8a4b6d0629 Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Mon, 26 Jul 2021 20:22:09 +0200 Subject: [PATCH] Fix bash quotes --- velero-restic-restore/restore_pvs.sh | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/velero-restic-restore/restore_pvs.sh b/velero-restic-restore/restore_pvs.sh index e7c11dd..867d430 100755 --- a/velero-restic-restore/restore_pvs.sh +++ b/velero-restic-restore/restore_pvs.sh @@ -35,54 +35,54 @@ validateVar "$POD_VOLUME_BACKUP_JSON" "POD_VOLUME_BACKUP_JSON" # Fetch the Restic snapshot ID RESTIC_SNAPSHOT_ID=$(echo "$POD_VOLUME_BACKUP_JSON" | jq -r '.status.snapshotID') validateVar "$RESTIC_SNAPSHOT_ID" "RESTIC_SNAPSHOT_ID" -echo $RESTIC_SNAPSHOT_ID +echo "$RESTIC_SNAPSHOT_ID" # Fetch the Restic Repo URL RESTIC_REPO=$(echo "$POD_VOLUME_BACKUP_JSON" | jq -r '.spec.repoIdentifier') validateVar "$RESTIC_REPO" "RESTIC_REPO" -echo $RESTIC_REPO +echo "$RESTIC_REPO" # Fetch the PV name PV_NAME=pvc-$(echo "$POD_VOLUME_BACKUP_JSON" | jq -r '.spec.tags["pvc-uid"]') validateVar "$PV_NAME" "PV_NAME" -echo $PV_NAME +echo "$PV_NAME" PV_JSON=`oc get pv "$PV_NAME" -o json` validateVar "$PV_JSON" "PV_JSON" NAMESPACE_CSI_DRIVER=$(echo "$PV_JSON" | jq -r '.spec.csi.nodeStageSecretRef.namespace') validateVar "$NAMESPACE_CSI_DRIVER" "NAMESPACE_CSI_DRIVER" -echo $NAMESPACE_CSI_DRIVER +echo "$NAMESPACE_CSI_DRIVER" # We need this information to access the manila API MANILA_SHARE_ID=$(echo "$PV_JSON" | jq -r '.spec.csi.volumeAttributes.shareID') validateVar "$MANILA_SHARE_ID" "MANILA_SHARE_ID" -echo $MANILA_SHARE_ID +echo "$MANILA_SHARE_ID" MANILA_SHARE_ACCESS_ID=$(echo "$PV_JSON" | jq -r '.spec.csi.volumeAttributes.shareAccessID') validateVar "$MANILA_SHARE_ACCESS_ID" "MANILA_SHARE_ACCESS_ID" -echo $MANILA_SHARE_ACCESS_ID +echo "$MANILA_SHARE_ACCESS_ID" -MANILA_EXPORT_LOCATIONS=$(curl -X GET -H "X-Auth-Token: $OPENSTACK_MANILA_SECRET" -H "X-Openstack-Manila-Api-Version: 2.51" $MANILA_URL/shares/$MANILA_SHARE_ID/export_locations) +MANILA_EXPORT_LOCATIONS=$(curl -X GET -H "X-Auth-Token: $OPENSTACK_MANILA_SECRET" -H "X-Openstack-Manila-Api-Version: 2.51" "$MANILA_URL/shares/$MANILA_SHARE_ID/export_locations") validateVar "$MANILA_EXPORT_LOCATIONS" "MANILA_EXPORT_LOCATIONS" -echo $MANILA_EXPORT_LOCATIONS +echo "$MANILA_EXPORT_LOCATIONS" # Stores monitors and path of the PV, similar to # 137.138.121.135:6789,188.184.85.133:6789,188.184.91.157:6789:/volumes/_nogroup/337f5361-bee2-415b-af8e-53eaec1add43 CEPHFS_PATH_PV=$(echo "$MANILA_EXPORT_LOCATIONS" | jq -r '.export_locations[]?.path') validateVar "$CEPHFS_PATH_PV" "CEPHFS_PATH_PV" -echo $CEPHFS_PATH_PV +echo "$CEPHFS_PATH_PV" # Stores the userKey credentials needed to manually mount CephFS PVs -MANILA_ACCESS_RULES=$(curl -X GET -H "X-Auth-Token: $OPENSTACK_MANILA_SECRET" -H "X-Openstack-Manila-Api-Version: 2.51" $MANILA_URL/share-access-rules/$MANILA_SHARE_ACCESS_ID) +MANILA_ACCESS_RULES=$(curl -X GET -H "X-Auth-Token: $OPENSTACK_MANILA_SECRET" -H "X-Openstack-Manila-Api-Version: 2.51" "$MANILA_URL/share-access-rules/$MANILA_SHARE_ACCESS_ID") validateVar "$MANILA_ACCESS_RULES" "MANILA_ACCESS_RULES" -echo $MANILA_ACCESS_RULES +echo "$MANILA_ACCESS_RULES" CEPHFS_USERKEY=$(echo "$MANILA_ACCESS_RULES" | jq -r '.access.access_key') validateVar "$CEPHFS_USERKEY" "CEPHFS_USERKEY" -echo $CEPHFS_USERKEY +echo "$CEPHFS_USERKEY" -echo mounting "$PV_NAME" in /mnt JOB_UID: "$JOB_UID" ... +echo "mounting $PV_NAME in /mnt JOB_UID: $JOB_UID ..." mount -t ceph "$CEPHFS_PATH_PV" -o name="$PV_NAME",noatime,secret="$CEPHFS_USERKEY" /mnt # The target directory for restic restore needs to have the same permissions as '/drupal-data' for rsync later @@ -94,7 +94,7 @@ restic -p /tmp/repository-password -r "$RESTIC_REPO" restore "$RESTIC_SNAPSHOT_I rsync -avz /restore/ /mnt/ --delete # Unmount pv from /mnt earlier mounted -echo unmounting "$PV_NAME" from /mnt JOB_UID: "$JOB_UID" ... +echo "unmounting $PV_NAME from /mnt JOB_UID: $JOB_UID ..." umount /mnt # We remove /root/.cache/ in each iteration to prevent restic backups to run out of memory and fail the cronjobs we run, -- GitLab