43 lines
1.1 KiB
Bash
43 lines
1.1 KiB
Bash
#!/bin/sh
|
|
|
|
os="$(cat "${__global:?}/explorer/os")"
|
|
case "$os" in
|
|
alpine|debian|ubuntu)
|
|
__package prometheus
|
|
;;
|
|
*)
|
|
echo "This type does not support $os. Exiting." >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
export GLOBAL_SCRAPE_INTERVAL=60s
|
|
export GLOBAL_EVALUATION_INTERVAL=60s
|
|
|
|
export EXTERNAL_LABELS=
|
|
|
|
if [ -f "${__object:?}/parameter/alertmanager-addr" ]; then
|
|
ALERTMANAGER_ADDR=$(cat "${__object:?}/parameter/alertmanager-addr")
|
|
fi
|
|
export ALERTMANAGER_ADDR
|
|
|
|
if [ -f "${__object:?}/parameter/rule-files" ]; then
|
|
RULE_FILES=$(cat "${__object:?}/parameter/rule-files")
|
|
fi
|
|
export RULE_FILES
|
|
|
|
SCRAPE_JOB_CONFIGS=$(cat "${__object:?}/parameter/scrape-job-config")
|
|
export SCRAPE_JOB_CONFIGS
|
|
|
|
# Generate and deploy configuration
|
|
mkdir -p "${__object:?}/files"
|
|
"${__type:?}/files/prometheus.yml.sh" > "${__object:?}/files/prometheus.yml"
|
|
|
|
require="__package/prometheus" __file /etc/prometheus/prometheus.yml \
|
|
--source "${__object:?}/files/prometheus.yml" \
|
|
--mode 0644 \
|
|
--onchange "service prometheus restart"
|
|
|
|
require="__package/prometheus" __start_on_boot prometheus
|
|
require="__package/prometheus" __service prometheus --action start
|