mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-08-06 22:07:19 +02:00
53 lines
1.1 KiB
Plaintext
Executable File
53 lines
1.1 KiB
Plaintext
Executable File
#!/sbin/openrc-run
|
|
|
|
REDIS_CONF=${REDIS_CONF:-/etc/redis.conf}
|
|
REDIS_USER=${REDIS_USER:-redis}
|
|
REDIS_GROUP=${REDIS_GROUP:-redis}
|
|
|
|
name="Redis server"
|
|
command=/usr/bin/redis-server
|
|
command_args=${REDIS_CONF}
|
|
|
|
depend() {
|
|
use net localmount logger
|
|
after keepalived firewall
|
|
}
|
|
|
|
# get global pidfile, logfile, and dir from config file
|
|
get_config() {
|
|
if [ ! -f "${REDIS_CONF}" ] ; then
|
|
eerror "You need a ${REDIS_CONF} file to run redis"
|
|
return 1;
|
|
fi
|
|
|
|
pidfile=$(awk '$1 == "pidfile" { print $2 }' "$REDIS_CONF")
|
|
logfile=$(awk '$1 == "logfile" { print $2 }' "$REDIS_CONF")
|
|
dir=$(awk '$1 == "dir" { print $2 }' "$REDIS_CONF")
|
|
: ${pidfile:=/var/run/redis/redis.pid}
|
|
: ${logfile:=/var/log/redis/redis.log}
|
|
: ${dir:=/var/lib/redis}
|
|
}
|
|
|
|
start() {
|
|
get_config || return 1
|
|
checkpath -d -o ${REDIS_USER}:${REDIS_GROUP} ${pidfile%/*} \
|
|
${logfile%/*} ${dir}
|
|
|
|
ebegin "Starting $name"
|
|
start-stop-daemon --start \
|
|
--chdir "${dir}" \
|
|
--user ${REDIS_USER}:${REDIS_GROUP} \
|
|
--pidfile "${pidfile}" \
|
|
--exec "${command}" \
|
|
-- ${command_args}
|
|
eend $?
|
|
}
|
|
|
|
stop() {
|
|
get_config
|
|
ebegin "Stopping $name"
|
|
start-stop-daemon --stop --retry 30 --pidfile "${pidfile}"
|
|
eend $?
|
|
}
|
|
|