Date: Mon, 29 Aug 2011 17:53:33 -0700 From: Doug Barton <dougb@FreeBSD.org> To: freebsd-rc@freebsd.org Subject: Re: RC script for rabbitmq Message-ID: <4E5C348D.2050703@FreeBSD.org> In-Reply-To: <CADLo839QzYLaHvv1uMx9UB_61KwHgbk1ngfP-5UeNncr-dGx8Q@mail.gmail.com> References: <CADLo839QzYLaHvv1uMx9UB_61KwHgbk1ngfP-5UeNncr-dGx8Q@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------030406000009010106080205 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 8/29/2011 7:13 AM, Chris Rees wrote: > Hey all, > > Just hacked in pidfile support for rabbitmq into the rc script, and > tidied it up a little. > > Please would someone kindly let me know if I'm doing anything horribly wrong? Not horribly, but you really need to read TPH section on rc.d scripts. :) Try the attached. -- Nothin' ever doesn't change, but nothin' changes much. -- OK Go Breadth of IT experience, and depth of knowledge in the DNS. Yours for the right price. :) http://SupersetSolutions.com/ --------------030406000009010106080205 Content-Type: text/plain; name="new-rabbitmq-rc-script.in" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="new-rabbitmq-rc-script.in" #!/bin/sh # $Id$ # # PROVIDE: rabbitmq # REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following line to /etc/rc.conf to enable RabbitMQ # # rabbitmq_enable="YES" . /etc/rc.subr name=rabbitmq rcvar=`set_rcvar` load_rc_config $name # Set some defaults : ${rabbitmq_enable="NO"} : ${rabbitmq_user="rabbitmq"} rabbitmq_server="%%PREFIX%%/sbin/rabbitmq-server" rabbitmq_ctl="%%PREFIX%%/sbin/rabbitmqctl" pidfile="/var/run/rabbitmq.pid" 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" 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" --------------030406000009010106080205--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4E5C348D.2050703>