Changeset View
Changeset View
Standalone View
Standalone View
devel/gitlab-runner/files/heptapod_runner.in
- This file was added.
#!/bin/sh | |||||
# PROVIDE: heptapod_runner | |||||
# REQUIRE: DAEMON NETWORKING | |||||
# KEYWORD: shutdown | |||||
# | |||||
# Add the following line to /etc/rc.conf to enable heptapod_runner: | |||||
# | |||||
# heptapod_runner_enable (bool): Set to "NO" by default. | |||||
# Set it to "YES" to enable heptapod-runner | |||||
# heptapod_runner_dir (str): Set to "/var/tmp/heptapod_runner" by default. | |||||
# Set it to directory to run heptapod-runner in | |||||
# heptapod_runner_user (str): Set to "heptapod-runner" by default. | |||||
# Set it to user to run heptapod_runner under | |||||
# heptapod_runner_group (str): Set to "heptapod-runner" by default. | |||||
# Set it to group to run heptapod-runner under | |||||
# heptapod_runner_syslogtag (str):Set to "heptapod-runner" by default. | |||||
# Set it to tag to be used by syslog | |||||
# | |||||
. /etc/rc.subr | |||||
name="heptapod_runner" | |||||
rcvar="heptapod_runner_enable" | |||||
load_rc_config $name | |||||
: ${heptapod_runner_enable:="NO"} | |||||
: ${heptapod_runner_dir:="/var/tmp/heptapod_runner"} | |||||
: ${heptapod_runner_user:="heptapod-runner"} | |||||
: ${heptapod_runner_group:="heptapod-runner"} | |||||
: ${heptapod_runner_syslogtag:="heptapod-runner"} | |||||
export HOME=${heptapod_runner_dir} | |||||
export PATH=${PATH}:%%PREFIX%%/bin | |||||
pidfile="/var/run/${name}.pid" | |||||
command="/usr/sbin/daemon" | |||||
command_args="-f -p ${pidfile} env HOME=${heptapod_runner_dir} ${heptapod_runner_env} %%PREFIX%%/bin/heptapod-runner run --syslog --service ${heptapod_runner_syslogtag}" | |||||
heptapod_runner_chdir="${heptapod_runner_dir}" | |||||
procname=%%PREFIX%%/bin/heptapod-runner | |||||
start_precmd="heptapod_runner_startprecmd" | |||||
list_cmd="listfunc" | |||||
register_cmd="registerfunc" | |||||
listfunc() | |||||
{ | |||||
su -m ${heptapod_runner_user} -c "env HOME=${heptapod_runner_dir} ${heptapod_runner_env} %%PREFIX%%/bin/heptapod-runner list" | |||||
} | |||||
registerfunc() | |||||
{ | |||||
su -m ${heptapod_runner_user} -c "env HOME=${heptapod_runner_dir} ${heptapod_runner_env} %%PREFIX%%/bin/heptapod-runner register" | |||||
} | |||||
heptapod_runner_startprecmd() | |||||
{ | |||||
if [ ! -e "${pidfile}" ]; then | |||||
install -g ${heptapod_runner_group} -o ${heptapod_runner_user} -- /dev/null "${pidfile}"; | |||||
fi | |||||
if [ ! -d "${heptapod_runner_dir}" ]; then | |||||
install -d -o "${heptapod_runner_user}" -g "${heptapod_runner_group}" "${heptapod_runner_dir}" | |||||
fi | |||||
} | |||||
extra_commands="list register" | |||||
run_rc_command $1 |