1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-23 04:23:08 +00:00
freebsd-ports/net-mgmt/unifi5/files/unifi.in
2016-06-03 14:06:06 +00:00

76 lines
1.5 KiB
Bash

#!/bin/sh
#
# Created by: Mark Felder <feld@FreeBSD.org>
# $FreeBSD$
#
# PROVIDE: unifi
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable `unifi':
#
# unifi_enable="YES"
. /etc/rc.subr
name=unifi
rcvar=unifi_enable
load_rc_config ${name}
: ${unifi_enable:=NO}
: ${unifi_user:=%%USERS%%}
: ${unifi_group:=%%GROUPS%%}
: ${unifi_chdir=%%JAVASHAREDIR%%/unifi}
: ${unifi_javaflags:="-Djava.awt.headless=true -Xmx1024M"}
command_interpreter=.
command="%%PREFIX%%/bin/java"
command_args="${unifi_javaflags} -jar lib/ace.jar"
start_cmd=start_cmd
start_precmd=start_precmd
stop_cmd=stop_cmd
status_cmd=status_cmd
pidfile="/var/run/${name}.pid"
procname=$(JAVAVM_DRYRUN=yes ${command} | fgrep JAVAVM_COMMAND)
start_precmd()
{
if [ ! -e /var/run/unifi ] ; then
install -d -o %%USERS%% -g %%GROUPS%% /var/run/unifi;
fi
}
start_cmd()
{
check_startmsgs && echo "Starting ${name}."
cd ${unifi_chdir}
daemon -u %%USERS%% -f -p ${pidfile} ${command} ${command_args} start
}
stop_cmd()
{
check_startmsgs && echo "Stopping ${name}."
rc_pid=$(check_pidfile $pidfile $procname)
cd ${unifi_chdir}
${command} ${command_args} stop
wait_for_pids $rc_pid
}
status_cmd()
{
if [ -e ${pidfile} ] && $(pgrep -F ${pidfile} > /dev/null) ; then
mypid=$(cat ${pidfile})
fi
if [ ! ${mypid} = '' ]; then
echo "${name} is running with PID ${mypid}.";
else
echo "${name} not running?";
fi
}
run_rc_command "$1"