#!/bin/sh STATUSFILE='/home/finger/status.txt' 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 STATUS `date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"` STATUS RES='KO' service unbound status >/dev/null 2>&1 && RES='OK' STATUS 'DNS : ............ '${RES} RES='KO' is_service_running php php_fpm && RES='OK' STATUS 'Wiki FreeBSD : ............ '${RES} RES='KO' is_service_running grav php_fpm && RES='OK' STATUS 'Blog : ............ '${RES} RES='KO' is_service_running forge gogs && RES='OK' STATUS 'Forge : ............ '${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 cat << 'EOF' > /jails/grav/usr/local/www/grav/user/pages/04.Status/default.md --- title: Services body_classes: title-center title-h1h2 --- ## Bienvenue sur `popeye` ```sh finger status@dmarec.fr ``` ``` EOF cat ${STATUSFILE} >> /jails/grav/usr/local/www/grav/user/pages/04.Status/default.md echo '```' >> /jails/grav/usr/local/www/grav/user/pages/04.Status/default.md