diff --git a/dockerbackup.sh b/dockerbackup.sh index ea1a1b8..73c6205 100644 --- a/dockerbackup.sh +++ b/dockerbackup.sh @@ -3,8 +3,8 @@ ### Docker Stack Backup Script ### Created by Charlie Silverman - ackitsme3@gmail.com ############################################################################### -### Version: 1.1.0 -### Updated: 2017-07-26 +### Version: 1.1.2 +### Updated: 2027-08-04 ### Purpose: Backs up all docker stacks in a given directory to Restic bucket ############################################################################### ### Requirements: @@ -22,6 +22,8 @@ # Version History: # 1.0.0 - Initial build # 1.1.0 - Added exception list via text file +# 1.1.1 - Added snapshot size to log +# 1.1.2 - Added aggregate backup size to end of log set -Eeuo pipefail @@ -128,6 +130,8 @@ fi # Process Each Compose Project ############################################################################### +total_size=0 + for compose_file in "${COMPOSE_FILES[@]}"; do compose_dir="$(dirname "$compose_file")" @@ -277,15 +281,33 @@ for compose_file in "${COMPOSE_FILES[@]}"; do --tag "${project_name}" \ --tag "${HOSTNAME_SHORT}" + ################################################### + # Get backup size + ################################################### + lastsnap=`restic ls latest` + lastsnapid=$(echo "$lastsnap" | awk '{print $2}') + snapdata=`restic snapshots $lastsnapid` + snapnum=$(echo $snapdata | awk '{print $14}') + snapsu=$(echo $snapdata | awk '{print $15}') + case "$snapsu" in + "TiB") + snapnum=$(echo "scale=2;$snapnum * 1024" | bc) + ;; + "MiB") + snapnum=$(echo "scale=2;$snapnum / 1024" | bc) + ;; + esac + snapnum=$(printf "%.2f\n" "$snapnum") + ################################################### # Cleanup Local Backup ################################################### rm -rf "${STAGING_DIR}" - log "Project complete: ${project_name}" + log "Project complete: ${project_name} ${snapnum} GiB" log "" - + total_size=$(bc <<< "$total_size + $snapnum") done ############################################################################### @@ -301,3 +323,4 @@ restic forget \ --prune log "All compose projects backed up successfully." +log "Total Backup Size: $total_size"