diff options
Diffstat (limited to 'testing/nginx-lua/nginx.initd')
-rwxr-xr-x[-rw-r--r--] | testing/nginx-lua/nginx.initd | 73 |
1 files changed, 21 insertions, 52 deletions
diff --git a/testing/nginx-lua/nginx.initd b/testing/nginx-lua/nginx.initd index 7e82a56f77..ce2b7b8bb9 100644..100755 --- a/testing/nginx-lua/nginx.initd +++ b/testing/nginx-lua/nginx.initd @@ -1,9 +1,6 @@ #!/sbin/runscript -# Copyright 1999-2004 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.init-r2,v 1.1 2010/01/03 19:51:41 djc Exp $ -extra_started_commands="upgrade reload" +extra_started_commands="reload" extra_commands="configtest" depend() { @@ -11,63 +8,35 @@ depend() { use dns logger netmount } +CONFFILE=${CONFFILE:-/etc/nginx/${SVCNAME}.conf} +PIDFILE=${PIDFILE:-/var/run/${SVCNAME}.pid} + +configtest() { + ebegin "Checking ${SVCNAME} configuration" + mkdir -p /tmp/nginx + /usr/sbin/nginx -c ${CONFFILE} -t + eend $? "failed, please correct errors above" +} + start() { configtest || return 1 - ebegin "Starting nginx" - start-stop-daemon --start --pidfile /var/run/nginx.pid \ - --exec /usr/sbin/nginx -- -c /etc/nginx/nginx.conf - eend $? "Failed to start nginx" + ebegin "Starting ${SVCNAME}" + start-stop-daemon --start --pidfile "${PIDFILE}" \ + --exec /usr/sbin/nginx -- -c ${CONFFILE} -g "pid ${PIDFILE};" + eend $? "Failed to start ${SVCNAME}" } stop() { configtest || return 1 - ebegin "Stopping nginx" - start-stop-daemon --stop --pidfile /var/run/nginx.pid - eend $? "Failed to stop nginx" - rm -f /var/run/nginx.pid + ebegin "Stopping ${SVCNAME}" + start-stop-daemon --stop --pidfile "${PIDFILE}" + eend $? "Failed to stop ${SVCNAME}" + rm -f "${PIDFILE}" } reload() { configtest || return 1 - ebegin "Refreshing nginx' configuration" - kill -HUP `cat /var/run/nginx.pid` &>/dev/null + ebegin "Refreshing ${SVCNAME} configuration" + kill -HUP $(cat "${PIDFILE}") &>/dev/null eend $? "Failed to reload nginx" } - -upgrade() { - configtest || return 1 - ebegin "Upgrading nginx" - - einfo "Sending USR2 to old binary" - kill -USR2 `cat /var/run/nginx.pid` &>/dev/null - - einfo "Sleeping 3 seconds before pid-files checking" - sleep 3 - - if [ ! -f /var/run/nginx.pid.oldbin ]; then - eerror "File with old pid not found" - return 1 - fi - - if [ ! -f /var/run/nginx.pid ]; then - eerror "New binary failed to start" - return 1 - fi - - einfo "Sleeping 3 seconds before WINCH" - sleep 3 ; kill -WINCH `cat /var/run/nginx.pid.oldbin` - - einfo "Sending QUIT to old binary" - kill -QUIT `cat /var/run/nginx.pid.oldbin` - - einfo "Upgrade completed" - - eend $? "Upgrade failed" -} - -configtest() { - ebegin "Checking nginx' configuration" - mkdir -p /tmp/nginx - /usr/sbin/nginx -c /etc/nginx/nginx.conf -t - eend $? "failed, please correct errors above" -} |