diff options
author | Bartłomiej Piotrowski <bpiotrowski@alpinelinux.org> | 2013-05-25 09:32:23 +0200 |
---|---|---|
committer | Bartłomiej Piotrowski <bpiotrowski@alpinelinux.org> | 2013-05-25 09:32:23 +0200 |
commit | 0d1a3a6de08d361aa77ded7e203c482261e0c663 (patch) | |
tree | 88527102a1fba6a4601b505e7dbe15128a3d0ba4 /testing/tengine/tengine.initd | |
parent | 26d86737c4f6bfb4b2e350b36fe85bd6cf04cd4b (diff) | |
download | aports-0d1a3a6de08d361aa77ded7e203c482261e0c663.tar.bz2 aports-0d1a3a6de08d361aa77ded7e203c482261e0c663.tar.xz |
testing/tengine: new aport
Diffstat (limited to 'testing/tengine/tengine.initd')
-rw-r--r-- | testing/tengine/tengine.initd | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/testing/tengine/tengine.initd b/testing/tengine/tengine.initd new file mode 100644 index 0000000000..7e82a56f77 --- /dev/null +++ b/testing/tengine/tengine.initd @@ -0,0 +1,73 @@ +#!/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_commands="configtest" + +depend() { + need net + use dns logger netmount +} + +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" +} + +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 +} + +reload() { + configtest || return 1 + ebegin "Refreshing nginx' configuration" + kill -HUP `cat /var/run/nginx.pid` &>/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" +} |