37 lines
1.3 KiB
Bash
Executable File
37 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# PROVIDE: chess_server
|
|
# REQUIRE: LOGIN postgresql
|
|
# KEYWORD: shutdown
|
|
#
|
|
# rc.conf variables (setup-jail.sh sets them with sysrc):
|
|
# chess_server_enable YES to start at boot
|
|
# chess_server_flags chess-server arguments (-dsn, -jwt-secret-file, ...)
|
|
# chess_server_env environment, including PATH=... for stockfish
|
|
# chess_server_account unprivileged account (default: chess)
|
|
# chess_server_binary default: /usr/local/chess/chess-server
|
|
# chess_server_logfile default: /var/log/chess/chess-server.log
|
|
#
|
|
# daemon(8) starts as root, writes the supervisor pidfile, drops to the
|
|
# account, restarts the server if it exits (-r, 5 s delay), and reopens the
|
|
# log file on SIGHUP (-H) for newsyslog. Do not set chess_server_user: rc.subr
|
|
# would switch users before daemon runs and daemon could not drop privileges.
|
|
|
|
. /etc/rc.subr
|
|
|
|
name=chess_server
|
|
rcvar=chess_server_enable
|
|
load_rc_config $name
|
|
|
|
: ${chess_server_enable:="NO"}
|
|
: ${chess_server_account:="chess"}
|
|
: ${chess_server_binary:="/usr/local/chess/chess-server"}
|
|
: ${chess_server_logfile:="/var/log/chess/chess-server.log"}
|
|
|
|
pidfile="/var/run/${name}.pid"
|
|
procname="daemon"
|
|
command="/usr/sbin/daemon"
|
|
command_args="-f -r -R 5 -H -P ${pidfile} -o ${chess_server_logfile} -u ${chess_server_account} ${chess_server_binary} ${chess_server_flags}"
|
|
|
|
run_rc_command "$1"
|