summaryrefslogtreecommitdiff
blob: 751d68c3cc510a1bcbe1976f47b98bf12322d74d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/sbin/openrc-run
# Copyright 2015-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

description="consul agent"
extra_started_commands="reload"
export GOMAXPROCS=${GOMAXPROCS:-2}
group=${group:-${SVCNAME}}
pidfile=${pidfile:-"/run/${SVCNAME}/${SVCNAME}.pid"}
user=${user:-${SVCNAME}}

command="/usr/bin/${SVCNAME}"
command_args="agent ${command_args:-config-dir=/etc/consul.d}"
command_background="true"
start_stop_daemon_args="--user ${user} --group ${group} \
	--stdout /var/log/${SVCNAME}/${SVCNAME}.log \
	--stderr /var/log/${SVCNAME}/${SVCNAME}.log"

depend() {
	need net
	after net
}

reload() {
	ebegin "Reloading ${SVCNAME}"
	${command} reload
	eend $?
}

start_pre() {
	checkpath -d -m 0755 -o "${user}":"${group}" "${pidfile%/*}"
}

stop() {
	# SIGINT is required for graceful shutdown of consul agent
	ebegin "Stopping ${SVCNAME}"
	start-stop-daemon --stop --signal SIGINT --pidfile "${pidfile}"
	eend $?
}