summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZheng Qiu <zheng.qiu@windriver.com>2022-11-16 16:28:24 -0500
committerArmin Kuster <akuster808@gmail.com>2022-11-19 11:15:33 -0500
commit1a2cc9656da5d8728f59b6823f1d9be96ca48f61 (patch)
tree88291251278aa60f4e235fdf3d6e18996fdbbfbc
parentba5ccfceb8bb63a127e70d84bfa95f8ccdca8233 (diff)
downloadmeta-openembedded-1a2cc9656da5d8728f59b6823f1d9be96ca48f61.tar.gz
redis: build with USE_SYSTEMD=yes when systemd is enabled
Compile redis with full systemd support when the chosen init system is systemd. Enabling systemd supervision allows redis to communicate the actual server status (i.e. "Loading dataset", "Waiting for master<->replica sync") to systemd, instead of declaring readiness right after initializing the server process. Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-oe/recipes-extended/redis/redis-7/redis.service1
-rw-r--r--meta-oe/recipes-extended/redis/redis_7.0.4.bb8
2 files changed, 7 insertions, 2 deletions
diff --git a/meta-oe/recipes-extended/redis/redis-7/redis.service b/meta-oe/recipes-extended/redis/redis-7/redis.service
index 36d29852da..a52204cc70 100644
--- a/meta-oe/recipes-extended/redis/redis-7/redis.service
+++ b/meta-oe/recipes-extended/redis/redis-7/redis.service
@@ -9,6 +9,7 @@ ExecStart=/usr/bin/redis-server /etc/redis/redis.conf
9ExecStop=/usr/bin/redis-cli shutdown 9ExecStop=/usr/bin/redis-cli shutdown
10Restart=always 10Restart=always
11LimitNOFILE=10032 11LimitNOFILE=10032
12Type=notify
12 13
13[Install] 14[Install]
14WantedBy=multi-user.target 15WantedBy=multi-user.target
diff --git a/meta-oe/recipes-extended/redis/redis_7.0.4.bb b/meta-oe/recipes-extended/redis/redis_7.0.4.bb
index 993ff34b10..6eb6573768 100644
--- a/meta-oe/recipes-extended/redis/redis_7.0.4.bb
+++ b/meta-oe/recipes-extended/redis/redis_7.0.4.bb
@@ -35,7 +35,10 @@ USERADD_PACKAGES = "${PN}"
35USERADD_PARAM:${PN} = "--system --home-dir /var/lib/redis -g redis --shell /bin/false redis" 35USERADD_PARAM:${PN} = "--system --home-dir /var/lib/redis -g redis --shell /bin/false redis"
36GROUPADD_PARAM:${PN} = "--system redis" 36GROUPADD_PARAM:${PN} = "--system redis"
37 37
38REDIS_ON_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}" 38PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
39PACKAGECONFIG[systemd] = "USE_SYSTEMD=yes,USE_SYSTEMD=no,systemd"
40
41EXTRA_OEMAKE += "${PACKAGECONFIG_CONFARGS}"
39 42
40do_compile:prepend() { 43do_compile:prepend() {
41 (cd deps && oe_runmake hiredis lua linenoise) 44 (cd deps && oe_runmake hiredis lua linenoise)
@@ -55,8 +58,9 @@ do_install() {
55 install -m 0644 ${WORKDIR}/redis.service ${D}${systemd_system_unitdir} 58 install -m 0644 ${WORKDIR}/redis.service ${D}${systemd_system_unitdir}
56 sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${systemd_system_unitdir}/redis.service 59 sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${systemd_system_unitdir}/redis.service
57 60
58 if [ "${REDIS_ON_SYSTEMD}" = true ]; then 61 if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
59 sed -i 's!daemonize yes!# daemonize yes!' ${D}/${sysconfdir}/redis/redis.conf 62 sed -i 's!daemonize yes!# daemonize yes!' ${D}/${sysconfdir}/redis/redis.conf
63 sed -i 's!supervised no!supervised systemd!' ${D}/${sysconfdir}/redis/redis.conf
60 fi 64 fi
61} 65}
62 66