From daeba6f0dfdec54e47701d567437bec3134139ce Mon Sep 17 00:00:00 2001 From: ziirish Date: Thu, 21 Jul 2016 22:07:05 +0200 Subject: [PATCH] add: bui-celery init scripts --- contrib/debian/bui-celery.init | 87 ++++++++++++++++++++++++++++++ contrib/systemd/bui-celery.service | 7 +++ 2 files changed, 94 insertions(+) create mode 100644 contrib/debian/bui-celery.init create mode 100644 contrib/systemd/bui-celery.service diff --git a/contrib/debian/bui-celery.init b/contrib/debian/bui-celery.init new file mode 100644 index 00000000..e1e17ff5 --- /dev/null +++ b/contrib/debian/bui-celery.init @@ -0,0 +1,87 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: bui-celery +# Required-Start: $network $local_fs $remote_fs +# Required-Stop: $network $local_fs $remote_fs +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Burp-UI Celery worker +# Description: Burp UI Celery worker to manage background jobs +### END INIT INFO + + +DAEMON=/usr/local/bin/bui-celery +DESC=bui-celery +NAME=bui-celery +DUSER=burpui +DGROUP=burpui +PIDFILE=/var/run/bui-celery.pid + +# Exit if the package is not installed +[ -x $DAEMON ] || exit 0 + +# Load the VERBOSE setting and other rcS variables +. /lib/init/vars.sh + +# Function that starts the daemon/service + +do_start() +{ + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + start-stop-daemon --start --quiet --pidfile $PIDFILE --chuid $DUSER:$DGROUP --exec $DAEMON --test > /dev/null \ + || return 1 + start-stop-daemon --start --quiet --pidfile $PIDFILE --chuid $DUSER:$DGROUP --make-pidfile --background --exec $DAEMON -- \ + || return 2 +} + +# Function that stops the daemon/service + +do_stop() +{ + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # 2 if daemon could not be stopped + # other if a failure occurred + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + # + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + # Many daemons don't delete their pidfiles when they exit. + rm -f $PIDFILE + return "$RETVAL" +} + +case "$1" in + start) + [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " + do_start + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + stop) + [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" + do_stop + case "$?" in + 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; + 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; + esac + ;; + restart) + do_stop + do_start + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 + exit 3 + ;; +esac + +: diff --git a/contrib/systemd/bui-celery.service b/contrib/systemd/bui-celery.service new file mode 100644 index 00000000..06290819 --- /dev/null +++ b/contrib/systemd/bui-celery.service @@ -0,0 +1,7 @@ +[Unit] +Description=Burp-UI celery service +After=network.target + +[Service] +ExecStart=/usr/local/bin/bui-celery --beat -s /var/lib/burpui/celerybeat-schedule +User=burpui