diff options
author | Chris Rees <crees@FreeBSD.org> | 2011-08-31 12:36:27 +0000 |
---|---|---|
committer | Chris Rees <crees@FreeBSD.org> | 2011-08-31 12:36:27 +0000 |
commit | 50b021969ee5e84fa5f110a78186d03d084025f8 (patch) | |
tree | cfc0b1283bcb266222bd3bea7dcde8184986b252 /net/rabbitmq/files | |
parent | Update NVidia legacy drivers to their latest versions. (diff) |
Make rabbitmq wait for pid after stopping; stops restarting problems.
PR: ports/160027
Submitted by: Nicolas Szalay <nico@rottenbytes.info>
Approved by: Phillip Neumann <pneumann@gmail.com> (maintainer)
Notes
Notes:
svn path=/head/; revision=280850
Diffstat (limited to 'net/rabbitmq/files')
-rw-r--r-- | net/rabbitmq/files/rabbitmq.in | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/net/rabbitmq/files/rabbitmq.in b/net/rabbitmq/files/rabbitmq.in index 7b69526427f8..2ae33c8fa0f9 100644 --- a/net/rabbitmq/files/rabbitmq.in +++ b/net/rabbitmq/files/rabbitmq.in @@ -1,8 +1,7 @@ #!/bin/sh # -# rabbitmq for rc.d usage -# $Id$ - +# $FreeBSD$ +# # PROVIDE: rabbitmq # REQUIRE: DAEMON # BEFORE: LOGIN @@ -17,17 +16,33 @@ name=rabbitmq rcvar=`set_rcvar` +load_rc_config $name + # Set some defaults -rabbitmq_enable=${rabbitmq_enable:-"NO"} -rabbitmq_user=${rabbitmq_user:-"rabbitmq"} +: ${rabbitmq_enable="NO"} +: ${rabbitmq_user="rabbitmq"} + rabbitmq_server="%%PREFIX%%/sbin/rabbitmq-server" rabbitmq_ctl="%%PREFIX%%/sbin/rabbitmqctl" +pidfile="/var/run/rabbitmq.pid" -start_cmd="env HOME=/var/db/rabbitmq su -m ${rabbitmq_user} -c 'sh -c \"${rabbitmq_server} -detached\"'" +start_cmd="${name}_start" stop_cmd="env HOME=/var/db/rabbitmq su -m ${rabbitmq_user} -c 'sh -c \"${rabbitmq_ctl} stop\"'" +stop_postcmd="wait_for_pids $rc_pid" rotate_logs_cmd="env HOME=/var/db/rabbitmq su -m ${rabbitmq_user} -c 'sh -c \"${rabbitmq_ctl} rotate_logs\"'" status_cmd="env HOME=/var/db/rabbitmq su -m ${rabbitmq_user} -c 'sh -c \"${rabbitmq_ctl} status\"'" extra_commands="rotate_logs status" -load_rc_config $name +rabbitmq_start() +{ + HOME=/var/db/rabbitmq + su -m ${rabbitmq_user} \ + -c "sh -c \"${rabbitmq_server} -detached\"" +# Grab pid (it appears that parsing the output of +# status is the most reliable method) + su -m ${rabbitmq_user} \ + -c "sh -c \"${rabbitmq_ctl} status\"" \ + | sed -n 's/[^p]*pid,\([0-9]*\)[^0-9]*/\1/p' > ${pidfile} +} + run_rc_command "$1" |