From owner-freebsd-ports-bugs@FreeBSD.ORG Wed Jul 1 20:20:03 2009 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 12F8D106568F for ; Wed, 1 Jul 2009 20:20:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id E62208FC17 for ; Wed, 1 Jul 2009 20:20:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n61KK2V6079690 for ; Wed, 1 Jul 2009 20:20:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n61KK2oF079689; Wed, 1 Jul 2009 20:20:02 GMT (envelope-from gnats) Resent-Date: Wed, 1 Jul 2009 20:20:02 GMT Resent-Message-Id: <200907012020.n61KK2oF079689@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Mike Andrews Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 72EAA106570B for ; Wed, 1 Jul 2009 20:18:53 +0000 (UTC) (envelope-from mandrews@fark.com) Received: from bourbon.fark.com (bourbon.fark.com [207.246.126.22]) by mx1.freebsd.org (Postfix) with ESMTP id 4F2308FC0A for ; Wed, 1 Jul 2009 20:18:53 +0000 (UTC) (envelope-from mandrews@fark.com) Received: by bourbon.fark.com (Postfix, from userid 1001) id 4941AED51; Wed, 1 Jul 2009 16:18:52 -0400 (EDT) Message-Id: <20090701201852.4941AED51@bourbon.fark.com> Date: Wed, 1 Jul 2009 16:18:52 -0400 (EDT) From: Mike Andrews To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/136232: nginx: Add 'gracefulstop' option to rc script X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Mike Andrews List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Jul 2009 20:20:03 -0000 >Number: 136232 >Category: ports >Synopsis: nginx: Add 'gracefulstop' option to rc script >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Jul 01 20:20:02 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Mike Andrews >Release: FreeBSD 7.2-STABLE amd64 >Organization: Fark, Inc >Environment: System: FreeBSD bourbon.fark.com 7.2-STABLE FreeBSD 7.2-STABLE #15: Tue Jun 16 01:46:10 EDT 2009 mandrews@vodka.int.fark.com:/usr/obj/usr/src/sys/FARK64 amd64 >Description: The /usr/local/etc/rc.d script for Apache has a "gracefulstop" and "gracefulrestart" option in it. nginx has this capability via signals, but the rc script doesn't directly support all of it. The "upgrade" option more or less handles the "gracefulrestart" case. Here is a very simple patch for the "gracefulstop" case. >How-To-Repeat: n/a >Fix: *** /usr/local/etc/rc.d/nginx.orig Fri Jun 19 23:52:48 2009 --- /usr/local/etc/rc.d/nginx Wed Jul 1 16:12:40 2009 *************** *** 30,35 **** --- 30,36 ---- configtest_cmd="nginx_checkconfig" upgrade_precmd="nginx_checkconfig" upgrade_cmd="nginx_upgrade" + gracefulstop_cmd="nginx_gracefulstop" command="/usr/local/sbin/nginx" _pidprefix="/var/run/nginx" pidfile="${_pidprefix}.pid" *************** *** 100,105 **** --- 101,114 ---- run_rc_command ${rc_prefix}reload $rc_extra_args || return 1 } + nginx_gracefulstop() + { + echo "Performing a graceful stop" + + sig_stop="QUIT" + run_rc_command ${rc_prefix}stop $rc_extra_args || return 1 + } + nginx_precmd() { nginx_checkconfig *************** *** 112,116 **** fi } ! extra_commands="reload configtest upgrade" run_rc_command "$1" --- 121,125 ---- fi } ! extra_commands="reload configtest upgrade gracefulstop" run_rc_command "$1" >Release-Note: >Audit-Trail: >Unformatted: