summaryrefslogtreecommitdiff
path: root/community/redis
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-10-04 23:14:30 +0000
committerroot <root@rshg054.dnsready.net>2011-10-04 23:14:30 +0000
commit3567a49f79d2dbf828b723ab54982fa6c7ea1c80 (patch)
tree15fc309d3681df4da7a56189050fd5aa16fa9794 /community/redis
parent57d05f7209f022aa99a8850aafbeec4cb85c3b5b (diff)
Tue Oct 4 23:14:30 UTC 2011
Diffstat (limited to 'community/redis')
-rw-r--r--community/redis/PKGBUILD6
-rw-r--r--community/redis/redis.d68
2 files changed, 43 insertions, 31 deletions
diff --git a/community/redis/PKGBUILD b/community/redis/PKGBUILD
index 4fd24a269..ebcbab11a 100644
--- a/community/redis/PKGBUILD
+++ b/community/redis/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 55934 2011-09-26 09:37:58Z spupykin $
+# $Id: PKGBUILD 56203 2011-10-03 11:01:21Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Jan-Erik Rediger <badboy at archlinux dot us>
# Contributor: nofxx <x@<nick>.com>
pkgname=redis
pkgver=2.2.14
-pkgrel=1
+pkgrel=2
pkgdesc="Advanced key-value store"
arch=('i686' 'x86_64')
url="http://redis.io/"
@@ -19,7 +19,7 @@ source=("http://redis.googlecode.com/files/${pkgname}-${pkgver}.tar.gz"
"redis.d"
"redis.logrotate")
md5sums=('3605e3d4c9465fdfefa2e96f3a408ef5'
- 'bf61968d18d0e42529880f5c488ea9ed'
+ '9726d06d0a0c60cb5d55a31b3dc1e55d'
'9e2d75b7a9dc421122d673fe520ef17f')
build() {
diff --git a/community/redis/redis.d b/community/redis/redis.d
index 333f45d6b..3294963ed 100644
--- a/community/redis/redis.d
+++ b/community/redis/redis.d
@@ -1,53 +1,65 @@
#!/bin/bash
+daemon_name=redis
+
. /etc/rc.conf
. /etc/rc.d/functions
-PID=`cat /var/run/redis.pid 2>/dev/null`
+REDISPORT=6379
+EXEC=/usr/bin/redis-server
+CLIEXEC=/usr/bin/redis-cli
+PIDFILE=/var/run/redis.pid
+WORKDIR=/var/lib/redis
+CONF="/etc/redis.conf"
+
case "$1" in
start)
- stat_busy "Starting Redis Server"
- [ -d /var/lib/redis ] || { mkdir /var/lib/redis; }
- if [ -z "$PID" ]; then
- /usr/bin/redis-server /etc/redis.conf >/dev/null
- RESULT=$?
- else
- REDIS_PID=`pidof redis-server`
- if [ -z "$REDIS_PID" ]; then
- /usr/bin/redis-server /etc/redis.conf >/dev/null
- RESULT=$?
- elif [ `pidof redis-server` -eq $PID ]; then
- RESULT=1
- else
- /usr/bin/redis-server /etc/redis.conf >/dev/null
- RESULT=$?
- fi
- fi
+ stat_busy "Starting $daemon_name"
+ [ -d $WORKDIR ] || mkdir $WORKDIR
- if [ $RESULT -gt 0 ]; then
+ if [ -f $PIDFILE ]; then
stat_fail
+ exit 1
else
- add_daemon redis
- stat_done
+ $EXEC $CONF >/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ add_daemon $daemon_name
+ stat_done
+ fi
fi
;;
+
stop)
- stat_busy "Stopping Redis Server"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
+ stat_busy "Stopping $daemon_name"
+
+ if [ ! -f $PIDFILE ]; then
stat_fail
+ exit 1
else
- rm /var/run/redis.pid
- rm_daemon redis
- stat_done
+ PID=$(cat $PIDFILE)
+ $CLIEXEC -p $REDISPORT shutdown
+ [ -d /proc/${PID} ] && sleep 1
+ [ -d /proc/${PID} ] && sleep 5
+ [ -d /proc/${PID} ] && kill -9 $PID
+ [ -d /proc/${PID} ] && stat_fail || { stat_done; rm_daemon $daemon_name; }
fi
;;
+
restart)
$0 stop
sleep 1
$0 start
;;
+
+ status)
+ stat_busy "Checking $daemon_name status";
+ ck_status $daemon_name
+ ;;
+
*)
- echo "usage: $0 {start|stop|restart}"
+ echo "usage: $0 {start|stop|restart|status}"
esac
exit 0