1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
samba-mirror/ctdb/config/ctdb-crash-cleanup.sh
Martin Schwenke f227c26178 ctdb-scripts: Update script boilerplate to avoid shellcheck warnings
* Assign the output of dirname to temporary variable to avoid word
  splitting when directory name contains whitespace

* Drop export of CTDB_BASE to avoid masking broken return value -
  functions file does the export anyway

* Quote path when including functions file

Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
2016-07-06 04:28:09 +02:00

30 lines
738 B
Bash
Executable File

#!/bin/sh
#
# This script can be called from a cronjob to automatically drop/release
# all public ip addresses if CTDBD has crashed or stopped running.
#
[ -n "$CTDB_BASE" ] || \
CTDB_BASE=$(d=$(dirname "$0") ; cd -P "$d" ; dirname "$PWD")
. "${CTDB_BASE}/functions"
# If ctdb is running, just exit
if service ctdb status >/dev/null 2>&1 ; then
exit 0
fi
loadconfig ctdb
[ -n "$CTDB_PUBLIC_ADDRESSES" ] || \
CTDB_PUBLIC_ADDRESSES="$CTDB_BASE/public_addresses"
[ -f "$CTDB_PUBLIC_ADDRESSES" ] || \
die "No public addresses file found. Can't clean up."
drop_all_public_ips 2>&1 | script_log "ctdb-crash-cleanup.sh"
if [ -n "$CTDB_NATGW_PUBLIC_IP" ] ; then
drop_ip "$CTDB_NATGW_PUBLIC_IP" "ctdb-crash-cleanup.sh"
fi