Files
vigil/scripts/sync
T

26 lines
623 B
Bash
Executable File

#!/usr/bin/env bash
readonly RSYNC_USER="${RSYNC_USER}"
readonly RSYNC_SERVER="${RSYNC_SERVER}"
main() {
local filepath="$1"
local name
name="$(basename "${filepath}")"
# Stagger transfers to avoid congestion at the hour mark.
sleep $((RANDOM % 180))
# Limit bandwidth so the backup does not saturate the connection.
rsync --archive --verbose --bwlimit=4096 \
"${HOME}/timelapse/${name}" \
"${RSYNC_USER}@${RSYNC_SERVER}:/timelapse/${name}"
# Delete outdated files.
# This assumes the timelapse is created on an hourly basis.
rm -f "$1"
find "${HOME}/timelapse/" -mmin +60 -delete
}
main "$@"