Sync from SUSE:SLFO:Main redis revision a7a290807b4521ee06e254bb40ed5d76

This commit is contained in:
Adrian Schröter 2024-05-04 00:03:05 +02:00
commit dd301ba2b5
17 changed files with 3082 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

84
README.SUSE Normal file
View File

@ -0,0 +1,84 @@
README.SUSE
-------------
Redis Server
==============
1. cp -a /etc/redis/default.conf.example /etc/redis/instancename.conf
We use the "cp -a" here, so that our permissions are preserved.
In case you copied the file with out the "-a"
chown root:redis /etc/redis/instancename.conf
chmod u=rw,g=r,o= /etc/redis/instancename.conf
2. change at least pidfile, logfile and dir setting
# the pid file *has* to match your config filename without the ".conf"
pidfile /run/redis/instancename.pid
logfile /var/log/redis/instancename.log
dir /var/lib/redis/instancename/
If you want to run more than one instance you also have to change the
socket path and/or the ip:port combination.
e.g. /run/redis/instancename.sock
Also make sure if you copy configurations from somewhere, that "daemonize"
should be set to "no".
3. create the database dir:
$ install -d -o redis -g redis -m 0750 /var/lib/redis/instancename/
4. systemctl start redis@instancename
5. systemctl enable redis@instancename
6. To stop/restart all instances at the same time use:
systemctl restart redis.target
systemctl stop redis.target
Redis Sentinel
================
1. cp -a /etc/redis/sentinel.conf.example /etc/redis/sentinel-instancename.conf
We use the "cp -a" here, so that our permissions are preserved.
In case you copied the file with out the "-a"
chown root:redis /etc/redis/sentinel-instancename.conf
chmod u=rw,g=rw,o= /etc/redis/sentinel-instancename.conf
Please note that the sentinel config needs write permissions for the group.
The chmod line differs from the line for the normal redis server.
2. change at least pidfile, logfile setting
# the pid file *has* to match your config filename without the ".conf"
pidfile /run/redis/instancename.pid
logfile /var/log/redis/instancename.log
If you want to run more than one instance you also have to change the
socket path and/or the ip:port combination.
e.g. /run/redis/instancename.sock
Also make sure if you copy configurations from somewhere, that "daemonize"
should be set to "no".
4. systemctl start redis-sentinel@instancename
5. systemctl enable redis-sentinel@instancename
6. To stop/restart all instances at the same time use:
systemctl restart redis-sentinel.target
systemctl stop redis-sentinel.target
Integration with apache when using unix domain sockets
=========================================================
If you plan to use redis in combination with apache, then you should
add 'redis' to apache group and set 'unixsocketperm 770':
$ usermod -a -G redis wwwrun
$ systemctl restart apache2
then apache is able to connect to redis socket

14
ppc-atomic.patch Normal file
View File

@ -0,0 +1,14 @@
diff -ur redis-6.2.3.orig/src/Makefile redis-6.2.3/src/Makefile
--- redis-6.2.3.orig/src/Makefile 2021-05-03 21:57:00.000000000 +0200
+++ redis-6.2.3/src/Makefile 2021-05-04 08:48:20.064568420 +0200
@@ -96,6 +96,10 @@
# Linux ARM32 needs -latomic at linking time
ifneq (,$(findstring armv,$(uname_M)))
FINAL_LIBS+=-latomic
+else
+ifneq (,$(findstring ppc,$(uname_M)))
+ FINAL_LIBS+=-latomic
+endif
endif
ifeq ($(uname_S),SunOS)

BIN
redis-7.2.4.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

77
redis-conf.patch Normal file
View File

@ -0,0 +1,77 @@
diff --git a/redis.conf b/redis.conf
index 97f077b0d..6ba6b290e 100644
--- a/redis.conf
+++ b/redis.conf
@@ -306,7 +306,7 @@ tcp-keepalive 300
# 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.
# When Redis is supervised by upstart or systemd, this parameter has no impact.
-daemonize no
+daemonize yes
# If you run Redis from upstart or systemd, Redis can interact with your
# supervision tree. Options:
@@ -324,7 +324,7 @@ daemonize no
# The default is "no". To run under upstart/systemd, you can simply uncomment
# the line below:
#
-# supervised auto
+supervised systemd
# If a pid file is specified, Redis writes it where specified at startup
# and removes it at exit.
@@ -338,7 +338,7 @@ daemonize no
#
# Note that on modern Linux systems "/run/redis.pid" is more conforming
# and should be used instead.
-pidfile /var/run/redis_6379.pid
+pidfile /run/redis/default.pid
# Specify the server verbosity level.
# This can be one of:
@@ -352,7 +352,8 @@ loglevel notice
# Specify the log file name. Also the empty string 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 ""
+# logfile ""
+logfile /var/log/redis/default.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.
@@ -507,7 +508,7 @@ rdb-del-sync-files no
# The Append Only File will also be created inside this directory.
#
# Note that you must specify a directory here, not a file name.
-dir ./
+dir /var/lib/redis/default/
################################# REPLICATION #################################
diff --git a/sentinel.conf b/sentinel.conf
index b7b3604f0..8262608ad 100644
--- a/sentinel.conf
+++ b/sentinel.conf
@@ -13,11 +13,12 @@ port 26379
# Note that Redis will write a pid file in /var/run/redis-sentinel.pid when
# daemonized.
daemonize no
+supervised systemd
# When running daemonized, Redis Sentinel writes a pid file in
# /var/run/redis-sentinel.pid by default. You can specify a custom pid file
# location here.
-pidfile /var/run/redis-sentinel.pid
+pidfile /run/redis/sentinel-default.pid
# Specify the server verbosity level.
# This can be one of:
@@ -31,7 +32,7 @@ loglevel notice
# Specify the log file name. Also the empty string can be used to force
# Sentinel 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 ""
+logfile /var/log/redis/sentinel-default.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.

3
redis-sentinel.target Normal file
View File

@ -0,0 +1,3 @@
[Unit]
Description=Redis Sentinel target allowing to start/stop all redis-sentinel@.service instances at once

31
redis-sentinel@.service Normal file
View File

