Search
j0ke.net Open Build Service
>
Projects
>
server:monitoring
:
netflow
>
redis
> redis.spec
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File redis.spec of Package redis
# # spec file for package redis # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define _data_dir %{_localstatedir}/lib/%{name} %define _log_dir %{_localstatedir}/log/%{name} %define _conf_dir %{_sysconfdir}/%{name} Name: redis Version: 2.6.17 Release: 1 Summary: Persistent key-value database License: BSD-3-Clause Group: Productivity/Databases/Servers Url: http://redis.io/ Source: http://redis.googlecode.com/files/%{name}-%{version}.tar.gz Source1: %{name}.logrotate Source4: redis.sysconfig # PATCH-FIX-OPENSUSE -- openSUSE-style init script Patch0: %{name}-initscript.patch # PATCH-MISSING-TAG -- See http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines #Patch1: %{name}-conf.patch # PATCH-FIX-UPSTREAM -- Fixed AOF: Server should have been started: Expected '1' to equal or match '0' #Patch2: skip-aof-test.patch #Patch3: redis-endian.patch #Patch4: redis-2.4.15-linenoise-cflags.patch # for make test BuildRequires: tcl Requires: logrotate BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Redis is an advanced key-value store. It is similar to memcached but the dataset 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 #%patch1 #%patch2 -p1 #%patch3 -p0 #%patch4 -p0 %build # pushd deps/linenoise # make CFLAGS="%{optflags}" # popd # pushd deps/hiredis # make CFLAGS="%{optflags}" # popd make %{?_smp_mflags} CFLAGS="%{optflags}" V=1 %install install -d %{buildroot}%{_log_dir} %{buildroot}%{_data_dir} %{buildroot}%{_conf_dir} install -d %{buildroot}%{_log_dir}/default %{buildroot}%{_data_dir}/default install -D -m 0755 src/redis-benchmark %{buildroot}%{_bindir}/redis-benchmark install -m 0755 src/redis-cli %{buildroot}%{_bindir}/redis-cli install -m 0755 src/redis-check-dump %{buildroot}%{_bindir}/redis-check-dump install -m 0755 src/redis-check-aof %{buildroot}%{_bindir}/redis-check-aof install -D -m 0755 src/redis-server %{buildroot}%{_sbindir}/redis-server install -D -m 0640 redis.conf %{buildroot}%{_conf_dir}/default.conf.example ## install -Dp -m 0755 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/redis # # init # install -D -m 0755 utils/redis_init_script %{buildroot}%{_sysconfdir}/init.d/redis ln -s %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name} # # logrotate # install -D -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} %check %ifnarch ppc ppc64 cat <<EOF --------------------------------------------------- The test suite often fails to start a server, with 'child process exited abnormally' -- sometimes it works. --------------------------------------------------- EOF make test && true %endif %pre /usr/sbin/groupadd -r %{name} &>/dev/null || : /usr/sbin/useradd -g %{name} -s /bin/false -r -c "User for Redis key-value store" -d %{_data_dir} %{name} &>/dev/null || : %post %fillup_and_insserv %{name} %restart_on_update %{name} echo "To start the database server, create your configuration" echo "starting from /etc/redis/default.conf.example, place it" echo "in /etc/redis and do: " echo " sudo rcredis start; sudo insserv redis" %preun %stop_on_removal %{name} %postun %restart_on_update %insserv_cleanup %files %defattr(-,root,root,-) %doc 00-RELEASENOTES BUGS CONTRIBUTING COPYING README %config(noreplace) %{_sysconfdir}/logrotate.d/%{name} %{_bindir}/redis-* %{_sbindir}/redis-* %{_sbindir}/rc%{name} %config(noreplace) %{_sysconfdir}/init.d/redis %config(noreplace) %attr(0640, %{name}, %{name}) %{_conf_dir}/default.conf.example %dir %attr(0750, %{name}, %{name}) %{_data_dir} %dir %attr(0750, %{name}, %{name}) %{_data_dir}/default %dir %attr(0750, %{name}, %{name}) %{_log_dir} %dir %attr(0750, %{name}, %{name}) %{_conf_dir} %changelog * Tue Oct 01 2013 malmyzh@gmail.com - Update to 2.6.16 * Tue Nov 20 2012 dimstar@opensuse.org - Fix useradd invocation: -o is useless without -u and newer versions of pwdutils/shadowutils fail on this now. * Thu Nov 8 2012 vjt@openssl.it - Implement a multi-instance setup * Allow for multiple configuration files of named instances under /etc/redis * Each instance has its own data directory under /var/lib/redis/$INSTANCE * Each instance has its own PID file under /var/run/redis/$INSTANCE.pid * Each instance has its own log files under /var/log/redis/$INSTANCE.log * Instances may be started or stopped individually passing a second argument to the init script * Do not create an active default.conf, rather use an .example suffix * Mon Jul 23 2012 mrueckert@suse.de - update to 2.4.15 too many changes see /usr/share/doc/packages/redis/00-RELEASENOTES - added redis-2.4.15-linenoise-cflags.patch make sure we build the dependency with cflags - refreshed redis-endian.patch * Fri Mar 23 2012 dvaleev@suse.com - fix ppc and ppc64 build. disable tests for powerpc for now * Thu Nov 24 2011 saschpe@suse.de - Correct the 'how to get it running' comment in %%post * Thu Nov 24 2011 saschpe@suse.de - Don't use runlevel 4 in init script - Compile with RPM_OPT_FLAGS (PROG env var didn't cut it) - Remove outdated %%clean section, bogus doc package (there are none) and netcat runtime dependency (for init script?) - Set license to SDPX style * Mon Oct 24 2011 asn@cryptomilk.org - Updated to 2.4.1. - Fixed init script. * Tue May 24 2011 prusnak@opensuse.org - updated to 2.2.7 * Fixed bug #543-2 (the issue was reopened with a completely different report) that caused Redis to randomly crash on list push performed against lists with other clients blocked with BLPOP (or variants). (changes from 2.2.6) * Fixed bug #543. If you saw Redis instances crashing on List operations (only happening with a non-default max entry size ziplist setting in redis.conf) it was almost certainly this problem. * Fixed a bug with replication where SLAVEOF NO ONE caused a slave to close the connection with all its slaves. (changes from 2.2.5) * Fixed a crash occurring when loading an AOF containing the SPOP command. * Fri Apr 15 2011 mrueckert@suse.de - update to 2.2.4 * Return value of OBJECT DEBUG against sorted sets fixed, now is "skiplist". - additional changes from 2.2.3 * Fixed issue #503. MONITOR + QUIT (and other combinations) could crash the server. * OBJECT command implemented. See http://redis.io/commands/object * Fixed a problem in redis-cli related to escapes in the form "\x..". * Fixed a minor memory leak in redis-cli * Saved RDB on SIGTERM on archs where it was not working properly. - additional changes from 2.2.2 * AOF file descriptor leak after the first rewrite fixed. * Return value of GETRANGE / SUBSTR is now an empty string if the interval specified is not valid, or the key does not exist. Was a null bulk reply before, but this is against the Redis way. - fix the path to the log file in the conf patch to match the rest of the package - created log dir - changed home dir of the redis user from /var/run/redis to /var/lib/redis. the old home dir wasnt created anyway. * Wed Feb 23 2011 jw@novell.com - updated to 2.2.1 * Mon Feb 21 2011 jw@novell.com - collecting stuff from Virtualization:Cloud:OpenStack, home:jfding:nosql, home:qik * Thu Jan 27 2011 seife+obs@b1-systems.com - package log directory to fix server start * Tue Jan 18 2011 asn@cryptomilk.org - Added logging to /var/log/redis/redis.log. - Added log rotation. * Thu Jan 13 2011 jfding@gmail.com - Upgrade to latest stable 2.0.4 * Mon Jan 10 2011 asn@cryptomilk.org - Fixed creation of the pid file. * Sun Jan 9 2011 asn@cynapses.org - bind only to localhost - reduce the logging level for production - silence the init script a bit * Mon May 17 2010 mrueckert@suse.de - dont run as root * Mon May 17 2010 mrueckert@suse.de - update to version 1.2.6 fixes two critical replication bugs, and a few improvements. - Fixed Issue 207 (http://code.google.com/p/redis/issues/detail?id=207) (broken replication with binary arguments not in the last position with the MSET command or any other command issued with new multi-bulk protocol) - Fixed Issue 174 (http://code.google.com/p/redis/issues/detail?id=174) (temp names collisions producing broken slave-side .rdb files) - Redis-cli backported from Redis master, with interactive mode, line editing via the linenoise library, auth ability, and much more. - ZRANGEBYSCORE now supports WITHSCORES as well (backported from master) - A simplified version of redis-stat (from redis tools) added. - update to version 1.2.5 fixes a replication bug: multiple slaves connecting to the same master could lead to random crashes or corruptions. - use PROF parameter to pass in optflags * Sun Mar 7 2010 prusnak@suse.cz - updated to 1.2.4 - install config file, more fixes to initscript * Fri Mar 5 2010 pzb@suse.de - Add BuildRoot to spec file to enable builds on old distros - Patch initscript to use netcat instead of nc i (same command, different package) - Update to Redis 1.2.3 - The example init script was broken for a typo. Fixed. - Support for large files in 32 bit targets, very important when saving very large databases or when using the Append Only File (when Redis was compiled for 64 bit target there was no problem). - Now 'make 32bit' uses -m32 instead of Apple-specific -arch - Stack trace fixed for some Linux targets * Thu Jan 21 2010 prusnak@suse.cz - created package