diff options
author | Christian Ruppert <idl0r@gentoo.org> | 2022-04-06 15:19:22 +0200 |
---|---|---|
committer | Christian Ruppert <idl0r@gentoo.org> | 2022-04-06 15:22:49 +0200 |
commit | f0c1f3a38f315e6b838aa1628ca2f69db33039ca (patch) | |
tree | 45f9f8fbb6d108c1b7e21f7ea342227b8f87a92a /net-proxy/haproxy/files | |
parent | net-proxy/haproxy: Fix EGIT_REPO_URI from http to https (diff) | |
download | gentoo-f0c1f3a38f315e6b838aa1628ca2f69db33039ca.tar.gz gentoo-f0c1f3a38f315e6b838aa1628ca2f69db33039ca.tar.bz2 gentoo-f0c1f3a38f315e6b838aa1628ca2f69db33039ca.zip |
net-proxy/haproxy: Revbump: Use Master-Worker Mode by default
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Christian Ruppert <idl0r@gentoo.org>
Diffstat (limited to 'net-proxy/haproxy/files')
-rw-r--r-- | net-proxy/haproxy/files/haproxy.initd-r7 | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/net-proxy/haproxy/files/haproxy.initd-r7 b/net-proxy/haproxy/files/haproxy.initd-r7 new file mode 100644 index 000000000000..95f27d676b6c --- /dev/null +++ b/net-proxy/haproxy/files/haproxy.initd-r7 @@ -0,0 +1,85 @@ +#!/sbin/openrc-run +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +extra_commands="checkconfig" +extra_started_commands="reload" + +command="/usr/sbin/haproxy" + +pidfile="${HAPROXY_PIDFILE:-/run/${SVCNAME}.pid}" + +configs= + +if [ -z "${CONFIGS}" ]; then + if [ -f "/etc/haproxy/${SVCNAME}.cfg" ]; then + CONFIGS=/etc/haproxy/${SVCNAME}.cfg + elif [ -f "/etc/${SVCNAME}.cfg" ]; then + CONFIGS=/etc/${SVCNAME}.cfg # Deprecated + fi +fi + +for conf in $CONFIGS; do + configs="${configs} -f ${conf}" +done + +command_args="-D -W -p ${pidfile} ${configs} ${HAPROXY_OPTS}" + +depend() { + need net + use dns logger +} + +checkconfig() { + if [ -z "${CONFIGS}" ]; then + eerror "No config(s) has been specified" + return 1 + fi + + for conf in $CONFIGS; do + if [ ! -f "${conf}" ]; then + eerror "${conf} does not exist!" + return 1 + fi + done + + ebegin "Checking ${CONFIGS}" + $command -q -c $configs $HAPROXY_OPTS + eend $? +} + +start_pre() { + if [ "${RC_CMD}" != "restart" ]; then + checkconfig || return 1 + fi +} + +stop_pre() { + if [ "${RC_CMD}" = "restart" ]; then + checkconfig || return 1 + fi +} + +stop() { + local _t _pid + + _t="$(mktemp)" + for _pid in $(cat ${pidfile}) ; do + echo "${_pid}" > "${_t}" + start-stop-daemon --stop --pidfile="${_t}" + done + rm -f "${_t}" +} + +reload() { + checkconfig || { eerror "Reloading failed, please fix your config(s) first"; return 1; } + + if [ "$(command -v reload_seamless)" = "reload_seamless" ]; then + einfo "Calling user-defined reload_seamless()" + reload_seamless || { eerror "reload_seamless() failed!"; return 1; } + fi + + ebegin "Reloading ${SVCNAME}" + $command -D -p "${pidfile}" $configs $HAPROXY_OPTS -sf $(cat "${pidfile}") + eend $? +} |