@ -0,0 +1,31 @@
[Unit]
Description=Redis Sentinel instance: %i
After=network.target
PartOf=redis-sentinel.target
[Service]
Type=notify
User=redis
Group=redis
PrivateTmp=true
# added automatically, for details please see
# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
ProtectSystem=full
ProtectHome=true
PrivateDevices=true
ProtectHostname=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectKernelLogs=true
ProtectControlGroups=true
RestrictRealtime=true
# end of automatic additions
ReadWritePaths=/etc/redis
PIDFile=/run/redis/sentinel-%i.pid
ExecStart=/usr/sbin/redis-sentinel /etc/redis/sentinel-%i.conf
LimitNOFILE=10240
Restart=on-failure
[Install]
WantedBy=multi-user.target redis.target

2
redis-user.conf Normal file
View File

@ -0,0 +1,2 @@
# Type Name ID GECOS [HOME]
u redis - "User for redis key-value store" /var/lib/redis

2406
redis.changes Normal file

File diff suppressed because it is too large Load Diff

174
redis.hashes Normal file
View File

@ -0,0 +1,174 @@
# Redis hashes file.
#
# This file contains SHA1 or SHA256 digests of official tarballs released by
# the Redis project.
# You can use the file in order to verify that the download file is the original
# one created by the Redis team, and not a modified or corrupted file.
#
# This file is located at Github in the following repository:
# https://github.com/antirez/redis-hashes
#
# The file format is the following:
#
# hash <filename> <algo> <digest> <url>
#
# Filename is the tarball name. Algo is the algorithm used, it is "sha1" up
# to a certain release, "sha256" for the following releases.
# Digest is the output of the hash function, and URL the download URL for the
# specified file.
hash redis-2.8.0-rc5.tar.gz sha1 bd27589b71a0b406b982485051f32b7c40c9d2c1 http://download.redis.io/releases/redis-2.8.0-rc5.tar.gz
hash redis-2.8.0-rc6.tar.gz sha1 d13db76145a9844e2a3302f561e907056f9e21a0 http://download.redis.io/releases/redis-2.8.0-rc6.tar.gz
hash redis-2.8.0.tar.gz sha1 41fd86128995f06502954dd6d6269c22f5e389f7 http://download.redis.io/releases/redis-2.8.0.tar.gz
hash redis-2.8.1.tar.gz sha1 1bb493318ff6c0c87334eb95640b89a16e4357d8 http://download.redis.io/releases/redis-2.8.1.tar.gz
hash redis-2.8.2.tar.gz sha1 3be038b9d095ce3dece7918aae810d14fe770400 http://download.redis.io/releases/redis-2.8.2.tar.gz
hash redis-2.6.17.tar.gz sha1 b5423e1c423d502074cbd0b21bd4e820409d2003 http://download.redis.io/releases/redis-2.6.17.tar.gz
hash redis-2.8.3.tar.gz sha1 a751371eeed5f5f02965eb34d989c1963dd8d8c7 http://download.redis.io/releases/redis-2.8.3.tar.gz
hash redis-2.8.4.tar.gz sha1 79b156cc9d8bff5a022fdc6d28d5c42999ddcb4f http://download.redis.io/releases/redis-2.8.4.tar.gz
hash redis-2.8.5.tar.gz sha1 f0eb48609ff66ead3c7f06bbe8a8dd1aa7341b73 http://download.redis.io/releases/redis-2.8.5.tar.gz
hash redis-2.8.6.tar.gz sha1 8680046580c75987961241f2e1e417c242b91a49 http://download.redis.io/releases/redis-2.8.6.tar.gz
hash redis-2.8.7.tar.gz sha1 acc369093ec74223e6da207921595187f7e64998 http://download.redis.io/releases/redis-2.8.7.tar.gz
hash redis-2.8.8.tar.gz sha1 aa811f399db58c92c8ec5e48271d307e9ab8eb81 http://download.redis.io/releases/redis-2.8.8.tar.gz
hash redis-2.8.9.tar.gz sha1 003ccdc175816e0a751919cf508f1318e54aac1e http://download.redis.io/releases/redis-2.8.9.tar.gz
hash redis-2.8.10.tar.gz sha1 339ddf82e01a16ad912d1c1d59b02f3fab58d9d9 http://download.redis.io/releases/redis-2.8.10.tar.gz
hash redis-2.8.11.tar.gz sha1 3e3a4603781514f239f040287d3ef1097eb02a76 http://download.redis.io/releases/redis-2.8.11.tar.gz
hash redis-2.8.12.tar.gz sha1 56c86a4f9eccaf29f934433c7c67a175e404b2f6 http://download.redis.io/releases/redis-2.8.12.tar.gz
hash redis-2.8.13.tar.gz sha1 a72925a35849eb2d38a1ea076a3db82072d4ee43 http://download.redis.io/releases/redis-2.8.13.tar.gz
hash redis-2.8.14.tar.gz sha1 fd0edc045f2b53057d7f6ab38e2fe99086c87e8d http://download.redis.io/releases/redis-2.8.14.tar.gz
hash redis-2.8.15.tar.gz sha1 afc0d753cea68a26038775df2dea75a76e3d0e1d http://download.redis.io/releases/redis-2.8.15.tar.gz
hash redis-2.8.16.tar.gz sha1 198045c8291dd832788ac8a17d2e565752499942 http://download.redis.io/releases/redis-2.8.16.tar.gz
hash redis-2.8.17.tar.gz sha1 913479f9d2a283bfaadd1444e17e7bab560e5d1e http://download.redis.io/releases/redis-2.8.17.tar.gz
hash redis-3.0.0-rc1.tar.gz sha1 f0934db86791e32053f8b21ddec5965793edff19 http://download.redis.io/releases/redis-3.0.0-rc1.tar.gz
hash redis-2.8.18.tar.gz sha1 129629262fea2bc60daa542f52457e65e6aa7fd5 http://download.redis.io/releases/redis-2.8.18.tar.gz
hash redis-2.8.19.tar.gz sha1 3e362f4770ac2fdbdce58a5aa951c1967e0facc8 http://download.redis.io/releases/redis-2.8.19.tar.gz
hash redis-3.0.0.tar.gz sha1 c75fd32900187a7c9f9d07c412ea3b3315691c65 http://download.redis.io/releases/redis-3.0.0.tar.gz
hash redis-2.8.20.tar.gz sha1 45f134113fb3d75b8c37f7968e46565a70800091 http://download.redis.io/releases/redis-2.8.20.tar.gz
hash redis-3.0.1.tar.gz sha1 fe1d06599042bfe6a0e738542f302ce9533dde88 http://download.redis.io/releases/redis-3.0.1.tar.gz
hash redis-2.8.21.tar.gz sha1 52f619d3d301fc7ae498a1d4cb4d44ecebc5b0f9 http://download.redis.io/releases/redis-2.8.21.tar.gz
hash redis-3.0.2.tar.gz sha1 a38755fe9a669896f7c5d8cd3ebbf76d59712002 http://download.redis.io/releases/redis-3.0.2.tar.gz
hash redis-3.0.3.tar.gz sha1 0e2d7707327986ae652df717059354b358b83358 http://download.redis.io/releases/redis-3.0.3.tar.gz
hash redis-3.0.4.tar.gz sha1 cccc58b2b8643930840870f17280fcae57ed7675 http://download.redis.io/releases/redis-3.0.4.tar.gz
hash redis-2.8.22.tar.gz sha1 78a70b32cdd3a4ccc58880d1821fb828d091bb36 http://download.redis.io/releases/redis-2.8.22.tar.gz
hash redis-2.8.23.tar.gz sha1 828fc5d4011e6141fabb2ad6ebc193e8f0d08cfa http://download.redis.io/releases/redis-2.8.23.tar.gz
hash redis-3.0.5.tar.gz sha1 ad3ee178c42bfcfd310c72bbddffbbe35db9b4a6 http://download.redis.io/releases/redis-3.0.5.tar.gz
hash redis-3.0.6.tar.gz sha1 4b1c7b1201984bca8f7f9c6c58862f6928cf0a25 http://download.redis.io/releases/redis-3.0.6.tar.gz
hash redis-3.0.7.tar.gz sha1 e56b4b7e033ae8dbf311f9191cf6fdf3ae974d1c http://download.redis.io/releases/redis-3.0.7.tar.gz
hash redis-3.2.0.tar.gz sha1 0c1820931094369c8cc19fc1be62f598bc5961ca http://download.redis.io/releases/redis-3.2.0.tar.gz
hash redis-3.2.1.tar.gz sha1 26c0fc282369121b4e278523fce122910b65fbbf http://download.redis.io/releases/redis-3.2.1.tar.gz
hash redis-3.2.2.tar.gz sha1 3141be9757532139f445bd5f6f4fae293bc33d27 http://download.redis.io/releases/redis-3.2.2.tar.gz
hash redis-3.2.3.tar.gz sha1 92d6d93ef2efc91e595c8bf578bf72baff397507 http://download.redis.io/releases/redis-3.2.3.tar.gz
hash redis-3.2.4.tar.gz sha1 f0fe685cbfdb8c2d8c74613ad8a5a5f33fba40c9 http://download.redis.io/releases/redis-3.2.4.tar.gz
hash redis-3.2.5.tar.gz sha1 6f6333db6111badaa74519d743589ac4635eba7a http://download.redis.io/releases/redis-3.2.5.tar.gz
hash redis-3.2.6.tar.gz sha1 0c7bc5c751bdbc6fabed178db9cdbdd948915d1b http://download.redis.io/releases/redis-3.2.6.tar.gz
hash redis-3.2.7.tar.gz sha1 6889af053020cd72ebb16805ead0ce9b3a69a9ef http://download.redis.io/releases/redis-3.2.7.tar.gz
hash redis-3.2.8.tar.gz sha1 6780d1abb66f33a97aad0edbe020403d0a15b67f http://download.redis.io/releases/redis-3.2.8.tar.gz
hash redis-3.2.9.tar.gz sha256 6eaacfa983b287e440d0839ead20c2231749d5d6b78bbe0e0ffa3a890c59ff26 http://download.redis.io/releases/redis-3.2.9.tar.gz
hash redis-4.0.0.tar.gz sha256 d539ae309295721d5c3ed7298939645b6f86ab5d25fdf2a0352ab575c159df2d http://download.redis.io/releases/redis-4.0.0.tar.gz
hash redis-4.0.1.tar.gz sha256 2049cd6ae9167f258705081a6ef23bb80b7eff9ff3d0d7481e89510f27457591 http://download.redis.io/releases/redis-4.0.1.tar.gz
hash redis-3.2.10.tar.gz sha256 411c604a716104f7f5a326abfad32de9cea10f15f987bec45cf86f315e9e63a0 http://download.redis.io/releases/redis-3.2.10.tar.gz
hash redis-4.0.2.tar.gz sha256 b1a0915dbc91b979d06df1977fe594c3fa9b189f1f3d38743a2948c9f7634813 http://download.redis.io/releases/redis-4.0.2.tar.gz
hash redis-3.2.11.tar.gz sha256 31ae927cab09f90c9ca5954aab7aeecc3bb4da6087d3d12ba0a929ceb54081b5 http://download.redis.io/releases/redis-3.2.11.tar.gz
hash redis-4.0.3.tar.gz sha256 412f2634e55fe19e8826fae47935a8efe1e60ba2a48a8953c65e7a6caa459e41 http://download.redis.io/releases/redis-4.0.3.tar.gz
hash redis-4.0.4.tar.gz sha256 35768145335e874b1b810e23494ad3daa6f442c3dc1d7e3784992ba50799c0cd http://download.redis.io/releases/redis-4.0.4.tar.gz
hash redis-4.0.5.tar.gz sha256 d52bf355b96e20905916482962235e0442634c849934adb034f85362b31ed978 http://download.redis.io/releases/redis-4.0.5.tar.gz
hash redis-4.0.6.tar.gz sha256 769b5d69ec237c3e0481a262ff5306ce30db9b5c8ceb14d1023491ca7be5f6fa http://download.redis.io/releases/redis-4.0.6.tar.gz
hash redis-4.0.7.tar.gz sha256 1bba546d44fb40e1fd8be1a15e1a9cc6484bceeea0bbd52919eebc656661ecd1 http://download.redis.io/releases/redis-4.0.7.tar.gz
hash redis-4.0.8.tar.gz sha256 ff0c38b8c156319249fec61e5018cf5b5fe63a65b61690bec798f4c998c232ad http://download.redis.io/releases/redis-4.0.8.tar.gz
hash redis-4.0.9.tar.gz sha256 df4f73bc318e2f9ffb2d169a922dec57ec7c73dd07bccf875695dbeecd5ec510 http://download.redis.io/releases/redis-4.0.9.tar.gz
hash redis-3.2.12.tar.gz sha256 98c4254ae1be4e452aa7884245471501c9aa657993e0318d88f048093e7f88fd http://download.redis.io/releases/redis-3.2.12.tar.gz
hash redis-4.0.10.tar.gz sha256 1db67435a704f8d18aec9b9637b373c34aa233d65b6e174bdac4c1b161f38ca4 http://download.redis.io/releases/redis-4.0.10.tar.gz
hash redis-5.0-rc4.tar.gz sha256 bfc7a27d3ba990e154e5b56484061f01962d40b7c77b520ed7a940914b267cec http://download.redis.io/releases/redis-5.0-rc4.tar.gz
hash redis-4.0.11.tar.gz sha256 fc53e73ae7586bcdacb4b63875d1ff04f68c5474c1ddeda78f00e5ae2eed1bbb http://download.redis.io/releases/redis-4.0.11.tar.gz
hash 5.0-rc5.tar.gz sha256 d070c8a3514e40da5cef9ec26dfd594df0468c203c36398ef2d359a32502b548 https://github.com/antirez/redis/archive/5.0-rc5.tar.gz
hash redis-5.0-rc6.tar.gz sha256 5e5ffc9184021178c1d89375c5132a2b872a9f77569e8c08ccbdf322acff7ace http://download.redis.io/releases/redis-5.0-rc6.tar.gz
hash redis-5.0.0.tar.gz sha256 70c98b2d0640b2b73c9d8adb4df63bcb62bad34b788fe46d1634b6cf87dc99a4 http://download.redis.io/releases/redis-5.0.0.tar.gz
hash redis-5.0.1.tar.gz sha256 82a67c0eec97f9ad379384c30ec391b269e17a3e4596393c808f02db7595abcb http://download.redis.io/releases/redis-5.0.1.tar.gz
hash redis-5.0.2.tar.gz sha256 937dde6164001c083e87316aa20dad2f8542af089dfcb1cbb64f9c8300cd00ed http://download.redis.io/releases/redis-5.0.2.tar.gz
hash redis-4.0.12.tar.gz sha256 6447259d2eed426a949c9c13f8fdb2d91fb66d9dc915dd50db13b87f46d93162 http://download.redis.io/releases/redis-4.0.12.tar.gz
hash redis-5.0.3.tar.gz sha256 e290b4ddf817b26254a74d5d564095b11f9cd20d8f165459efa53eb63cd93e02 http://download.redis.io/releases/redis-5.0.3.tar.gz
hash redis-4.0.13.tar.gz sha256 17d955227966dcd68590be6139e5fe7f2d19fc4fb7334248a904ea9cdd30c1d4 http://download.redis.io/releases/redis-4.0.13.tar.gz
hash redis-5.0.4.tar.gz sha256 3ce9ceff5a23f60913e1573f6dfcd4aa53b42d4a2789e28fa53ec2bd28c987dd http://download.redis.io/releases/redis-5.0.4.tar.gz
hash redis-4.0.14.tar.gz sha256 1e1e18420a86cfb285933123b04a82e1ebda20bfb0a289472745a087587e93a7 http://download.redis.io/releases/redis-4.0.14.tar.gz
hash redis-3.2.13.tar.gz sha256 862979c9853fdb1d275d9eb9077f34621596fec1843e3e7f2e2f09ce09a387ba http://download.redis.io/releases/redis-3.2.13.tar.gz
hash redis-5.0.5.tar.gz sha256 2139009799d21d8ff94fc40b7f36ac46699b9e1254086299f8d3b223ca54a375 http://download.redis.io/releases/redis-5.0.5.tar.gz
hash redis-5.0.6.tar.gz sha256 6624841267e142c5d5d5be292d705f8fb6070677687c5aad1645421a936d22b3 http://download.redis.io/releases/redis-5.0.6.tar.gz
hash redis-5.0.7.tar.gz sha256 61db74eabf6801f057fd24b590232f2f337d422280fd19486eca03be87d3a82b http://download.redis.io/releases/redis-5.0.7.tar.gz
hash redis-6.0-rc1.tar.gz sha256 3e11d148de0b3c3e573a31b6abb3cba56812aefe3f9a917a445768cc510b5fe3 http://download.redis.io/releases/redis-6.0-rc1.tar.gz
hash redis-6.0-rc2.tar.gz sha256 60dc45d8ab41de59a12d1163f7f79911f289f4d73b5066e027942eddec259a88 http://download.redis.io/releases/redis-6.0-rc2.tar.gz
hash redis-5.0.8.tar.gz sha256 f3c7eac42f433326a8d981b50dba0169fdfaf46abb23fcda2f933a7552ee4ed7 http://download.redis.io/releases/redis-5.0.8.tar.gz
hash redis-6.0-rc3.tar.gz sha256 aa5916b7ee9a7098032cb875f3f0bfb4405f6e2533d7f6284dfbca21f55fc289 http://download.redis.io/releases/redis-6.0-rc3.tar.gz
hash redis-5.0.8.tar.gz sha256 f3c7eac42f433326a8d981b50dba0169fdfaf46abb23fcda2f933a7552ee4ed7 http://download.redis.io/releases/redis-5.0.8.tar.gz
hash redis-6.0-rc4.tar.gz sha256 7fdc37fd9451571e90186115a67d7595d49206f90bd7c2b7505b197fd6544358 http://download.redis.io/releases/redis-6.0-rc4.tar.gz
hash redis-5.0.9.tar.gz sha256 53d0ae164cd33536c3d4b720ae9a128ea6166ebf04ff1add3b85f1242090cb85 http://download.redis.io/releases/redis-5.0.9.tar.gz
hash redis-6.0.0.tar.gz sha256 16d13ec1c3255206deb4818ed444dca6dda1482b551736f0033253c211b788fc http://download.redis.io/releases/redis-6.0.0.tar.gz
hash redis-6.0.1.tar.gz sha256 b8756e430479edc162ba9c44dc89ac394316cd482f2dc6b91bcd5fe12593f273 http://download.redis.io/releases/redis-6.0.1.tar.gz
hash redis-6.0.2.tar.gz sha256 9c37cd4228a57e82e7037094751c63349302b0b86c5e30b778a63a802dfd0109 http://download.redis.io/releases/redis-6.0.2.tar.gz
hash redis-6.0.3.tar.gz sha256 bca46dce81fe92f7b2de4cf8ae41fbc4b94fbd5674def7f12c87e7f9165cbb3a http://download.redis.io/releases/redis-6.0.3.tar.gz
hash redis-6.0.4.tar.gz sha256 3337005a1e0c3aa293c87c313467ea8ac11984921fab08807998ba765c9943de http://download.redis.io/releases/redis-6.0.4.tar.gz
hash redis-6.0.5.tar.gz sha256 42cf86a114d2a451b898fcda96acd4d01062a7dbaaad2801d9164a36f898f596 http://download.redis.io/releases/redis-6.0.5.tar.gz
hash redis-6.0.6.tar.gz sha256 12ad49b163af5ef39466e8d2f7d212a58172116e5b441eebecb4e6ca22363d94 http://download.redis.io/releases/redis-6.0.6.tar.gz
hash redis-6.0.7.tar.gz sha256 c2aaa1a4c7e72c70adedf976fdd5e1d34d395989283dab9d7840e0a304bb2393 http://download.redis.io/releases/redis-6.0.7.tar.gz
hash redis-6.0.8.tar.gz sha256 04fa1fddc39bd1aecb6739dd5dd73858a3515b427acd1e2947a66dadce868d68 http://download.redis.io/releases/redis-6.0.8.tar.gz
hash redis-5.0.10.tar.gz sha256 e30a5e7d1593a715cdda2a82deb90190816d06c9d1dc1ef5b36874878c683382 http://download.redis.io/releases/redis-5.0.10.tar.gz
hash redis-6.0.9.tar.gz sha256 dc2bdcf81c620e9f09cfd12e85d3bc631c897b2db7a55218fd8a65eaa37f86dd http://download.redis.io/releases/redis-6.0.9.tar.gz
hash redis-6.2-rc1.tar.gz sha256 92fc13f57b31cb6425c590b9c6b0bf611450f66b18fe92b9d5893b3a9760c438 http://download.redis.io/releases/redis-6.2-rc1.tar.gz
hash redis-6.0.10.tar.gz sha256 79bbb894f9dceb33ca699ee3ca4a4e1228be7fb5547aeb2f99d921e86c1285bd http://download.redis.io/releases/redis-6.0.10.tar.gz
hash redis-6.2-rc2.tar.gz sha256 7153bbbd751f61ea70e649e0d19be6e7e78da9864527d46d10519e9a03cb0924 http://download.redis.io/releases/redis-6.2-rc2.tar.gz
hash redis-6.2-rc3.tar.gz sha256 f35bba2af553fb58b2068ee581f316cefe0c00041e48fc944bd962e65777851c http://download.redis.io/releases/redis-6.2-rc3.tar.gz
hash redis-5.0.11.tar.gz sha256 418135c453a94aac24c24243b041fb978fcc3ea4e1e1f996c1d64b16ae6ac1aa http://download.redis.io/releases/redis-5.0.11.tar.gz
hash redis-6.2.0.tar.gz sha256 67d624c25d962bd68aff8812a135df85bad07556b8825f3bcd5b522a9932dbca http://download.redis.io/releases/redis-6.2.0.tar.gz
hash redis-6.0.11.tar.gz sha256 c927f2d110e88fda308526a1809a4d7dfcd004319f0de66d40a58a42aec23c5f http://download.redis.io/releases/redis-6.0.11.tar.gz
hash redis-5.0.12.tar.gz sha256 7040eba5910f7c3d38f05ea5a1d88b480488215bdbd2e10ec70d18380108e31e http://download.redis.io/releases/redis-5.0.12.tar.gz
hash redis-6.0.12.tar.gz sha256 f16ad973d19f80f121e53794d5eb48a997e2c6a85b5be41bb3b66750cc17bf6b http://download.redis.io/releases/redis-6.0.12.tar.gz
hash redis-6.2.1.tar.gz sha256 cd222505012cce20b25682fca931ec93bd21ae92cb4abfe742cf7b76aa907520 http://download.redis.io/releases/redis-6.2.1.tar.gz
hash redis-6.2.2.tar.gz sha256 7a260bb74860f1b88c3d5942bf8ba60ca59f121c6dce42d3017bed6add0b9535 http://download.redis.io/releases/redis-6.2.2.tar.gz
hash redis-6.0.13.tar.gz sha256 3049763f4553ddd5a69552f41da3dd7dde9fbc524dbb15e517fee24cc73b790c http://download.redis.io/releases/redis-6.0.13.tar.gz
hash redis-6.2.3.tar.gz sha256 98ed7d532b5e9671f5df0825bb71f0f37483a16546364049384c63db8764512b http://download.redis.io/releases/redis-6.2.3.tar.gz
hash redis-6.0.14.tar.gz sha256 c3e60c928b183ca9fe8e878936a6f8ba99e0441b9b6e04d2412a750ea576c649 http://download.redis.io/releases/redis-6.0.14.tar.gz
hash redis-6.2.4.tar.gz sha256 ba32c406a10fc2c09426e2be2787d74ff204eb3a2e496d87cff76a476b6ae16e http://download.redis.io/releases/redis-6.2.4.tar.gz
hash redis-5.0.13.tar.gz sha256 2b617aa2d6ad66c6a5d99fc8590c6b83b40d391fd1184c6eeab30df31f6a7208 http://download.redis.io/releases/redis-5.0.13.tar.gz
hash redis-6.0.15.tar.gz sha256 4bc295264a95bc94423c162a9eee66135a24a51eefe5f53f18fc9bde5c3a9f74 http://download.redis.io/releases/redis-6.0.15.tar.gz
hash redis-6.2.5.tar.gz sha256 4b9a75709a1b74b3785e20a6c158cab94cf52298aa381eea947a678a60d551ae http://download.redis.io/releases/redis-6.2.5.tar.gz
hash redis-5.0.14.tar.gz sha256 3ea5024766d983249e80d4aa9457c897a9f079957d0fb1f35682df233f997f32 http://download.redis.io/releases/redis-5.0.14.tar.gz
hash redis-6.0.16.tar.gz sha256 3639bbf29aca1a1670de1ab2ce224d6511c63969e7e590d3cdf8f7888184fa19 http://download.redis.io/releases/redis-6.0.16.tar.gz
hash redis-6.2.6.tar.gz sha256 5b2b8b7a50111ef395bf1c1d5be11e6e167ac018125055daa8b5c2317ae131ab http://download.redis.io/releases/redis-6.2.6.tar.gz
hash redis-7.0-rc1.tar.gz sha256 9bd57d3c9ebba9dbbd6cd14b0c263ce151b0044fb6620b556449c2d82e06ef3d http://download.redis.io/releases/redis-7.0-rc1.tar.gz
hash redis-7.0-rc2.tar.gz sha256 ee41f5a9f459b44baefbc021cf5096440f346f3c5fc8a1979a877a2f10603ca3 http://download.redis.io/releases/redis-7.0-rc2.tar.gz
hash redis-7.0-rc3.tar.gz sha256 66b2ecc2e4b53c62940589434ea8af3a85546df131001680ed294028cd84ecdc http://download.redis.io/releases/redis-7.0-rc3.tar.gz
hash redis-6.2.7.tar.gz sha256 b7a79cc3b46d3c6eb52fa37dde34a4a60824079ebdfb3abfbbfa035947c55319 http://download.redis.io/releases/redis-6.2.7.tar.gz
hash redis-7.0.0.tar.gz sha256 284d8bd1fd85d6a55a05ee4e7c31c31977ad56cbf344ed83790beeb148baa720 http://download.redis.io/releases/redis-7.0.0.tar.gz
hash redis-7.0.1.tar.gz sha256 ca1820d527e4759884620be2917079e61e996fa81da5fbe5c07c4a7b507264dc http://download.redis.io/releases/redis-7.0.1.tar.gz
hash redis-7.0.2.tar.gz sha256 5e57eafe7d4ac5ecb6a7d64d6b61db775616dbf903293b3fcc660716dbda5eeb http://download.redis.io/releases/redis-7.0.2.tar.gz
hash redis-7.0.3.tar.gz sha256 2cde7d17214ffe305953da9fff12333e8a72caa57fd4923e4872f6362a208e73 http://download.redis.io/releases/redis-7.0.3.tar.gz
hash redis-7.0.4.tar.gz sha256 f0e65fda74c44a3dd4fa9d512d4d4d833dd0939c934e946a5c622a630d057f2f http://download.redis.io/releases/redis-7.0.4.tar.gz
hash redis-7.0.5.tar.gz sha256 67054cc37b58c125df93bd78000261ec0ef4436a26b40f38262c780e56315cc3 http://download.redis.io/releases/redis-7.0.5.tar.gz
hash redis-6.2.8.tar.gz sha256 f91ab24bcb42673cb853292eb5d43c2017d11d659854808ed6a529c97297fdfe http://download.redis.io/releases/redis-6.2.8.tar.gz
hash redis-7.0.6.tar.gz sha256 7b33a7e890d13e27af1f246acb16312669ad8a1d56ce8f807dfbcd3c09aa7bb3 http://download.redis.io/releases/redis-7.0.6.tar.gz
hash redis-7.0.7.tar.gz sha256 8d327d7e887d1bb308fc37aaf717a0bf79f58129e3739069aaeeae88955ac586 http://download.redis.io/releases/redis-7.0.7.tar.gz
hash redis-7.0.8.tar.gz sha256 06a339e491306783dcf55b97f15a5dbcbdc01ccbde6dc23027c475cab735e914 http://download.redis.io/releases/redis-7.0.8.tar.gz
hash redis-6.2.9.tar.gz sha256 9661b2c6b1cc9bf2999471b37a4d759fa5e747d408142c18af8792ebd8384a2a http://download.redis.io/releases/redis-6.2.9.tar.gz
hash redis-6.0.17.tar.gz sha256 ad50bf7c6bf98d7bf3c626bdd5588368f52c82c8d41869cca024455f651e7bfc http://download.redis.io/releases/redis-6.0.17.tar.gz
hash redis-6.2.10.tar.gz sha256 22684f66d272379b91e3e53693918b535e2a6e54b9d14e1cad171658e0eefeca http://download.redis.io/releases/redis-6.2.10.tar.gz
hash redis-6.0.18.tar.gz sha256 d7b4f2a97fcab96727284092b0a4aa854af47d570803fa0e7a0345359743836e http://download.redis.io/releases/redis-6.0.18.tar.gz
hash redis-6.2.11.tar.gz sha256 8c75fb9cdd01849e92c23f30cb7fe205ea0032a38d11d46af191014e9acc3098 http://download.redis.io/releases/redis-6.2.11.tar.gz
hash redis-7.0.9.tar.gz sha256 f77135c2a47c9151d4028bfea3b34470ab4d324d1484f79a84c6f32a3cfb9f65 http://download.redis.io/releases/redis-7.0.9.tar.gz
hash redis-7.0.10.tar.gz sha256 1dee4c6487341cae7bd6432ff7590906522215a061fdef87c7d040a0cb600131 http://download.redis.io/releases/redis-7.0.10.tar.gz
hash redis-7.2-rc1.tar.gz sha256 b49844a5434bf1cefebc3951dfed1f09172fcdfe82ad4ef7284f6bbe5956f5ea http://download.redis.io/releases/redis-7.2-rc1.tar.gz
hash redis-7.0.11.tar.gz sha256 ce250d1fba042c613de38a15d40889b78f7cb6d5461a27e35017ba39b07221e3 http://download.redis.io/releases/redis-7.0.11.tar.gz
hash redis-6.2.12.tar.gz sha256 75352eef41e97e84bfa94292cbac79e5add5345fc79787df5cbdff703353fb1b http://download.redis.io/releases/redis-6.2.12.tar.gz
hash redis-6.0.19.tar.gz sha256 55e26318c3d9c53a77a6e802f60524afdddd057a2e965cebcf781a0a72f0e3e6 http://download.redis.io/releases/redis-6.0.19.tar.gz
hash redis-7.2-rc2.tar.gz sha256 4e075e79ad18f16c41e18b14ab60e1edfdb6633907fe9a39a34c62f4a758740b http://download.redis.io/releases/redis-7.2-rc2.tar.gz
hash redis-6.0.20.tar.gz sha256 173d4c5f44b5d7186da96c4adc5cb20e8018b50ec3a8dfe0d191dbbab53952f0 http://download.redis.io/releases/redis-6.0.20.tar.gz
hash redis-6.2.13.tar.gz sha256 89ff27c80d420456a721ccfb3beb7cc628d883c53059803513749e13214a23d1 http://download.redis.io/releases/redis-6.2.13.tar.gz
hash redis-7.0.12.tar.gz sha256 9dd83d5b278bb2bf0e39bfeb75c3e8170024edbaf11ba13b7037b2945cf48ab7 http://download.redis.io/releases/redis-7.0.12.tar.gz
hash redis-7.2-rc3.tar.gz sha256 4035e2b146ca1eb43b4188ca30a6d7be1a4d40ac2dfdf58db8f885517bbab41a http://download.redis.io/releases/redis-7.2-rc3.tar.gz
hash redis-7.2.0.tar.gz sha256 8b12e242647635b419a0e1833eda02b65bf64e39eb9e509d9db4888fb3124943 http://download.redis.io/releases/redis-7.2.0.tar.gz
hash redis-7.0.13.tar.gz sha256 97065774d5fb8388eb0d8913458decfcb167d356e40d31dd01cd30c1cc391673 http://download.redis.io/releases/redis-7.0.13.tar.gz
hash redis-7.2.1.tar.gz sha256 5c76d990a1b1c5f949bcd1eed90d0c8a4f70369bdbdcb40288c561ddf88967a4 http://download.redis.io/releases/redis-7.2.1.tar.gz
hash redis-6.2.14.tar.gz sha256 34e74856cbd66fdb3a684fb349d93961d8c7aa668b06f81fd93ff267d09bc277 http://download.redis.io/releases/redis-6.2.14.tar.gz
hash redis-7.0.14.tar.gz sha256 7e1cdf347f4970ea39d5b7fdb19aedec4c21942e202de65bdeb782d38d2f299f http://download.redis.io/releases/redis-7.0.14.tar.gz
hash redis-7.2.2.tar.gz sha256 ca999be08800edc6d265379c4c7aafad92f0ee400692e4e2d69829ab4b4c3d08 http://download.redis.io/releases/redis-7.2.2.tar.gz
hash redis-7.2.3.tar.gz sha256 3e2b196d6eb4ddb9e743088bfc2915ccbb42d40f5a8a3edd8cb69c716ec34be7 http://download.redis.io/releases/redis-7.2.3.tar.gz
hash redis-7.0.15.tar.gz sha256 98066f5363504b26c34dd20fbcc3c957990d764cdf42576c836fc021073f4341 http://download.redis.io/releases/redis-7.0.15.tar.gz
hash redis-7.2.4.tar.gz sha256 8d104c26a154b29fd67d6568b4f375212212ad41e0c2caa3d66480e78dbd3b59 http://download.redis.io/releases/redis-7.2.4.tar.gz

