From dc2ae57bd6c444f11aec9b280bf564db1ca6146d Mon Sep 17 00:00:00 2001 From: Hyperling Date: Thu, 23 Oct 2025 19:42:50 -0700 Subject: [PATCH] Add command to pull production backups while making sure that failed downloads are easily identified. --- tasks/general/acct_mgmt/users.yml | 41 +++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/tasks/general/acct_mgmt/users.yml b/tasks/general/acct_mgmt/users.yml index 794cc52..7d487f7 100644 --- a/tasks/general/acct_mgmt/users.yml +++ b/tasks/general/acct_mgmt/users.yml @@ -793,16 +793,52 @@ date "+%Y%m%d" } function_backup: | + export BACKUP_DIR="/srv/backup" function backup { /usr/local/bin/backup_system.sh } alias backup-system="backup" alias system-backup="backup" - alias check-backups="ll /srv/backup" + alias check-backups="ll $BACKUP_DIR" function clean-backup { - sh -c "rm -rfv /srv/backup/*" + sh -c "rm -rfv $BACKUP_DIR/*" } alias clean-backups="clean-backup" + function_pull_prod_backups: | + export BACKUP="Backup" + export SYSTEM="System" + function pull_prod_backup { + if [[ -z "$1" || ("$1" != "$BACKUP" && "$1" != "$SYSTEM") ]]; then + echo "ERROR: Parameter 1 not correct, expecting '$BACKUP' or '$SYSTEM'." + return 1 + fi + backup_type="$1" + mkdir -pv tmp + scp -P {{ prod_port }} \ + {{ prod_user }}@{{ prod_host }}:"$BACKUP_DIR/*${backup_type}*.zip" \ + tmp/ + if [[ "$?" == "0" ]]; then + echo "Succeeded!" + mv -v "tmp/*${backup_type}*.zip" ./ + rmdir tmp + else + rm -rv tmp + fi + } + function pull_prod_backups { + dir="ProductionBackups-Pulled`today`" + mkdir -pv "$dir" + cd "$dir" + pull_prod_backup "$BACKUP" + pull_prod_backup "$SYSTEM" + cd .. + } + alias pull-prod-backups="pull_prod_backups" + alias pull-backups="pull_prod_backups" + alias prod-backups="pull_prod_backups" + alias prod-backup="pull_prod_backups" + alias pull-prod="pull_prod_backups" + alias prod-pull="pull_prod_backups" function_log: | function log { echo -e "$1" @@ -1024,6 +1060,7 @@ {{ alias_ansible_facts }} {{ function_now }} {{ function_backup }} + {{ function_pull_prod_backups }} {{ function_log }} {{ function_debian_upgrade }} {{ function_ebook_convert }}