Pavol Rusnak 2010-03-07 23:11:23 +00:00 committed by Git OBS Bridge
parent 5fe22d6240
commit 4e1042c7e2
4 changed files with 68 additions and 14 deletions

13
redis-conf.patch Normal file
View File

@ -0,0 +1,13 @@
Index: redis.conf
===================================================================
--- redis.conf.orig
+++ redis.conf
@@ -2,7 +2,7 @@
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
+daemonize yes
# When run as a daemon, Redis write a pid file in /var/run/redis.pid by default.
# You can specify a custom pid file location here.

View File

@ -2,7 +2,7 @@ Index: utils/redis_init_script
=================================================================== ===================================================================
--- utils/redis_init_script.orig --- utils/redis_init_script.orig
+++ utils/redis_init_script +++ utils/redis_init_script
@@ -1,7 +1,18 @@ @@ -1,28 +1,39 @@
#!/bin/sh #!/bin/sh
+### BEGIN INIT INFO +### BEGIN INIT INFO
+# Provides: redis +# Provides: redis
@ -13,29 +13,56 @@ Index: utils/redis_init_script
+# Default-Start: 3 5 +# Default-Start: 3 5
+# Default-Stop: 0 1 2 6 +# Default-Stop: 0 1 2 6
+# Short-Description: Redis server +# Short-Description: Redis server
+# Description: Starts the Redis server +# Description: Manages the Redis server
+### END INIT INFO +### END INIT INFO
REDISPORT=6379 REDISPORT=6379
-EXEC=/usr/local/bin/redis-server -EXEC=/usr/local/bin/redis-server
+EXEC=/usr/sbin/redis-server +EXEC=/usr/sbin/redis-server
PIDFILE=/var/run/redis_${REDISPORT}.pid -PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf" -CONF="/etc/redis/${REDISPORT}.conf"
@@ -22,7 +33,7 @@ case "$1" in +PIDFILE=/var/run/redis.pid
echo -n "$PIDFILE does not exist, process is not running\n" +CONF=/etc/redis.conf
case "$1" in
start)
if [ -f $PIDFILE ]
then
- echo -n "$PIDFILE exists, process is already running or crashed\n"
+ echo "$PIDFILE exists, process is already running or crashed"
else else
echo -n "Stopping ...\n" - echo -n "Starting Redis server...\n"
+ echo "Starting Redis server..."
$EXEC $CONF
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
- echo -n "$PIDFILE does not exist, process is not running\n"
+ echo "$PIDFILE does not exist, process is not running"
else
- echo -n "Stopping ...\n"
- echo -n "SHUTDOWN\r\n" | nc localhost $REDISPORT & - echo -n "SHUTDOWN\r\n" | nc localhost $REDISPORT &
+ echo -n "SHUTDOWN\r\n" | netcat localhost $REDISPORT & + echo "Stopping ..."
+ echo -e "SHUTDOWN\r" | netcat localhost $REDISPORT &
PID=$(cat $PIDFILE) PID=$(cat $PIDFILE)
while [ -x /proc/${PIDFILE} ] while [ -x /proc/${PIDFILE} ]
do do
@@ -33,4 +44,7 @@ case "$1" in @@ -33,4 +44,15 @@ case "$1" in
echo "Redis stopped" echo "Redis stopped"
fi fi
;; ;;
+ status)
+ if [ ! -f $PIDFILE ]
+ then
+ echo "$PIDFILE does not exist, process is not running"
+ else
+ echo "$PIDFILE does exist, process is running"
+ fi
+ ;;
+ *) + *)
+ echo "Usage: $0 [start|stop]" + echo "Usage: $0 [start|stop|status]"
+ ;; + ;;
esac esac

View File

@ -2,6 +2,7 @@
Sun Mar 7 17:21:53 UTC 2010 - prusnak@suse.cz Sun Mar 7 17:21:53 UTC 2010 - prusnak@suse.cz
- updated to 1.2.4 - updated to 1.2.4
- install config file, more fixes to initscript
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Mar 5 06:12:24 EST 2010 - pzb@suse.de Fri Mar 5 06:12:24 EST 2010 - pzb@suse.de

View File

@ -23,6 +23,7 @@ Group: Productivity/Databases/Servers
Summary: Persistent key-value database with built-in net interface Summary: Persistent key-value database with built-in net interface
Source: http://redis.googlecode.com/files/%{name}-%{version}.tar.gz Source: http://redis.googlecode.com/files/%{name}-%{version}.tar.gz
Patch0: %{name}-initscript.patch Patch0: %{name}-initscript.patch
Patch1: %{name}-conf.patch
# for init script # for init script
Requires: netcat Requires: netcat
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
@ -35,9 +36,17 @@ with atomic operations to push/pop elements, add/remove elements, perform server
side union, intersection, difference between sets, and so forth. Redis supports side union, intersection, difference between sets, and so forth. Redis supports
different kind of sorting abilities. different kind of sorting abilities.
%package doc
Summary: HTML documentation for Redis
Requires: redis = %{version}
%description doc
HTML documentation for Redis
%prep %prep
%setup -q %setup -q
%patch0 %patch0
%patch1
mv doc html mv doc html
%build %build
@ -49,19 +58,23 @@ install -D -m 0755 redis-cli $RPM_BUILD_ROOT%{_bindir}/redis-cli
install -D -m 0755 redis-server $RPM_BUILD_ROOT%{_sbindir}/redis-server install -D -m 0755 redis-server $RPM_BUILD_ROOT%{_sbindir}/redis-server
install -D -m 0755 utils/redis_init_script $RPM_BUILD_ROOT%{_sysconfdir}/init.d/redis install -D -m 0755 utils/redis_init_script $RPM_BUILD_ROOT%{_sysconfdir}/init.d/redis
ln -s %{_sysconfdir}/init.d/redis $RPM_BUILD_ROOT%{_sbindir}/rcredis ln -s %{_sysconfdir}/init.d/redis $RPM_BUILD_ROOT%{_sbindir}/rcredis
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/redis install -D -m 0644 redis.conf $RPM_BUILD_ROOT%{_sysconfdir}/redis.conf
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%doc 00-RELEASENOTES BETATESTING.txt BUGS COPYING Changelog README TODO html/ %doc 00-RELEASENOTES BETATESTING.txt BUGS COPYING Changelog README TODO
%{_bindir}/redis-benchmark %{_bindir}/redis-benchmark
%{_bindir}/redis-cli %{_bindir}/redis-cli
%{_sbindir}/redis-server %{_sbindir}/redis-server
%{_sysconfdir}/init.d/redis %{_sysconfdir}/init.d/redis
%{_sbindir}/rcredis %{_sbindir}/rcredis
%dir %{_sysconfdir}/redis %config(noreplace) %{_sysconfdir}/redis.conf
%files doc
%defattr(-,root,root)
%doc html/
%changelog %changelog