10
redis.logrotate Normal file
View File

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

182
redis.spec Normal file
View File

@ -0,0 +1,182 @@
#
# spec file for package redis
#
# Copyright (c) 2024 SUSE LLC
#
# 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 https://bugs.opensuse.org/
#
%define _data_dir %{_localstatedir}/lib/%{name}
%define _log_dir %{_localstatedir}/log/%{name}
%define _conf_dir %{_sysconfdir}/%{name}
Name: redis
Version: 7.2.4
Release: 0
Summary: Persistent key-value database
License: BSD-3-Clause
URL: https://redis.io
Source0: https://download.redis.io/releases/%{name}-%{version}.tar.gz
Source1: %{name}.logrotate
Source2: %{name}.target
Source3: %{name}@.service
Source4: %{name}.tmpfiles.d
Source5: README.SUSE
Source6: %{name}.sysctl
Source7: %{name}-sentinel@.service
Source8: %{name}-sentinel.target
Source9: %{name}-user.conf
Source10: https://raw.githubusercontent.com/redis/redis-hashes/master/README#/redis.hashes
# PATCH-MISSING-TAG -- See https://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch0: %{name}-conf.patch
Patch3: reproducible.patch
Patch4: ppc-atomic.patch
BuildRequires: jemalloc-devel
BuildRequires: libopenssl-devel >= 1.1.1
BuildRequires: pkgconfig
BuildRequires: procps
BuildRequires: sysuser-shadow
BuildRequires: sysuser-tools
BuildRequires: tcl
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(systemd)
# there is no tcl-tls package yet, which is said to be needed for testing tls support
Recommends: logrotate
%sysusers_requires
%description
%{name} 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
echo "`grep -F %{name}-%{version}.tar.gz %{SOURCE10} | cut -d' ' -f4` %{SOURCE0}" | sha256sum -c
%autosetup -p1
%build
export HOST=OBS # for reproducible builds
%make_build CFLAGS="%{optflags}" \
BUILD_WITH_SYSTEMD=yes \
BUILD_TLS=yes
%sysusers_generate_pre %{SOURCE9} %{name}
%install
install -pm0750 -d \
%{buildroot}%{_sbindir} \
%{buildroot}%{_log_dir} \
%{buildroot}%{_data_dir} \
%{buildroot}%{_conf_dir} \
%{buildroot}%{_log_dir}/default \
%{buildroot}%{_data_dir}/default
install -Dpm0755 src/%{name}-benchmark %{buildroot}%{_bindir}/%{name}-benchmark
install -Dpm0755 src/%{name}-cli %{buildroot}%{_bindir}/%{name}-cli
install -Dpm0755 src/%{name}-server %{buildroot}%{_sbindir}/%{name}-server
ln -sfv ../sbin/redis-server %{buildroot}%{_bindir}/%{name}-check-aof
ln -sfv ../sbin/redis-server %{buildroot}%{_bindir}/%{name}-check-rdb
ln -sfv ../sbin/redis-server %{buildroot}%{_sbindir}/%{name}-check-aof
ln -sfv ../sbin/redis-server %{buildroot}%{_sbindir}/%{name}-check-rdb
ln -sfv ../sbin/redis-server %{buildroot}%{_sbindir}/%{name}-sentinel
perl -p -i -e 's|daemonize yes|daemonize no|g' %{name}.conf
install -Dpm0640 redis.conf %{buildroot}%{_conf_dir}/default.conf.example
install -Dpm0660 sentinel.conf %{buildroot}%{_conf_dir}/sentinel.conf.example
# some sysctl stuff
install -Dpm0644 %{SOURCE6} %{buildroot}/%{_prefix}/lib/sysctl.d/00-%{name}.conf
%if 0%{?suse_version} > 1500
mkdir -p %{buildroot}%{_distconfdir}/logrotate.d
install -Dpm0644 %{SOURCE1} %{buildroot}%{_distconfdir}/logrotate.d/%{name}
%else
install -Dpm0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
%endif
install -Dpm0644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}.target
install -Dpm0644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}@.service
install -Dpm0644 %{SOURCE4} %{buildroot}%{_tmpfilesdir}/%{name}.conf
install -Dpm0644 %{SOURCE7} %{buildroot}%{_unitdir}/%{name}-sentinel@.service
install -Dpm0644 %{SOURCE8} %{buildroot}%{_unitdir}/%{name}-sentinel.target
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
cp %{SOURCE5} README.SUSE
mkdir -p %{buildroot}%{_sysusersdir}
install -pm0644 %{SOURCE9} %{buildroot}%{_sysusersdir}/
%check
cat <<EOF
---------------------------------------------------
The test suite often fails to start a server, with
'child process exited abnormally' -- sometimes it works.
---------------------------------------------------
EOF
# Variable assignments need to match in all make invocations, otherwise it might recomplie. See https://github.com/redis/redis/issues/7337
%make_build test CFLAGS="%{optflags}" BUILD_WITH_SYSTEMD=yes BUILD_TLS=yes || true
%pre -f %{name}.pre
%service_add_pre %{name}.target %{name}@.service %{name}-sentinel.target %{name}-sentinel@.service
%if 0%{?suse_version} > 1500
# Prepare for migration to /usr/etc; save any old .rpmsave
for i in logrotate.d/%{name} ; do
test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i}.rpmsave.old ||:
done
%endif
%if 0%{?suse_version} > 1500
%posttrans
# Migration to /usr/etc, restore just created .rpmsave
for i in logrotate.d/%{name} ; do
test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i} ||:
done
%endif
%post
%tmpfiles_create %{_tmpfilesdir}/%{name}.conf
%service_add_post %{name}.target %{name}@.service %{name}-sentinel.target %{name}-sentinel@.service
echo "See %{_docdir}/%{name}/README.SUSE to continue"
%preun
%service_del_preun %{name}.target %{name}@.service %{name}-sentinel.target %{name}-sentinel@.service
%postun
%service_del_postun %{name}.target %{name}@.service %{name}-sentinel.target %{name}-sentinel@.service
%files
%license COPYING
%doc 00-RELEASENOTES BUGS README.md
%if 0%{?suse_version} > 1500
%{_distconfdir}/logrotate.d/%{name}
%else
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%endif
%{_prefix}/lib/sysctl.d/00-%{name}.conf
%{_bindir}/%{name}-*
%{_sbindir}/%{name}-*
%{_sbindir}/rc%{name}
%{_tmpfilesdir}/%{name}.conf
%{_sysusersdir}/%{name}-user.conf
%{_unitdir}/%{name}@.service
%{_unitdir}/%{name}.target
%{_unitdir}/%{name}-sentinel@.service
%{_unitdir}/%{name}-sentinel.target
%doc README.SUSE
%config(noreplace) %attr(-,root,%{name}) %{_conf_dir}/
%dir %attr(0750,%{name},%{name}) %{_data_dir}
%dir %attr(0750,%{name},%{name}) %{_data_dir}/default
%dir %attr(0750,%{name},%{name}) %{_log_dir}
%ghost %dir /run/%{name}
%changelog

