add www-apps/grafana-bin with arm64 support

This commit is contained in:
Martin Sekera 2021-03-01 09:05:00 +01:00
parent adc8c59a8a
commit 1a23eda5fe
6 changed files with 196 additions and 0 deletions

View file

@ -0,0 +1,27 @@
# Config file for /etc/init.d/grafana
# The user to run your application as
#GRAFANA_USER=grafana
# The group to run your application as
#GRAFANA_GROUP=grafana
# Configuration file
#GRAFANA_CONFIGFILE="/etc/grafana/${RC_SVCNAME}.ini"
# PID file
#GRAFANA_PIDFILE="/run/${RC_SVCNAME}.pid"
# The grafana datadir
#GRAFANA_DATADIR=/var/lib/grafana
# You can use this configuration option to pass additional options to the
# start-stop-daemon, see start-stop-daemon(8) for more details.
# Per default we wait 1000ms after we have started the service to ensure
# that the daemon is really up and running.
#GRAFANA_SSDARGS="--wait 1000"
# The termination timeout (start-stop-daemon parameter "retry") ensures
# that the service will be terminated within a given time (60 + 5 seconds
# per default) when you are stopping the service.
#GRAFANA_TERMTIMEOUT="TERM/60/KILL/5"

View file

@ -0,0 +1,7 @@
# Config file for /etc/init.d/grafana
# The user to run your application as.
GRAFANA_USER=grafana
# The group to run your application as.
GRAFANA_GROUP=grafana

View file

@ -0,0 +1,36 @@
#!/sbin/openrc-run
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
GRAFANA_USER="${GRAFANA_USER:-"grafana"}"
GRAFANA_GROUP="${GRAFANA_GROUP:-"grafana"}"
GRAFANA_CONFIGFILE="${GRAFANA_CONFIGFILE:-"/etc/grafana/${RC_SVCNAME}.ini"}"
GRAFANA_DATADIR="${GRAFANA_DATADIR:-"/var/lib/grafana"}"
GRAFANA_LOGDIR="${GRAFANA_LOGDIR:-"/var/log/grafana"}"
GRAFANA_PIDFILE="${GRAFANA_PIDFILE:-"/run/${RC_SVCNAME}.pid"}"
GRAFANA_SSDARGS=${GRAFANA_SSDARGS:-"--wait 1000"}
GRAFANA_TERMTIMEOUT=${GRFANA_TERMTIMEOUT:-"TERM/60/KILL/5"}
command="/usr/bin/grafana-server"
command_args="-homepath=/usr/share/grafana"
command_args="${command_args} -config=\"${GRAFANA_CONFIGFILE}\""
command_args="${command_args} cfg:default.paths.data=\"${GRAFANA_DATADIR}\""
command_args="${command_args} cfg:default.paths.logs=\"${GRAFANA_LOGDIR}\""
command_background="yes"
pidfile="${GRAFANA_PIDFILE}"
retry="${GRAFANA_TERMTIMEOUT}"
start_stop_daemon_args="--user ${GRAFANA_USER}:${GRAFANA_GROUP} ${GRAFANA_SSDARGS}"
description="Grafana server, feature rich metrics dashboard and graph editor."
required_files="${GRAFANA_CONFIGFILE}"
depend() {
need localmount
}
start_pre() {
checkpath -d -o "${GRAFANA_USER}:${GRAFANA_GROUP}" -m750 "${GRAFANA_DATADIR}" || return 1
checkpath -d -o "${GRAFANA_USER}:${GRAFANA_GROUP}" -m750 "${GRAFANA_DATADIR}/dashboards" || return 1
checkpath -d -o "${GRAFANA_USER}:${GRAFANA_GROUP}" -m750 "${GRAFANA_DATADIR}/plugins" || return 1
}

View file

@ -0,0 +1,38 @@
#!/sbin/openrc-run
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
need localmount
}
start() {
ebegin "Starting grafana server"
checkpath -d -o "${GRAFANA_USER}:${GRAFANA_GROUP}" -m750 "/var/lib/grafana/dashboards"
checkpath -d -o "${GRAFANA_USER}:${GRAFANA_GROUP}" -m750 "/var/lib/grafana/plugins"
checkpath -d -o "${GRAFANA_USER}:${GRAFANA_GROUP}" -m750 "/var/lib/grafana/sessions"
start-stop-daemon --start -b \
--make-pidfile \
--pidfile /run/grafana.pid \
--chdir /usr/share/grafana \
--user ${GRAFANA_USER}:${GRAFANA_GROUP} \
--exec /usr/bin/grafana-server -- \
-config=/etc/grafana/grafana.ini \
cfg:default.paths.data=/var/lib/grafana \
cfg:default.paths.logs=/var/log/grafana
eend $?
}
stop() {
ebegin "Stopping grafana server"
start-stop-daemon --stop \
--pidfile /run/grafana.pid \
--user "${GRAFANA_USER}" \
--retry=TERM/20/KILL/5
eend $?
}

View file

@ -0,0 +1,25 @@
[Unit]
Description=Grafana
Documentation=http://docs.grafana.org
Wants=network-online.target
After=network-online.target
[Service]
User=grafana
Group=grafana
Type=simple
Restart=on-failure
RuntimeDirectory=grafana
WorkingDirectory=/usr/share/grafana
ExecStart=/usr/bin/grafana-server \
--config=/etc/grafana/grafana.ini \
--pidfile=/run/grafana/grafana.pid \
cfg:default.paths.logs=/var/log/grafana \
cfg:default.paths.data=/var/lib/grafana \
cfg:default.paths.plugins=/var/lib/grafana/plugins
LimitNOFILE=10000
TimeoutStopSec=20
UMask=0027
[Install]
WantedBy=multi-user.target