From 05f596080dc119cbb3b5c8fdf28be4f8e30d3118 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Wed, 20 Jun 2012 00:38:23 -0300 Subject: Issue just warnings on non-fatal rsync errors (#3966) --- handlers/rsync.in | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'handlers') diff --git a/handlers/rsync.in b/handlers/rsync.in index f0df52f..e0d2b1f 100644 --- a/handlers/rsync.in +++ b/handlers/rsync.in @@ -1096,6 +1096,23 @@ function restore_pipefail { } +function check_rsync_exit_status { + + if [ -z "$1" ]; then + return + fi + + case $1 in + 1|2|3|4|5|6|10|11|12|13|14|21) + fatal "Rsync error $1 when trying to transfer $SECTION" + ;; + *) + warning "Rsync error $1 when trying to transfer $SECTION" + ;; + esac + +} + # the backup procedure eval_config @@ -1120,10 +1137,7 @@ for SECTION in $include; do set_pipefail $nice su -c "$rsync ${rsync_options[@]} --delete-excluded $filelist_flag $excludes $batch_option $orig $dest_path" | tee -a $log - if [ "$?" != "0" ]; then - fatal "Rsync error when trying to transfer $SECTION" - fi - + check_rsync_exit_status $? restore_pipefail update_metadata -- cgit v1.2.3