Merge pull request #14 from fbartels/master
smaller cosmetics and tagging of main/local backup job
This commit is contained in:
commit
c9b850d7dd
4 changed files with 13 additions and 16 deletions
26
bin/backup
26
bin/backup
|
@ -1,19 +1,15 @@
|
||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
set -uo pipefail
|
set -uo pipefail
|
||||||
|
|
||||||
#backup li run
|
display_usage() {
|
||||||
#backup li
|
|
||||||
|
|
||||||
display_usage() {
|
|
||||||
echo "Usage: $0 <repo> (local|monitor <host> <warning> <critical>|restic arguments)" >&2
|
echo "Usage: $0 <repo> (local|monitor <host> <warning> <critical>|restic arguments)" >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ "$#" -lt 2 ]; then
|
if [ "$#" -lt 2 ]; then
|
||||||
display_usage
|
display_usage
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
TARGET=$1
|
TARGET=$1
|
||||||
ACTION=$2
|
ACTION=$2
|
||||||
RESTIC=$(which restic)
|
RESTIC=$(which restic)
|
||||||
|
@ -26,7 +22,7 @@ check_config() {
|
||||||
exit 1
|
exit 1
|
||||||
else
|
else
|
||||||
set -a
|
set -a
|
||||||
source $CONFIG
|
source $CONFIG
|
||||||
set +a
|
set +a
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -35,8 +31,6 @@ check_config() {
|
||||||
echo "Restic binary not found"
|
echo "Restic binary not found"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
handle_params () {
|
handle_params () {
|
||||||
|
@ -60,11 +54,14 @@ do_local_backup () {
|
||||||
|
|
||||||
. /etc/backup/local.config
|
. /etc/backup/local.config
|
||||||
|
|
||||||
|
# define an empty default if BACKUP_ARGS is not set
|
||||||
|
BACKUP_ARGS=${BACKUP_ARGS:-""}
|
||||||
|
|
||||||
if [[ -x /etc/backup/local.pre ]]; then
|
if [[ -x /etc/backup/local.pre ]]; then
|
||||||
/etc/backup/local.pre $TARGET
|
/etc/backup/local.pre $TARGET
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$RESTIC --exclude-file /etc/backup/local.exclude backup --hostname $BACKUP_HOSTNAME $BACKUP_DIR
|
$RESTIC --exclude-file /etc/backup/local.exclude backup --hostname $BACKUP_HOSTNAME $BACKUP_ARGS $BACKUP_DIR
|
||||||
|
|
||||||
if [[ -x /etc/backup/local.post ]]; then
|
if [[ -x /etc/backup/local.post ]]; then
|
||||||
/etc/backup/local.post $TARGET
|
/etc/backup/local.post $TARGET
|
||||||
|
@ -94,7 +91,7 @@ do_monitor () {
|
||||||
|
|
||||||
IFS=' ' read HASH DATE TIME HOST DIR <<< "$LAST"
|
IFS=' ' read HASH DATE TIME HOST DIR <<< "$LAST"
|
||||||
|
|
||||||
if [ -z "$HASH" ]; then
|
if [ -z "$HASH" ]; then
|
||||||
echo "UNKNOWN - No snapshot found for $3"
|
echo "UNKNOWN - No snapshot found for $3"
|
||||||
exit 4;
|
exit 4;
|
||||||
fi
|
fi
|
||||||
|
@ -109,6 +106,7 @@ do_monitor () {
|
||||||
BACKUP_TST=$(date -d "$DATE $TIME" +"%s" )
|
BACKUP_TST=$(date -d "$DATE $TIME" +"%s" )
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
NOW_TST=$(date +%s)
|
NOW_TST=$(date +%s)
|
||||||
DIFF_S=`expr $NOW_TST - $BACKUP_TST`
|
DIFF_S=`expr $NOW_TST - $BACKUP_TST`
|
||||||
|
|
||||||
|
@ -124,7 +122,7 @@ do_monitor () {
|
||||||
elif [ $DIFF_H -lt $CRIT ]; then
|
elif [ $DIFF_H -lt $CRIT ]; then
|
||||||
RET=1
|
RET=1
|
||||||
RET_H="WARNING"
|
RET_H="WARNING"
|
||||||
else
|
else
|
||||||
RET=2
|
RET=2
|
||||||
RET_H="CRITICAL"
|
RET_H="CRITICAL"
|
||||||
|
|
||||||
|
@ -133,9 +131,5 @@ do_monitor () {
|
||||||
return $RET
|
return $RET
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
check_config $@
|
check_config $@
|
||||||
handle_params $@
|
handle_params $@
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
BACKUP_HOSTNAME="backuphost.example.org"
|
BACKUP_HOSTNAME="backuphost.example.org"
|
||||||
BACKUP_DIR="/"
|
BACKUP_DIR="/"
|
||||||
|
BACKUP_ARGS="--tag filesystem"
|
||||||
# HEALTHCHECK_URL="<URL from https://healthchecks.io/checks/ to notify>"
|
# HEALTHCHECK_URL="<URL from https://healthchecks.io/checks/ to notify>"
|
||||||
|
|
1
etc/backup/local.post
Executable file
1
etc/backup/local.post
Executable file
|
@ -0,0 +1 @@
|
||||||
|
# run commands after the backup (script must be executable)
|
1
etc/backup/local.pre
Executable file
1
etc/backup/local.pre
Executable file
|
@ -0,0 +1 @@
|
||||||
|
# run commands before the backup (script must be executable)
|
Loading…
Reference in a new issue