diff options
Diffstat (limited to 'net-mgmt/peering-manager/files/peering_manager_rq.in')
-rwxr-xr-x | net-mgmt/peering-manager/files/peering_manager_rq.in | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/net-mgmt/peering-manager/files/peering_manager_rq.in b/net-mgmt/peering-manager/files/peering_manager_rq.in new file mode 100755 index 000000000000..6b12856dfa9b --- /dev/null +++ b/net-mgmt/peering-manager/files/peering_manager_rq.in @@ -0,0 +1,50 @@ +#!/bin/sh + +# This sample rc script starts the RQ worker background service which is +# required for Webhooks and various automation tasks. + +# +# PROVIDE: peering_manager_rq +# REQUIRE: DAEMON +# KEYWORD: shutdown +# +# Add the following line to /etc/rc.conf.local or /etc/rc.conf +# to enable peering_manager-rq: +# +# peering_manager_rq_enable (bool): Set to NO by default. +# Set it to YES to enable peering_manager_rq. +# +# peering_manager_rq_user (str): User to run worker as. +# Defaults to www. + +. /etc/rc.subr + +name=peering_manager_rq +rcvar=peering_manager_rq_enable + +load_rc_config $name + +: ${peering_manager_rq_enable:=NO} +: ${peering_manager_rq_user:=www} +: ${peering_manager_rq_workers:=1} + +start_cmd="peering_manager_rq_start" +start_precmd="peering_manager_rq_precmd" +command="%%PYTHON_CMD%%" +command_args="%%WWWDIR%%/manage.py rqworker" +_pidprefix="/var/run/%%PORTNAME%%" + +peering_manager_rq_precmd() +{ + install -d -o ${peering_manager_rq_user} ${_pidprefix} +} + +peering_manager_rq_start() +{ + echo "Starting peering_manager_rq." + for i in `jot - 1 $peering_manager_rq_workers`; do + /usr/sbin/daemon -cf -p ${_pidprefix}/${name}-${i}.pid -u ${peering_manager_rq_user} ${command} ${command_args} --name peering-manager@${i} + done +} + +run_rc_command "$1" |