12
redis.sysctl Normal file
View File

@ -0,0 +1,12 @@
### remove redis Warnings about
# WARNING: The TCP backlog setting of 511 cannot be enforced because
# /proc/sys/net/core/somaxconn is set to the lower value of 128.
net.core.somaxconn=512
# WARNING overcommit_memory is set to 0! Background save may fail
# under low memory condition. To fix this issue add
# 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or
# run the command 'sysctl -w vm.overcommit_memory=1' for this to take
# effect.
vm.overcommit_memory=1

3
redis.target Normal file
View File

@ -0,0 +1,3 @@
[Unit]
Description=Redis target allowing to start/stop all redis@.service instances at once

2
redis.tmpfiles.d Normal file
View File

@ -0,0 +1,2 @@
# Type Path Mode UID GID Age Argument
d /run/redis 0755 redis redis - -

30
redis@.service Normal file
View File

@ -0,0 +1,30 @@
[Unit]
Description=Redis instance: %i
After=network.target
PartOf=redis.target
[Service]
Type=notify
User=redis
Group=redis
PrivateTmp=true
# added automatically, for details please see
# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
ProtectSystem=full
ProtectHome=true
PrivateDevices=true
ProtectHostname=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectKernelLogs=true
ProtectControlGroups=true
RestrictRealtime=true
# end of automatic additions
PIDFile=/run/redis/%i.pid
ExecStart=/usr/sbin/redis-server /etc/redis/%i.conf
LimitNOFILE=10240
Restart=on-failure
[Install]
WantedBy=multi-user.target redis.target

