This commit is contained in:
Andrew Hurley 2022-11-21 20:35:40 +11:00
parent ad2898c5e5
commit 46ec2d2a95
1 changed files with 11 additions and 10 deletions

21
v2b.sh
View File

@ -10,13 +10,12 @@ cprompt () {
if [[ $UNATTENDED == "true" ]]; then
return;
fi
read -r -s -N 1 -p "Press 'Enter' to continue "
read -r -s -N 1 -p "Press 'Enter' to backup, 'Escape' to skip..."
if [[ $REPLY != $'\n' ]]; then
printf "\n"
printf " Backup stopped!\n"
printf "backup skipped!\n"
return 1
else
printf "\n"
printf "backup starting.\n"
fi
}
@ -40,7 +39,7 @@ while getopts ':s:pku' OPT; do
case $OPT in
s) SEND="true"; ADDR="${OPTARG}"; OUTPUT="${OUTPUT} Option: SEND BACKUPS\n";;
p) REMOVE="true"; OUTPUT="${OUTPUT} Option: PREFIXES REMOVED\n";;
r) KEEP="true"; OUTPUT="${OUTPUT} Option: KEEP EXISTING BACKUPS\n";;
k) KEEP="true"; OUTPUT="${OUTPUT} Option: KEEP EXISTING BACKUPS\n";;
u) UNATTENDED="true"; OUTPUT="${OUTPUT} Option: UNATTENDED BACKUP\n";;
\?) usage; exit;;
esac
@ -50,7 +49,7 @@ shift $((OPTIND -1))
FOLDER="_vols_"
if [[ $# > 0 ]]; then
VOLUMES="$(sudo docker volume ls -q |grep "${1}")"
VOLUMES="$(sudo docker volume ls -q |grep "${1}_")"
else
VOLUMES="$(sudo docker volume ls -q)"
fi
@ -72,7 +71,7 @@ TEMPF="$(mktemp -dt -p $PWD _XXXXXXXXXXXXXXX_)"
for VOL in ${VOLUMES}; do
if [[ $REMOVE == "true" ]]; then
if [[ -v 1 ]]; then
if [[ $# > 0 ]]; then
TAR="${VOL#${1}_}.tar.bz2"
else
TAR="${VOL#*_}.tar.bz2"
@ -80,13 +79,15 @@ for VOL in ${VOLUMES}; do
else
TAR="${VOL}.tar.bz2"
fi
printf "${VOL} --> ${TEMPF}/${TAR}\n"
cprompt || break
printf "\n${VOL} --> ${TEMPF}/${TAR}\n"
cprompt || continue
sudo docker run --rm --log-driver none \
-v "${VOL}:/volume" \
-v "${TEMPF}:/backup" \
loomchild/volume-backup backup -v "${TAR}"
sudo chmod 600 "${TEMPF}/${TAR}"
if [[ -f "${TEMPF}/${TAR}" ]]; then
sudo chmod 600 "${TEMPF}/${TAR}"
fi
done
if [[ -z "$(ls -A ${TEMPF})" ]]; then