Subject: [alpine-devel] [PATCH] testing/tengine: fix install

From: Dennis Przytarski <[email-masked]>
Date: Wed, 20 Aug 2014 06:37:48 +0000

---
 testing/tengine/APKBUILD            | 33 ++++++++++++++++--------------
 testing/tengine/tengine.initd       | 40 ++++++++++++++++++-------------------
 testing/tengine/tengine.logrotate   |  4 ++--
 testing/tengine/tengine.pre-install |  9 +++++++++
 testing/tengine/tengine.pre-upgrade |  9 +++++++++
 5 files changed, 58 insertions(+), 37 deletions(-)
 create mode 100644 testing/tengine/tengine.pre-install
 create mode 100644 testing/tengine/tengine.pre-upgrade

diff --git a/testing/tengine/APKBUILD b/testing/tengine/APKBUILD
index a6ae05d..6d47d64 100644
--- a/testing/tengine/APKBUILD
+++ b/testing/tengine/APKBUILD
@@ -1,14 +1,16 @@
 # Maintainer: Cameron Banta <[email-masked]>
 # Contributor: Jeff Bilyk <[email-masked]>
 # Contributor: Bartłomiej Piotrowski <[email-masked]>
+# Contributor: Dennis Przytarski <[email-masked]>
 
 pkgname=tengine
 pkgver=2.0.3
-pkgrel=0
+pkgrel=1
 pkgdesc="lightweight HTTP and reverse proxy server"
 url="http://tengine.taobao.org/"
 arch="all"
 license="Custom"
+install="$pkgname.pre-install $pkgname.pre-upgrade"
 makedepends="pcre-dev openssl-dev zlib-dev"
 source="http://tengine.taobao.org/download/tengine-$pkgver.tar.gz
 	ipv6.patch
@@ -33,47 +35,48 @@ build() {
 	cd "$_builddir"
 	./configure --prefix=/usr \
 		--conf-path=/etc/$pkgname/$pkgname.conf \
+		--error-log-path=/var/log/$pkgname/error.log \
 		--pid-path=/var/run/$pkgname.pid \
 		--lock-path=/var/run/$pkgname.lock \
-		--error-log-path=/var/log/$pkgname/error.log \
+		--dso-path=/usr/lib/$pkgname \
 		--http-log-path=/var/log/$pkgname/access.log \
 		--http-client-body-temp-path=/tmp/$pkgname/client-body \
 		--http-proxy-temp-path=/tmp/$pkgname/proxy \
 		--http-fastcgi-temp-path=/tmp/$pkgname/fastcgi \
-		--user=http --group=http \
-		--with-ipv6  \
+		--user=tengine --group=tengine \
+		--with-ipv6 \
 		--with-http_ssl_module \
 		--with-http_gzip_static_module \
 		--with-mail --with-mail_ssl_module \
-		|| return 1 
+		|| return 1
 	make || return 1
 }
 
 package() {
 	cd "$_builddir"
-	make DESTDIR="$pkgdir" install
+	make DESTDIR="$pkgdir" install || return 1
 
-	install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
-	install -m644 -D "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
+	install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname || return 1
+	install -m644 -D "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname || return 1
 
-	install -m644 -D LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+	install -m644 -D LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE || return 1
 }
 
 md5sums="8c891d51d5a066bca0d03c184c4287a7  tengine-2.0.3.tar.gz
 801a87f7f9d27f8ad85b41a78b4c4461  ipv6.patch
 3aeb488921109e60d02ed64d36790aeb  musl-crypt-fix.patch
 be29516153528967cbd64eb9fedeac9e  musl-headers.patch
-4faf8dff6ff1490edae1688baf1b2abb  tengine.initd
-8823274a834332d3db4f62bf7dd1fb7d  tengine.logrotate"
+3ee0398ba7324d13ac9df060ebb560ba  tengine.initd
+3b44a6123ba048728164c3f7bed417a1  tengine.logrotate"
 sha256sums="ed024b6040e8f03df575fe7d7a9d274159e2543cd6854d89e173935e930fdfdb  tengine-2.0.3.tar.gz
 a24ef5843ae0afa538b00c37eb7da7870f9d7f146f52a9668678f7296cf71d9b  ipv6.patch
 8c398640bd379c1c6a2fafcd2b3848a72902e47924e8e2490b312c141eec5d70  musl-crypt-fix.patch
 9ce768e10e3adab166b8d851060962bb2ef6e579be70cb75366e6b6ab0c1a738  musl-headers.patch
-34e9b1dbb9f5fe4d71f7469ded3eb98fac02f57ecfbfd04ba623099766b4709c  tengine.initd
-cea0c6f8de55a4c3a3eccc57910de1c3116634082c8e5b660630fb927a29f38d  tengine.logrotate"
+95769c85363324b4c9311c01c1e61fa733c462e0d6877dc8770c76a427e7652b  tengine.initd
+2439b551c1ceb97ab720c43d646401dd10b8f7c66dfb5c8d28bbc8497a238f51  tengine.logrotate"
 sha512sums="34f03452bccd050a8680e3b21ae5e07ee16c477b68733318dc9026d67aac61783a32635ad036bb91b059951fdcfcccfe56374b650e3006700c67b299853e87a5  tengine-2.0.3.tar.gz
 68d64a84568ec2df0366925ab282a05ebe21a85044b6c7844a47573cfd8cc8ed119cc772358bc3fff36e2d4fdf583a730592825f5f98632993ca86d1f8438d5f  ipv6.patch
 21114c775e4bdd1f7b8b9abc143284945e96ed1d8c49904ddf918abad87b16253f918ba47976cd2df32f0fdb8a7dad399d4200e879db2da6cf93a28aab236a75  musl-crypt-fix.patch
 d31b02ae2158c9176bedb114820d4fdcf3ee17eaaeb31f8db8d99cef6881609edc2e4aeb5034ecdb774e720247219fa3f1ae39ca255e9803cc46398f673e06fe  musl-headers.patch
