summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2019-12-07 22:21:52 -0800
committerRobin H. Johnson <robbat2@gentoo.org>2019-12-07 22:21:52 -0800
commitbc7e4cfff49a34bdf575e1e40acc59246c80b866 (patch)
tree164668532d25c69ae0cbcf0c13288d879a09c4e2
parentsnapshots-creat: more safety around validity checks (diff)
downloadmastermirror-scripts-bc7e4cfff49a34bdf575e1e40acc59246c80b866.tar.gz
mastermirror-scripts-bc7e4cfff49a34bdf575e1e40acc59246c80b866.tar.bz2
mastermirror-scripts-bc7e4cfff49a34bdf575e1e40acc59246c80b866.zip
snapshots_create: handle alternate previous snapshots20191208T062327Z
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-rwxr-xr-xsnapshots-create.sh12
1 files changed, 10 insertions, 2 deletions
diff --git a/snapshots-create.sh b/snapshots-create.sh
index 248612c..30b6522 100755
--- a/snapshots-create.sh
+++ b/snapshots-create.sh
@@ -191,8 +191,16 @@ write_time_log "END TARBALL $(date -u)"
# 2) Sanity check the tarball size and bail out if it appears abnormal.
write_time_log "START SIZE SANITY $(date -u)"
-current_size=$(stat -c '%s' "${FILENAME}")
-previous_size=$(stat -c '%s' "${previous_snapshot}")
+current_size=$(stat -c '%s' "${FILENAME%.bz2}")
+if [ "${previous_snapshot}" != "${previous_snapshot%.bz2}" ] ; then
+ previous_size=$($BZIP2_PROG -k -d -c "${previous_snapshot}" |wc -c)
+elif [ "${previous_snapshot}" != "${previous_snapshot%.xz}" ] ; then
+ previous_size=$($XZ_PROG -k -d -c "${previous_snapshot}" |wc -c)
+elif [ "${previous_snapshot}" != "${previous_snapshot%.tar}" ] ; then
+ previous_size=$(stat -c '%s' "${previous_snapshot}")
+else
+ previous_size=0
+fi
if [ -z "$current_size" ] || [ "${current_size}" -lt "${previous_size}" ]; then
size_difference=$(expr ${previous_size} - ${current_size})
difference_ratio=$(expr ${previous_size} / ${size_difference})