26
reproducible.patch Normal file
View File

@ -0,0 +1,26 @@
https://github.com/antirez/redis/pull/4390
From 8832af49fa1f4fdd8f9e152f013bb71b343d26dd Mon Sep 17 00:00:00 2001
From: "Bernhard M. Wiedemann" <bwiedemann@suse.de>
Date: Sun, 22 Oct 2017 05:20:38 +0200
Subject: [PATCH 1/2] Use RELEASENOTES date instead of build date
in order to make builds reproducible.
See https://reproducible-builds.org/ for why this is good.
---
src/mkreleasehdr.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: redis-5.0.5/src/mkreleasehdr.sh
===================================================================
--- redis-5.0.5.orig/src/mkreleasehdr.sh
+++ redis-5.0.5/src/mkreleasehdr.sh
@@ -1,7 +1,7 @@
#!/bin/sh
GIT_SHA1=`(git show-ref --head --hash=8 2> /dev/null || echo 00000000) | head -n1`
GIT_DIRTY=`git diff --no-ext-diff 2> /dev/null | wc -l`
-BUILD_ID=`uname -n`"-"`date +%s`
+BUILD_ID=${HOST:-`uname -n`}"-"`date -r ../00-RELEASENOTES +%s`
if [ -n "$SOURCE_DATE_EPOCH" ]; then
BUILD_ID=$(date -u -d "@$SOURCE_DATE_EPOCH" +%s 2>/dev/null || date -u -r "$SOURCE_DATE_EPOCH" +%s 2>/dev/null || date -u +%s)
fi