-e153ff131ca5a62f01744c45e97421db0776be518a84a8d09896955a996e5a0133c03cdfa7ac6b03bad75b5cbb839f49dcccbb210843010da42445706f239a12  tengine.initd
-01b77cff16f6e8bfd7fa1d4d20f625bbcddd08f0509173452d060c342c93dc315a7b0560f4734323a5d29ea294de0491f2e3f32e5337574e1a28ebc005eceea8  tengine.logrotate"
+7919e169dc002316f276285954e28760ab742685fb523400ed44cffdeb769e74bee0de9dfca2f53f04e48b277e9cf0384f493967d220b383ae2671edbca4ac0a  tengine.initd
+b0ad2fffe47210805ba09667dc40b09d30c7d1ff19fcb0fd4aa548355dcb992a2f9a7a9d3b0992a81e20eecbe37a91c3646b56324daf356c1d811e526fe663f3  tengine.logrotate"
diff --git a/testing/tengine/tengine.initd b/testing/tengine/tengine.initd
index 7e82a56..54b988f 100644
--- a/testing/tengine/tengine.initd
+++ b/testing/tengine/tengine.initd
@@ -13,52 +13,52 @@ depend() {
 
 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 tengine"
+	start-stop-daemon --start --pidfile /var/run/tengine.pid \
+		--exec /usr/sbin/tengine -- -c /etc/tengine/tengine.conf
+	eend $? "Failed to start tengine"
 }
 
 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 tengine"
+	start-stop-daemon --stop --pidfile /var/run/tengine.pid
+	eend $? "Failed to stop tengine"
+	rm -f /var/run/tengine.pid
 }
 
 reload() {
 	configtest || return 1
-	ebegin "Refreshing nginx' configuration"
-	kill -HUP `cat /var/run/nginx.pid` &>/dev/null
-	eend $? "Failed to reload nginx"
+	ebegin "Refreshing tengine' configuration"
+	kill -HUP `cat /var/run/tengine.pid` &>/dev/null
+	eend $? "Failed to reload tengine"
 }
 
 upgrade() {
 	configtest || return 1
-	ebegin "Upgrading nginx"
+	ebegin "Upgrading tengine"
 
 	einfo "Sending USR2 to old binary"
-	kill -USR2 `cat /var/run/nginx.pid` &>/dev/null
+	kill -USR2 `cat /var/run/tengine.pid` &>/dev/null
 
 	einfo "Sleeping 3 seconds before pid-files checking"
 	sleep 3
 
-	if [ ! -f /var/run/nginx.pid.oldbin ]; then
+	if [ ! -f /var/run/tengine.pid.oldbin ]; then
 		eerror "File with old pid not found"
 		return 1
 	fi
 
-	if [ ! -f /var/run/nginx.pid ]; then
+	if [ ! -f /var/run/tengine.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`
+	sleep 3 ; kill -WINCH `cat /var/run/tengine.pid.oldbin`
 
 	einfo "Sending QUIT to old binary"
-	kill -QUIT `cat /var/run/nginx.pid.oldbin`
+	kill -QUIT `cat /var/run/tengine.pid.oldbin`
 
 	einfo "Upgrade completed"
 
@@ -66,8 +66,8 @@ upgrade() {
 }
 
 configtest() {
-	ebegin "Checking nginx' configuration"
-	mkdir -p /tmp/nginx
-	/usr/sbin/nginx -c /etc/nginx/nginx.conf -t
+	ebegin "Checking tengine' configuration"
+	mkdir -p /tmp/tengine
+	/usr/sbin/tengine -c /etc/tengine/tengine.conf -t
 	eend $? "failed, please correct errors above"
 }
diff --git a/testing/tengine/tengine.logrotate b/testing/tengine/tengine.logrotate
index 7778b11..e4d3355 100644
--- a/testing/tengine/tengine.logrotate
+++ b/testing/tengine/tengine.logrotate
@@ -2,11 +2,11 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.logrotate,v 1.1 2010/01/03 20:29:40 djc Exp $
 
-/var/log/nginx/*.log {
+/var/log/tengine/*.log {
 	missingok
 	sharedscripts
 	postrotate
-		kill -USR1 `cat /var/run/nginx.pid`
+		test -r /var/run/tengine.pid && kill -USR1 `cat /var/run/tengine.pid`
 	endscript
 }
 
diff --git a/testing/tengine/tengine.pre-install b/testing/tengine/tengine.pre-install
new file mode 100644
index 0000000..5d0abf7
--- /dev/null
+++ b/testing/tengine/tengine.pre-install
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+addgroup -g 82 -S www-data 2>/dev/null
+addgroup -S tengine 2>/dev/null
+adduser -S -G tengine -H -h /var/www/localhost/htdocs -s /sbin/nologin \
+	-D tengine 2>/dev/null
+addgroup tengine www-data 2>/dev/null
+
+exit 0
diff --git a/testing/tengine/tengine.pre-upgrade b/testing/tengine/tengine.pre-upgrade
new file mode 100644
index 0000000..5d0abf7
--- /dev/null
+++ b/testing/tengine/tengine.pre-upgrade
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+addgroup -g 82 -S www-data 2>/dev/null
+addgroup -S tengine 2>/dev/null
+adduser -S -G tengine -H -h /var/www/localhost/htdocs -s /sbin/nologin \
+	-D tengine 2>/dev/null
+addgroup tengine www-data 2>/dev/null
+
+exit 0
-- 
2.1.0

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---