Compare commits

...

6 Commits
master ... el5

Author SHA1 Message Date
Silas Sewell b663a4f815 Update to redis 2.4.13 2012-05-19 08:12:13 -04:00
Silas Sewell f248eb31c0 Update to redis 2.4.10 2012-04-01 21:35:52 -04:00
Silas Sewell 4e49f2e463 Disable ppc 2012-02-24 23:36:53 -05:00
Silas Sewell 2c08c76788 Update to redis 2.4.8 2012-02-24 23:30:04 -05:00
Silas Sewell 1d7bf05376 Use legacy macro for redis home directory in el5 2010-11-02 10:11:40 -04:00
Silas Sewell 4724f71dee Initial commit 2010-10-19 11:57:11 -04:00
6 changed files with 291 additions and 0 deletions

4
.gitignore vendored
View File

@ -0,0 +1,4 @@
/redis-2.0.3.tar.gz
/redis-2.4.8.tar.gz
/redis-2.4.10.tar.gz
/redis-2.4.13.tar.gz

View File

@ -0,0 +1,50 @@
diff -up redis-2.4.8/redis.conf.orig redis-2.4.8/redis.conf
--- redis-2.4.8/redis.conf.orig 2012-02-24 21:59:55.606998781 -0500
+++ redis-2.4.8/redis.conf 2012-02-24 22:02:32.598539907 -0500
@@ -14,11 +14,11 @@
# 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 running daemonized, Redis writes a pid file in /var/run/redis.pid by
# default. You can specify a custom pid file location here.
-pidfile /var/run/redis.pid
+pidfile /var/run/redis/redis.pid
# Accept connections on the specified port, default is 6379.
# If port 0 is specified Redis will not listen on a TCP socket.
@@ -27,7 +27,7 @@ port 6379
# If you want you can bind a single interface, if the bind option is not
# specified all the interfaces will listen for incoming connections.
#
-# bind 127.0.0.1
+bind 127.0.0.1
# Specify the path for the unix socket that will be used to listen for
# incoming connections. There is no default, so Redis will not listen
@@ -45,12 +45,12 @@ timeout 0
# verbose (many rarely useful info, but not a mess like the debug level)
# notice (moderately verbose, what you want in production probably)
# warning (only very important / critical messages are logged)
-loglevel verbose
+loglevel notice
# Specify the log file name. Also 'stdout' can be used to force
# Redis to log on the standard output. Note that if you use standard
# output for logging but daemonize, logs will be sent to /dev/null
-logfile stdout
+logfile /var/log/redis/redis.log
# To enable logging to the system logger, just set 'syslog-enabled' to yes,
# and optionally update the other syslog parameters to suit your needs.
@@ -104,7 +104,7 @@ dbfilename dump.rdb
# Also the Append Only File will be created inside this directory.
#
# Note that you must specify a directory here, not a file name.
-dir ./
+dir /var/lib/redis/
################################# REPLICATION #################################

88
redis.init Normal file
View File

@ -0,0 +1,88 @@
#!/bin/sh
#
# redis init file for starting up the redis daemon
#
# chkconfig: - 20 80
# description: Starts and stops the redis daemon.
# Source function library.
. /etc/rc.d/init.d/functions
name="redis-server"
exec="/usr/sbin/$name"
pidfile="/var/run/redis/redis.pid"
REDIS_CONFIG="/etc/redis.conf"
[ -e /etc/sysconfig/redis ] && . /etc/sysconfig/redis
lockfile=/var/lock/subsys/redis
start() {
[ -f $REDIS_CONFIG ] || exit 6
[ -x $exec ] || exit 5
echo -n $"Starting $name: "
daemon --user ${REDIS_USER-redis} "$exec $REDIS_CONFIG"
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $name: "
killproc -p $pidfile $name
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
stop
start
}
reload() {
false
}
rh_status() {
status -p $pidfile $name
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart}"
exit 2
esac
exit $?

9
redis.logrotate Normal file
View File

@ -0,0 +1,9 @@
/var/log/redis/redis.log {
weekly
rotate 10
copytruncate
delaycompress
compress
notifempty
missingok
}

136
redis.spec Normal file
View File

