#!/bin/sh STATUSFILE='/usr/home/finger/status.txt' #STATUSFILE='/dev/stdout' STATUS () { echo "${*}" >> ${STATUSFILE} } wip() { echo 'Standby Server.' > ${STATUSFILE} STATUS '' STATUS 'Update in progress' STATUS STATUS `date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"` STATUS /usr/local/bin/boxes -d important ${STATUSFILE} ${STATUSFILE}.boxes exit 0 } [ -r "/tmp/wip.lock" ] && wip PRESTATUS () { echo -n "${*}" >> ${STATUSFILE} } is_service_running() { service -j ${1} ${2} status > /dev/null 2>&1 } echo 'salut la foule!' > $STATUSFILE echo '' >> $STATUSFILE service nginx status > /dev/null 2>&1 [ ${?} -ne 0 -a -z "`sockstat -q -lc -6 -p 80 -P tcp`" ] && STATUS 'The server is down' && exit 1 STATUS 'The webserver is running' STATUS '------------------------' STATUS STATUS `date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"` STATUS RES='KO' is_service_running pg15 postgresql && [ -n "`sockstat -j pg15 -ql4 -p 5432 -P tcp`" ] && RES='OK' STATUS 'Postgresql : ............ '${RES} RES='KO' is_service_running mariadb mysql-server && [ -n "`sockstat -j pg15 -ql4 -p 5432 -P tcp`" ] && RES='OK' STATUS 'MariaDB : ............ '${RES} RES='OK' jexec synapse sockstat -ql -p 8008 -P tcp > /dev/null 2>&1 STATUS 'Matrix synapse : ............ '${RES} jexec d14 sockstat -qlu | grep -e ".*ruby.*diaspora" > /dev/null 2>&1 [ ${?} -ne 0 ] && RES='KO' STATUS 'Diaspora* : ............ '${RES} RES='KO' is_service_running php php_fpm && RES='OK' STATUS 'Wiki FreeBSD : ............ '${RES} RES='KO' is_service_running epee php_fpm && RES='OK' STATUS 'Forum Epee : ............ '${RES} RES='KO' is_service_running git git_daemon && RES='OK' STATUS 'serveur git : ............ '${RES} /usr/local/bin/boxes -d peek ${STATUSFILE} ${STATUSFILE}.boxes if [ -r "/tmp/wip.plan" ]; then echo '' >> $STATUSFILE.boxes echo 'Update scheduled for the evening...' | /usr/local/bin/boxes -d nuke >> $STATUSFILE.boxes fi