mirror of
https://git.freebsd.org/ports.git
synced 2025-04-30 10:36:38 -04:00
61 lines
2.1 KiB
Bash
61 lines
2.1 KiB
Bash
#!/bin/sh
|
|
|
|
# PROVIDE: graphiteapi
|
|
# REQUIRE: LOGIN DAEMON NETWORKING
|
|
# KEYWORD: shutdown
|
|
|
|
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
|
|
# to enable this service:
|
|
#
|
|
# graphiteapi_enable (bool): Set to NO by default.
|
|
# Set it to YES to enable graphiteapi.
|
|
#
|
|
# graphiteapi_user (string): optional username to run daemon under
|
|
# graphiteapi_group (string): optional groupname to run daemon under
|
|
# graphiteapi_address (string): optional IP:PORT tuple to bind to
|
|
# graphiteapi_config (string): optional full path for yaml config file
|
|
# graphiteapi_flags (string): optional flags to pass through to gunicorn
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="%%GRAPHITEAPI_APP%%"
|
|
rcvar="%%GRAPHITEAPI_APP%%_enable"
|
|
desc="graphite-web rendering API"
|
|
|
|
load_rc_config ${name}
|
|
|
|
: ${graphiteapi_enable:="NO"}
|
|
: ${graphiteapi_user="%%GRAPHITEAPI_USER%%"}
|
|
: ${graphiteapi_group="%%GRAPHITEAPI_GROUP%%"}
|
|
: ${graphiteapi_address="127.0.0.1:5600"}
|
|
: ${graphiteapi_config="%%ETCDIR%%/%%GRAPHITEAPI_APP%%.yaml"}
|
|
: ${graphiteapi_flags="--workers 4"}
|
|
|
|
required_files="${graphiteapi_config}"
|
|
|
|
command="%%PREFIX%%/bin/gunicorn-%%PYTHON_VER%%"
|
|
procname="%%PYTHON_VERSION%%"
|
|
|
|
pidfile="%%GRAPHITEAPI_PIDFILE%%"
|
|
|
|
command_args="--daemon graphite_api.app:app"
|
|
command_args="${command_args} --user ${graphiteapi_user} --group ${graphiteapi_group}"
|
|
command_args="${command_args} --bind ${graphiteapi_address}"
|
|
command_args="${command_args} --env GRAPHITE_API_CONFIG=${graphiteapi_config}"
|
|
command_args="${command_args} --pid %%GRAPHITEAPI_PIDFILE%%"
|
|
command_args="${command_args} --worker-tmp-dir %%GRAPHITEAPI_TMPDIR%%"
|
|
command_args="${command_args} --error-logfile %%GRAPHITEAPI_LOGDIR%%/error.log"
|
|
command_args="${command_args} --access-logfile %%GRAPHITEAPI_LOGDIR%%/access.log"
|
|
|
|
extra_commands="reload"
|
|
start_precmd="start_precmd"
|
|
|
|
start_precmd()
|
|
{
|
|
test -d "%%GRAPHITEAPI_LOGDIR%%" || install -d -o ${graphiteapi_user} \
|
|
-g ${graphiteapi_group} -m 0750 "%%GRAPHITEAPI_LOGDIR%%"
|
|
test -d "%%GRAPHITEAPI_TMPDIR%%" || install -d -o ${graphiteapi_user} \
|
|
-g ${graphiteapi_group} -m 0750 "%%GRAPHITEAPI_TMPDIR%%"
|
|
}
|
|
|
|
run_rc_command "$1"
|