package/redis: add optional support for systemd

- Use the unit type=notify (Redis contacts systemd when ready)
- Start redis with the supervised option, so it knows it should
  talk to systemd
- USE_SYSTEMD is not documented, but it is used in the src/Makefile

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
[yann.morin.1998@free.fr: add and explain USE_SYSTEMD]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Titouan Christophe 2020-06-02 12:40:11 +02:00 committed by Yann E. MORIN
parent ee3c813418
commit ac3ab472e0
2 changed files with 13 additions and 4 deletions

View file

@ -30,6 +30,13 @@ endif
REDIS_BUILDOPTS = $(TARGET_CONFIGURE_OPTS) \
PREFIX=$(TARGET_DIR)/usr MALLOC=libc
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
REDIS_DEPENDENCIES += systemd
REDIS_BUILDOPTS += USE_SYSTEMD=yes
else
REDIS_BUILDOPTS += USE_SYSTEMD=no
endif
ifeq ($(BR2_PACKAGE_LIBOPENSSL),y)
REDIS_DEPENDENCIES += libopenssl
REDIS_BUILDOPTS += BUILD_TLS=yes

View file

@ -1,13 +1,15 @@
[Unit]
Description=Advanced key-value store
Description=Redis data structure server
Documentation=https://redis.io/documentation
After=network.target
[Service]
Type=simple
Type=notify
User=redis
Group=redis
ExecStart=/usr/bin/redis-server /etc/redis.conf
ExecStop=/usr/bin/redis-cli shutdown
ExecStart=/usr/bin/redis-server --supervised systemd --daemonize no
TimeoutStartSec=5
TimeoutStopSec=5
CapabilityBoundingSet=
PrivateTmp=true
PrivateDevices=true