diff options
Diffstat (limited to 'arch-system')
-rw-r--r-- | arch-system/PKGBUILD | 2 | ||||
-rwxr-xr-x | arch-system/borgbackup | 11 |
2 files changed, 7 insertions, 6 deletions
diff --git a/arch-system/PKGBUILD b/arch-system/PKGBUILD index 7523ad5..399680e 100644 --- a/arch-system/PKGBUILD +++ b/arch-system/PKGBUILD @@ -31,7 +31,7 @@ sha256sums=('bb00c42f2802c12536c46700b948d41a43153d97a6986827b7c61203880e1ad1' '99cd268de0e9b847d65f802e7bcbbf7318398a04db61523545d4002ebdfb4d9c' '42050ba722df1cd606288e82054e131dac99bf10506f4c8d52eb9bfc0a078d89' 'e1bf3dc5978a7641f86975b7ee770a6914b30a8e4b7e3be2f1b07eaa7098591d' - 'ba4e0a45cd428678ccb3b9981131333c2afa450107ca4a4bda475748ef915628' + '5ae98dd2c668b4ef1a5893a3f84716578b7dd986e7500ca3272135140dbb3801' '5613c98d32e513a973e8a0e250ab0b267882a73615f507b6208d4a5f21487fe6') package_base-system() { diff --git a/arch-system/borgbackup b/arch-system/borgbackup index 66d1a36..fdd410d 100755 --- a/arch-system/borgbackup +++ b/arch-system/borgbackup @@ -5,11 +5,11 @@ set -o errexit -o errtrace BORG_HOST="borg@borg1.th73.ovh" export BORG_REPO="$BORG_HOST:." export BORG_PASSPHRASE="$(< ~/.borg_secret)" -export BORG_RSH="ssh -o IdentitiesOnly=yes -o ConnectionAttempts=20 -i ~/.ssh/borg_key" +export BORG_RSH="ssh -o IdentitiesOnly=yes -o ConnectionAttempts=20 \ + -o ConnectTimeout=30 -i ~/.ssh/borg_key" export LC_COLLATE=C SNAPSHOT_TARGET="/.snapshots/home-$(date "+%Y-%m-%dT%H:%M:%S")" -NETWORK_TIMEOUT=30 cleanup() { cd / @@ -66,12 +66,13 @@ if [ ! -d "$SNAPSHOT_TARGET" ]; then sudo -n backup-sudo snapshot "$SNAPSHOT_TARGET" fi -if ! ssh -To BatchMode=yes -o ConnectTimeout=$NETWORK_TIMEOUT \ - -o IdentitiesOnly=yes -o ConnectionAttempts=20 -i ~/.ssh/borg_key \ - "$BORG_HOST" "borg --version" > /dev/null; then +$BORG_RSH "$BORG_HOST" -f -N || rc=$? +if [ ${rc-0} -eq 255 ]; then notify_user "Backup: upload skipped" echo "SSH server not reachable, skipping upload" >&2 exit 0 +elif [ ${rc-0} -ne 0 ]; then + handle_failure fi # break locks in case the previous run was interrupted |