diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /app-admin/swatchdog/files/swatchdog-init |
reinit the tree, so we can have metadata
Diffstat (limited to 'app-admin/swatchdog/files/swatchdog-init')
-rw-r--r-- | app-admin/swatchdog/files/swatchdog-init | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/app-admin/swatchdog/files/swatchdog-init b/app-admin/swatchdog/files/swatchdog-init new file mode 100644 index 000000000000..d623070073f7 --- /dev/null +++ b/app-admin/swatchdog/files/swatchdog-init @@ -0,0 +1,53 @@ +#!/sbin/openrc-run +# This script is based on the one created by Phil (bug #255329). + +depend() { + need logger +} + +SWATCHDOG_BINARY=${SWATCHDOG_BINARY:-/usr/bin/swatchdog} +SWATCHDOGRC=${SWATCHDOGRC:-/etc/swatchdogrc} +SWATCHDOG_TAILFILE=${SWATCHDOG_TAILFILE:-/var/log/syslog} +SWATCHDOG_LOGFILE=${SWATCHDOG_LOGFILE:-/var/log/swatchdog.log} +SWATCHDOG_ERRFILE=${SWATCHDOG_ERRFILE:-/var/log/swatchdog-err.log} +SWATCHDOG_SCRIPT=${SWATCHDOG_SCRIPT:-/run/swatchdog/swatchdog_script.pl} + +gen_script() { + local tailargs="" + if [ "${SWATCHDOG_TAILARGS}" ]; then + tailargs="--tail-args=\"${SWATCHDOG_TAILARGS}\"" + fi + ebegin "Generating swatchdog script from config" + ${SWATCHDOG_BINARY} --dump-script="${SWATCHDOG_SCRIPT}" \ + --use-cpan-file-tail ${tailargs} \ + --config-file "${SWATCHDOGRC}" $1 "${SWATCHDOG_TAILFILE}" + eend $? +} + +parse_full() { + gen_script --examine + ebegin "Parsing complete file once" + /usr/bin/perl ${SWATCHDOG_SCRIPT} 1>/dev/null + eend $? +} + +start() { + checkpath -d -q -m 0750 -o root:root /run/swatchdog + if [ "${PARSE_FULL}" = "YES" ]; then + parse_full + fi + gen_script --tail-file + ebegin "Starting swatchdog" + start-stop-daemon --start --quiet --background \ + --make-pidfile --pidfile /run/swatchdog/swatchdog.pid \ + --stdout ${SWATCHDOG_LOGFILE} --stderr ${SWATCHDOG_ERRFILE} \ + --exec /usr/bin/perl -- ${SWATCHDOG_SCRIPT} + eend $? +} + +stop() { + ebegin "Stopping swatchdog" + start-stop-daemon --stop --exec /usr/bin/perl \ + --pidfile /run/swatchdog/swatchdog.pid --quiet + eend $? +} |