42 lines
1.4 KiB
Bash
Executable File
42 lines
1.4 KiB
Bash
Executable File
#!/bin/bash -xe
|
|
|
|
if [[ $(uname) == "Darwin" ]] ; then
|
|
# https://github.com/purpleidea/mgmt/issues/33
|
|
echo "This test is broken on macOS, skipping!"
|
|
exit
|
|
fi
|
|
|
|
# run a graph, with prometheus support
|
|
$timeout --kill-after=60s 55s ./mgmt run --tmp-prefix --no-pgp --prometheus --yaml prometheus-4.yaml &
|
|
pid=$!
|
|
sleep 15s # let it converge
|
|
|
|
# For test debugging purpose
|
|
curl 127.0.0.1:9233/metrics
|
|
|
|
# Check for mgmt_resources
|
|
curl 127.0.0.1:9233/metrics | grep '^mgmt_resources{kind="file"} 4$'
|
|
|
|
# One CheckApply for a File ; in noop mode.
|
|
curl 127.0.0.1:9233/metrics | grep 'mgmt_checkapply_total{apply="false",errorful="false",eventful="true",kind="file"} 1$'
|
|
|
|
# Two CheckApply for a File ; without errors, with events
|
|
curl 127.0.0.1:9233/metrics | grep 'mgmt_checkapply_total{apply="true",errorful="false",eventful="true",kind="file"} 2$'
|
|
|
|
# Multiple CheckApplies with errors
|
|
curl 127.0.0.1:9233/metrics | grep 'mgmt_checkapply_total{apply="true",errorful="true",eventful="true",kind="file"} [0-9]\+'
|
|
|
|
# One soft failure ATM
|
|
curl 127.0.0.1:9233/metrics | grep 'mgmt_failures{failure="soft",kind="file"} 1$'
|
|
|
|
# Multiple soft failures since startup
|
|
if curl 127.0.0.1:9233/metrics | grep 'mgmt_failures_total{failure="soft",kind="file"} 1$'
|
|
then
|
|
false
|
|
fi
|
|
curl 127.0.0.1:9233/metrics | grep 'mgmt_failures_total{failure="soft",kind="file"} [0-9]\+'
|
|
|
|
killall -SIGINT mgmt # send ^C to exit mgmt
|
|
wait $pid # get exit status
|
|
exit $?
|