From a0de8021a2331fc66d98ba7445c7405637d5199d Mon Sep 17 00:00:00 2001 From: Jonathan Cobb Date: Wed, 24 Jun 2020 02:51:23 -0400 Subject: [PATCH] add vultr snapshot utils --- bin/vultr/vultr_delete_snapshot.sh | 15 ++++++++------- bin/vultr/vultr_delete_snapshots.sh | 10 ++++++++++ bin/vultr/vultr_list_snapshots.sh | 6 +++--- 3 files changed, 21 insertions(+), 10 deletions(-) create mode 100755 bin/vultr/vultr_delete_snapshots.sh diff --git a/bin/vultr/vultr_delete_snapshot.sh b/bin/vultr/vultr_delete_snapshot.sh index 25cbc8d8..4cb70e5b 100755 --- a/bin/vultr/vultr_delete_snapshot.sh +++ b/bin/vultr/vultr_delete_snapshot.sh @@ -1,15 +1,16 @@ #!/bin/bash -SNAPSHOTID=${1:?no SNAPSHOTID provided} +SNAPSHOTID=${1:?no snapshot provided} THISDIR=$(cd $(dirname ${0}) && pwd) VCURL=${THISDIR}/vcurl -if [[ ${SNAPSHOTID} == "-n" ]] ; then - SNAPSHOT_NAME=${2:?no snapshot name provided} - echo "Deleting snapshot named: ${SNAPSHOT_NAME}" - ${0} $(${VCURL} snapshot/list | jq -r 'to_entries | .[] | select(.value.description=="'${SNAPSHOT_NAME}'") | .value.SNAPSHOTID') || echo "Error deleting snapshot named: ${SNAPSHOT_NAME}" +if [[ ${SNAPSHOTID} == "-i" ]] ; then + SNAPSHOTID=${2:?no snapshot ID provided} + echo "Deleting snapshot with SNAPSHOTID: ${SNAPSHOTID}" + ${VCURL} snapshot/destroy -X POST -d "SNAPSHOTID=${SNAPSHOTID}" || echo "Error deleting snapshot: ${SNAPSHOTID}" else - echo "Deleting snapshot: ${SNAPSHOTID}" - ${VCURL} snapshot/destroy -X POST -d "SNAPSHOTID=${SNAPSHOTID}" || echo "Error deleting snapshot: ${SNAPSHOTID}" + SNAPSHOT_NAME="${SNAPSHOTID}" + echo "Deleting snapshot named: ${SNAPSHOT_NAME}" + ${0} -i $(${VCURL} snapshot/list | jq -r 'to_entries | .[] | select(.value.description=="'${SNAPSHOT_NAME}'") | .value.SNAPSHOTID') || echo "Error deleting snapshot named: ${SNAPSHOT_NAME}" fi diff --git a/bin/vultr/vultr_delete_snapshots.sh b/bin/vultr/vultr_delete_snapshots.sh new file mode 100755 index 00000000..26ecdaaa --- /dev/null +++ b/bin/vultr/vultr_delete_snapshots.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +THISDIR=$(cd $(dirname ${0}) && pwd) +VCURL=${THISDIR}/vcurl + +SNAPSHOT_FILTER=${1?no snapshot filter provided} + +for snap in $(${VCURL} snapshot/list | jq -r '.[].description' | grep "${SNAPSHOT_FILTER}") ; do + ${THISDIR}/vultr_delete_snapshot.sh "${snap}" +done diff --git a/bin/vultr/vultr_list_snapshots.sh b/bin/vultr/vultr_list_snapshots.sh index bb857eed..d7b7bd22 100755 --- a/bin/vultr/vultr_list_snapshots.sh +++ b/bin/vultr/vultr_list_snapshots.sh @@ -3,10 +3,10 @@ THISDIR=$(cd $(dirname ${0}) && pwd) VCURL=${THISDIR}/vcurl -VULTR_OUTPUT=${1} +SNAPSHOT_FILTER=${1} -if [[ -z "${VULTR_OUTPUT}" ]] ; then +if [[ -z "${SNAPSHOT_FILTER}" ]] ; then ${VCURL} snapshot/list | jq . else - ${VCURL} snapshot/list | jq -r .[].${VULTR_OUTPUT} + ${VCURL} snapshot/list | jq -r '.[].description' | grep "${SNAPSHOT_FILTER}" fi