@ -0,0 +1,136 @@
# Check for status of man pages
# http://code.google.com/p/redis/issues/detail?id=202
Name: redis
Version: 2.4.13
Release: 1%{?dist}
Summary: A persistent key-value database
Group: Applications/Databases
License: BSD
URL: http://redis.io
Source0: http://redis.googlecode.com/files/%{name}-%{version}.tar.gz
Source1: %{name}.logrotate
Source2: %{name}.init
# Update configuration
Patch0: %{name}-2.4.8-redis.conf.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ExcludeArch: ppc ppc64
Requires: logrotate
Requires(post): chkconfig
Requires(postun): initscripts
Requires(pre): shadow-utils
Requires(preun): chkconfig
Requires(preun): initscripts
%description
Redis is an advanced key-value store. It is similar to memcached but the data
set is not volatile, and values can be strings, exactly like in memcached, but
also lists, sets, and ordered sets. All this data types can be manipulated with
atomic operations to push/pop elements, add/remove elements, perform server side
union, intersection, difference between sets, and so forth. Redis supports
different kind of sorting abilities.
%prep
%setup -q
%patch0 -p1
%build
make %{?_smp_mflags} \
DEBUG='' \
CFLAGS='%{optflags}' \
V=1 \
all
%install
rm -fr %{buildroot}
make install PREFIX=%{buildroot}%{_prefix}
# Install misc other
install -p -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
install -p -D -m 755 %{SOURCE2} %{buildroot}%{_initrddir}/%{name}
install -p -D -m 644 %{name}.conf %{buildroot}%{_sysconfdir}/%{name}.conf
install -d -m 755 %{buildroot}%{_localstatedir}/lib/%{name}
install -d -m 755 %{buildroot}%{_localstatedir}/log/%{name}
install -d -m 755 %{buildroot}%{_localstatedir}/run/%{name}
# Fix non-standard-executable-perm error
chmod 755 %{buildroot}%{_bindir}/%{name}-*
# Ensure redis-server location doesn't change
mkdir -p %{buildroot}%{_sbindir}
mv %{buildroot}%{_bindir}/%{name}-server %{buildroot}%{_sbindir}/%{name}-server
%clean
rm -fr %{buildroot}
%post
/sbin/chkconfig --add redis
%pre
getent group redis &> /dev/null || groupadd -r redis &> /dev/null
getent passwd redis &> /dev/null || \
useradd -r -g redis -d %{_localstatedir}/lib/redis -s /sbin/nologin \
-c 'Redis Server' redis &> /dev/null
exit 0
%preun
if [ $1 = 0 ]; then
/sbin/service redis stop &> /dev/null
/sbin/chkconfig --del redis &> /dev/null
fi
%files
%defattr(-,root,root,-)
%doc 00-RELEASENOTES BUGS CONTRIBUTING COPYING README TODO
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%config(noreplace) %{_sysconfdir}/%{name}.conf
%dir %attr(0755, redis, root) %{_localstatedir}/lib/%{name}
%dir %attr(0755, redis, root) %{_localstatedir}/log/%{name}
%dir %attr(0755, redis, root) %{_localstatedir}/run/%{name}
%{_bindir}/%{name}-*
%{_sbindir}/%{name}-*
%{_initrddir}/%{name}
%changelog
* Sat May 19 2012 Silas Sewell <silas@sewell.org> - 2.4.13-1
- Update to redis 2.4.13
* Sat Mar 31 2012 Silas Sewell <silas@sewell.org> - 2.4.10-1
- Update to redis 2.4.10
* Fri Feb 24 2012 Silas Sewell <silas@sewell.org> - 2.4.8-2
- Disable ppc for now
* Fri Feb 24 2012 Silas Sewell <silas@sewell.org> - 2.4.8-1
- Update to redis 2.4.8
* Tue Nov 02 2010 Silas Sewell <silas@sewell.ch> - 2.0.3-2
- Use legacy macro for redis home directory in el5
* Tue Oct 19 2010 Silas Sewell <silas@sewell.ch> - 2.0.3-1
- Update to redis 2.0.3
* Fri Oct 08 2010 Silas Sewell <silas@sewell.ch> - 2.0.2-1
- Update to redis 2.0.2
- Disable checks section for el5
* Fri Sep 11 2010 Silas Sewell <silas@sewell.ch> - 2.0.1-1
- Update to redis 2.0.1
* Sat Sep 04 2010 Silas Sewell <silas@sewell.ch> - 2.0.0-1
- Update to redis 2.0.0
* Thu Sep 02 2010 Silas Sewell <silas@sewell.ch> - 1.2.6-3
- Add Fedora build flags
- Send all scriplet output to /dev/null
- Remove debugging flags
- Add redis.conf check to init script
* Mon Aug 16 2010 Silas Sewell <silas@sewell.ch> - 1.2.6-2
- Don't compress man pages
- Use patch to fix redis.conf
* Tue Jul 06 2010 Silas Sewell <silas@sewell.ch> - 1.2.6-1
- Initial package

View File

@ -0,0 +1,4 @@
7799de79f36ebdb73bcb8f09816d1ac3 redis-2.0.3.tar.gz
ac776d25f238b142d3d526cfcdc621ab redis-2.4.8.tar.gz
71938de99cbb4fdefd74d7571831fa28 redis-2.4.10.tar.gz
f8a160f8a6fe7d7e8ebb4c23ff583d71 redis-2.4.13.tar.gz