MFH: r473979
www/py-graphite-api: clean up rc.d script - fix ordering in rc.d script so that daemon doesn't hang on startup - teach rc.d to behave when installing with multiple python & gunicorn versions - clean up substitutions in SUB_LIST, pkg-list and *.in script - ensure working directories are re-created on startup if required PR: 223264 Submitted by: Horst Kapfenberger <horst.kapfenberger@agoracon.at> Approved by: jrm Differential Revision: https://reviews.freebsd.org/D13581 Approved by: ports-secteam
This commit is contained in:
parent
cc66891187
commit
b216f2829a
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/branches/2018Q3/; revision=473981
|
@ -3,11 +3,12 @@
|
|||
|
||||
PORTNAME= graphite-api
|
||||
PORTVERSION= 1.1.3
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= www python
|
||||
MASTER_SITES= CHEESESHOP
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
|
||||
MAINTAINER= dch@skunkwerks.at
|
||||
MAINTAINER= dch@FreeBSD.org
|
||||
COMMENT= Graphite-web, without the interface - just the rendering HTTP API
|
||||
|
||||
LICENSE= APACHE20
|
||||
|
@ -24,15 +25,16 @@ RUN_DEPENDS= \
|
|||
${PYTHON_PKGNAMEPREFIX}gunicorn>=19.4.1:www/py-gunicorn@${PY_FLAVOR} \
|
||||
xorg-fonts-truetype>=0:x11-fonts/xorg-fonts-truetype
|
||||
|
||||
NO_ARCH= yes
|
||||
USES= python
|
||||
USE_PYTHON= distutils py3kplist
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
GRAPHITEAPI_APP= graphiteapi
|
||||
|
||||
SUB_FILES= pkg-message
|
||||
SUB_LIST= PORTNAME=${PORTNAME} \
|
||||
PREFIX=${PREFIX} \
|
||||
SUB_LIST= PYTHON_VER=${PYTHON_VER} \
|
||||
PYTHON_VERSION=${PYTHON_VERSION} \
|
||||
GRAPHITEAPI_APP=${GRAPHITEAPI_APP} \
|
||||
GRAPHITEAPI_USER=${GRAPHITEAPI_USER} \
|
||||
GRAPHITEAPI_GROUP=${GRAPHITEAPI_GROUP} \
|
||||
|
@ -40,10 +42,7 @@ SUB_LIST= PORTNAME=${PORTNAME} \
|
|||
GRAPHITEAPI_TMPDIR=${GRAPHITEAPI_TMPDIR} \
|
||||
GRAPHITEAPI_PIDFILE=${GRAPHITEAPI_PIDFILE}
|
||||
|
||||
PLIST_SUB= PORTNAME=${PORTNAME} \
|
||||
PORTVERSION=${PORTVERSION} \
|
||||
PREFIX=${PREFIX} \
|
||||
GRAPHITEAPI_APP=${GRAPHITEAPI_APP} \
|
||||
PLIST_SUB= GRAPHITEAPI_APP=${GRAPHITEAPI_APP} \
|
||||
GRAPHITEAPI_USER=${GRAPHITEAPI_USER} \
|
||||
GRAPHITEAPI_GROUP=${GRAPHITEAPI_GROUP} \
|
||||
GRAPHITEAPI_LOGDIR=${GRAPHITEAPI_LOGDIR} \
|
||||
|
|
|
@ -23,8 +23,10 @@
|
|||
|
||||
name="%%GRAPHITEAPI_APP%%"
|
||||
rcvar="%%GRAPHITEAPI_APP%%_enable"
|
||||
desc="graphite-web rendering API"
|
||||
|
||||
load_rc_config ${name}
|
||||
|
||||
# defaults
|
||||
: ${graphiteapi_enable:="NO"}
|
||||
: ${graphiteapi_user="%%GRAPHITEAPI_USER%%"}
|
||||
: ${graphiteapi_group="%%GRAPHITEAPI_GROUP%%"}
|
||||
|
@ -32,21 +34,32 @@ rcvar="%%GRAPHITEAPI_APP%%_enable"
|
|||
: ${graphiteapi_config="%%ETCDIR%%/%%GRAPHITEAPI_APP%%.yaml"}
|
||||
: ${graphiteapi_flags="--workers 4"}
|
||||
|
||||
# daemon
|
||||
command="%%PREFIX%%/bin/gunicorn"
|
||||
required_files="${graphiteapi_config}"
|
||||
command_args="graphite_api.app:app"
|
||||
|
||||
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 TZ=UTC"
|
||||
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"
|
||||
|
||||
# support SIGHUP to reload configuration file
|
||||
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%%"
|
||||
}
|
||||
|
||||
load_rc_config $name
|
||||
run_rc_command "$1"
|
||||
|
|
Loading…
Reference in New Issue
Block a user