Merge pull request #14460 from azat/sysv-init-systemd-compatibility

Proxy restart/start/stop/reload of SysVinit to systemd (if it is used)
This commit is contained in:
alexey-milovidov 2020-09-04 03:05:44 +03:00 committed by GitHub
commit 300bdc07b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -67,13 +67,6 @@ if uname -mpi | grep -q 'x86_64'; then
fi
SUPPORTED_COMMANDS="{start|stop|status|restart|forcestop|forcerestart|reload|condstart|condstop|condrestart|condreload|initdb}"
is_supported_command()
{
echo "$SUPPORTED_COMMANDS" | grep -E "(\{|\|)$1(\||})" &> /dev/null
}
is_running()
{
pgrep --pidfile "$CLICKHOUSE_PIDFILE" $(echo "${PROGRAM}" | cut -c1-15) 1> /dev/null 2> /dev/null
@ -283,13 +276,12 @@ use_cron()
fi
return 0
}
# returns false if cron disabled (with systemd)
enable_cron()
{
use_cron && sed -i 's/^#*//' "$CLICKHOUSE_CRONFILE"
}
# returns false if cron disabled (with systemd)
disable_cron()
{
use_cron && sed -i 's/^#*/#/' "$CLICKHOUSE_CRONFILE"
@ -312,15 +304,14 @@ main()
EXIT_STATUS=0
case "$1" in
start)
start && enable_cron
service_or_func start && enable_cron
;;
stop)
# disable_cron returns false if cron disabled (with systemd) - not checking return status
disable_cron
stop
service_or_func stop
;;
restart)
restart && enable_cron
service_or_func restart && enable_cron
;;
forcestop)
disable_cron
@ -330,7 +321,7 @@ main()
forcerestart && enable_cron
;;
reload)
restart
service_or_func restart
;;
condstart)
is_running || service_or_func start
@ -354,7 +345,7 @@ main()
disable_cron
;;
*)
echo "Usage: $0 $SUPPORTED_COMMANDS"
echo "Usage: $0 {start|stop|status|restart|forcestop|forcerestart|reload|condstart|condstop|condrestart|condreload|initdb}"
exit 2
;;
esac