mirror of https://github.com/Icinga/icinga2.git
46 lines
768 B
Bash
46 lines
768 B
Bash
#!/bin/sh
|
|
# load system specific defines
|
|
SYSCONFIGFILE=$1
|
|
if [ ! -f "$SYSCONFIGFILE" ]; then
|
|
echo "Error: You need to supply the path to the Icinga2 sysconfig file as a parameter."
|
|
exit 1
|
|
fi
|
|
|
|
. $SYSCONFIGFILE
|
|
|
|
printf "Validating config files: "
|
|
|
|
OUTPUTFILE=`mktemp`
|
|
|
|
if type selinuxenabled >/dev/null 2>&1; then
|
|
if selinuxenabled; then
|
|
chcon -t icinga2_tmp_t $OUTPUTFILE >/dev/null 2>&1
|
|
fi
|
|
fi
|
|
|
|
if ! $DAEMON daemon --validate --color > $OUTPUTFILE; then
|
|
echo "Failed"
|
|
|
|
cat $OUTPUTFILE
|
|
rm -f $OUTPUTFILE
|
|
exit 1
|
|
fi
|
|
|
|
echo "Done"
|
|
rm -f $OUTPUTFILE
|
|
|
|
printf "Reloading Icinga 2: "
|
|
|
|
if [ ! -e $ICINGA2_PID_FILE ]; then
|
|
exit 7
|
|
fi
|
|
|
|
pid=`cat $ICINGA2_PID_FILE`
|
|
if ! kill -HUP $pid >/dev/null 2>&1; then
|
|
echo "Error: Icinga not running"
|
|
exit 7
|
|
fi
|
|
|
|
echo "Done"
|
|
exit 0
|