albatross/packaging/rc.d/albatross_influx

73 lines
1.7 KiB
Bash
Executable File

#!/bin/sh
# $FreeBSD$
#
# PROVIDE: albatross_influx
# REQUIRE: LOGIN albatross_stat
# KEYWORD: shutdown
#
# Define these albatross_influx_* variables in one of these files
# /etc/rc.conf
# /etc/rc.conf.local
# /etc/rc.conf.d/albatross_influx
# /usr/local/etc/rc.conf.d/albatross_influx
#
# albatross_influx_flags:
# Default: ""
#
. /etc/rc.subr
name=albatross_influx
rcvar=${name}_enable
desc="Albatross influx service"
load_rc_config $name
start_cmd="albatross_influx_start"
start_precmd="albatross_influx_precmd"
: ${albatross_influx_enable:="NO"}
: ${albatross_influx_flags:=""}
: ${albatross_influx_user:="albatross"}
pidfile="/var/run/albatross_influx.pid"
procname="/usr/local/libexec/albatross/albatross_influx"
#
# force_depend script [rcvar]
# Force a service to start. Intended for use by services
# to resolve dependency issues.
# $1 - filename of script, in /usr/local/etc/rc.d, to run
# $2 - name of the script's rcvar (minus the _enable)
#
my_force_depend()
{
local _depend _dep_rcvar
_depend="$1"
_dep_rcvar="${2:-$1}_enable"
[ -n "$rc_fast" ] && ! checkyesno always_force_depends &&
checkyesno $_dep_rcvar && return 0
/usr/local/etc/rc.d/${_depend} forcestatus >/dev/null 2>&1 && return 0
info "${name} depends on ${_depend}, which will be forced to start."
if ! /usr/local/etc/rc.d/${_depend} forcestart; then
warn "Unable to force ${_depend}. It may already be running."
return 1
fi
}
albatross_influx_precmd() {
my_force_depend albatross_stat || err 1 "Cannot run albatross_stat"
}
albatross_influx_start () {
echo "Starting ${name}."
/usr/sbin/daemon -S -p "${pidfile}" -u "${albatross_influx_user}" \
"${procname}" ${albatross_influx_flags}
}
run_rc_command "$1"