diff options
| author | Kirill Ponomarev <krion@FreeBSD.org> | 2021-02-23 10:28:03 +0000 |
|---|---|---|
| committer | Kirill Ponomarev <krion@FreeBSD.org> | 2021-02-23 10:28:03 +0000 |
| commit | 7940d0a475720c38a6345ab07504cadca19c1f61 (patch) | |
| tree | 51892068d03a217cd94ab27fba7f5b70800bf1ed /sysutils/cbsd-mq-router/files/cbsd-mq-router.in | |
| parent | Update to 5.0.3 (diff) | |
This port delivers tasks to the CBSD using beanstalkd broker.
The service acts as an intermediate link between the broker and the CBSD.
PR: 253789
Submitted by: olevole___at___olevole___dot___ru
Notes
Notes:
svn path=/head/; revision=566387
Diffstat (limited to 'sysutils/cbsd-mq-router/files/cbsd-mq-router.in')
| -rw-r--r-- | sysutils/cbsd-mq-router/files/cbsd-mq-router.in | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/sysutils/cbsd-mq-router/files/cbsd-mq-router.in b/sysutils/cbsd-mq-router/files/cbsd-mq-router.in new file mode 100644 index 000000000000..791f5733fa85 --- /dev/null +++ b/sysutils/cbsd-mq-router/files/cbsd-mq-router.in @@ -0,0 +1,75 @@ +#!/bin/sh + +# PROVIDE: cbsd_mq_router +# REQUIRE: NETWORK +# BEFORE: DAEMON + +. /etc/rc.subr + +name="cbsd_mq_router" +desc="CBSD message queue router" +rcvar="cbsd_mq_router_enable" +pidfile="/var/run/${name}.pid" +daemon_pidfile="/var/run/${name}-daemon.pid" +logdir="/var/log/${name}" +logfile="${logdir}/cbsd_mq_router.log" +extra_commands="reload" +command="%%PREFIX%%/bin/cbsd-mq-router" +cbsd_mq_router_config=${cbsd_mq_router_config-"%%PREFIX%%/etc/cbsd-mq-router.json"} +required_files="${cbsd_mq_router_config}" + +cbsd_mq_router_args=${cbsd_mq_router_args-"-config ${cbsd_mq_router_config}"} + +load_rc_config ${name} + +start_cmd="start" +stop_cmd="stop" +status_cmd="status" +reload_cmd="reload" + +stop() +{ + if [ -f "${daemon_pidfile}" ]; then + pids=$( pgrep -F ${daemon_pidfile} 2>&1 ) + _err=$? + [ ${_err} -eq 0 ] && kill -9 ${pids} && /bin/rm -f ${daemon_pidfile} + fi + if [ -f "${pidfile}" ]; then + pids=$( pgrep -F ${pidfile} 2>&1 ) + _err=$? + [ ${_err} -eq 0 ] && kill -9 ${pids} && /bin/rm -f ${pidfile} + fi +} + +start() +{ + [ ! -d ${logdir} ] && mkdir -p ${logdir} + touch ${logfile} + /usr/sbin/daemon -f -R5 -p ${pidfile} -P ${daemon_pidfile} -o ${logfile} ${command} ${cbsd_mq_router_args} +} + +reload() +{ + stop + start +} + +status() +{ + if [ -f "${pidfile}" ]; then + pids=$( pgrep -F ${pidfile} 2>&1 ) + _err=$? + if [ ${_err} -eq 0 ]; then + echo "${name} is running as pid ${pids}" + exit 0 + else + echo "wrong pid: ${pids}" + exit 1 + fi + else + echo "no pidfile $pidfile" + exit 1 + fi +} + +run_rc_command "$1" |
