forked from AkkomaGang/akkoma
norm
c0e6f30e4d
Reviewed-on: AkkomaGang/akkoma#48 Co-authored-by: norm <normandy@biribiri.dev> Co-committed-by: norm <normandy@biribiri.dev>
57 lines
961 B
Bash
Executable file
57 lines
961 B
Bash
Executable file
#!/bin/sh
|
|
# PROVIDE: akkoma
|
|
# REQUIRE: DAEMON pgsql
|
|
|
|
if [ -f /etc/rc.subr ]; then
|
|
. /etc/rc.subr
|
|
fi
|
|
|
|
name="akkoma"
|
|
rcvar=${name}
|
|
command="/usr/pkg/bin/elixir"
|
|
command_args="--detached -S /usr/pkg/bin/mix phx.server"
|
|
start_precmd="ulimit -n unlimited"
|
|
pidfile="/dev/null"
|
|
|
|
akkoma_chdir="${akkoma_home}/akkoma"
|
|
akkoma_env="HOME=${akkoma_home} MIX_ENV=prod"
|
|
|
|
check_pidfile()
|
|
{
|
|
pid=$(pgrep -U "${akkoma_user}" /bin/beam.smp$)
|
|
echo -n "${pid}"
|
|
}
|
|
|
|
if [ -f /etc/rc.subr -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then
|
|
# newer NetBSD
|
|
load_rc_config ${name}
|
|
run_rc_command "$1"
|
|
else
|
|
# ancient NetBSD, Solaris and illumos, Linux, etc...
|
|
cmd=${1:-start}
|
|
|
|
case ${cmd} in
|
|
start)
|
|
echo "Starting ${name}."
|
|
${start_cmd}
|
|
;;
|
|
|
|
stop)
|
|
echo "Stopping ${name}."
|
|
check_pidfile
|
|
! [ -n ${pid} ] && kill ${pid}
|
|
;;
|
|
|
|
restart)
|
|
( $0 stop )
|
|
sleep 5
|
|
$0 start
|
|
;;
|
|
|
|
*)
|
|
echo 1>&2 "Usage: $0 [start|stop|restart]"
|
|
exit 1
|
|
;;
|
|
esac
|
|
exit 0
|
|
fi
|