f3f4ddcd8927bd21296860902e1c9818be0f8dfe

Author
zertrin <zertrin@gmail.com>
Committer
zertrin <zertrin@gmail.com>
Date

Message

rework code for email and notifications (more DRY)

Diff

 1diff --git a/duplicity-backup.sh b/duplicity-backup.sh
 2index cc28ebbdd6ee31c2241bb80dc0e2ff851418f163..ef7aa12db76448a8c4823015d68a82e645daedb3 100755
 3--- a/duplicity-backup.sh
 4+++ b/duplicity-backup.sh
 5@@ -858,34 +858,24 @@ esac
 6 
 7 echo -e "---------    END DUPLICITY-BACKUP SCRIPT    ---------\n" >> "${LOGFILE}"
 8 
 9-if [ "${EMAIL_FAILURE_ONLY}" = "yes" ]; then
10-  if [ ${BACKUP_ERROR} ]; then
11-    EMAIL_SUBJECT="BACKUP ERROR: ${EMAIL_SUBJECT}"
12-    email_logfile
13-  fi
14+# send email
15+if [ "${BACKUP_ERROR}" ]; then
16+  EMAIL_SUBJECT="BACKUP ERROR: ${EMAIL_SUBJECT}"
17 else
18-  if [ ${BACKUP_ERROR} ]; then
19-    EMAIL_SUBJECT="BACKUP ERROR: ${EMAIL_SUBJECT}"
20-  else
21-    EMAIL_SUBJECT="BACKUP OK: ${EMAIL_SUBJECT}"
22-  fi
23-  email_logfile
24+  EMAIL_SUBJECT="BACKUP OK: ${EMAIL_SUBJECT}"
25 fi
26 
27-if [ "${NOTIFICATION_FAILURE_ONLY}" = "yes" ]; then
28-  if [ ${BACKUP_ERROR} ]; then
29-    NOTIFICATION_CONTENT="BACKUP ERROR: ${HOSTNAME} - \`${LOGFILE}\`"
30-    send_notification
31-  fi
32+[[ ${BACKUP_ERROR} || ! "$EMAIL_FAILURE_ONLY" = "yes" ]] && email_logfile
33+
34+# send notification
35+if [ "${BACKUP_ERROR}" ]; then
36+  NOTIFICATION_CONTENT="BACKUP ERROR: ${HOSTNAME} - \`$LOGFILE\`"
37 else
38-  if [ ${BACKUP_ERROR} ]; then
39-    NOTIFICATION_CONTENT="BACKUP ERROR: ${HOSTNAME} - \`${LOGFILE}\`"
40-  else
41-    NOTIFICATION_CONTENT="BACKUP OK: ${HOSTNAME} - \`${LOGFILE}\`"
42-  fi
43-  send_notification
44+  NOTIFICATION_CONTENT="BACKUP OK: ${HOSTNAME} - \`$LOGFILE\`"
45 fi
46 
47+[[ ${BACKUP_ERROR} || ! "$NOTIFICATION_FAILURE_ONLY" = "yes" ]] && send_notification
48+
49 # remove old logfiles
50 # stops them from piling up infinitely
51 [[ -n "${REMOVE_LOGS_OLDER_THAN}" ]] && find "${LOGDIR}" -type f -mtime +"${REMOVE_LOGS_OLDER_THAN}" -delete