keycloak-scim/testsuite/performance/healthcheck.sh

35 lines
927 B
Bash
Raw Normal View History

2017-07-13 18:25:26 +00:00
#!/bin/bash
function isKeycloakHealthy {
echo Checking instance $1
CODE=`curl -s -o /dev/null -w "%{http_code}" $1/realms/master`
[ "$CODE" -eq "200" ]
}
function waitUntilSystemHealthy {
echo Waiting until all Keycloak instances are healthy...
if [ -z $1 ]; then ITERATIONS=60; else ITERATIONS=$1; fi
C=0
SYSTEM_HEALTHY=false
while ! $SYSTEM_HEALTHY; do
C=$((C+1))
if [ $C -gt $ITERATIONS ]; then
echo System healthcheck failed.
exit 1
fi
sleep 2
SYSTEM_HEALTHY=true
for URI in $KEYCLOAK_SERVER_URIS ; do
if ! isKeycloakHealthy $URI; then
echo Instance is not healthy.
SYSTEM_HEALTHY=false
fi
done
done
echo System is healthy.
}
if [ -z "$KEYCLOAK_SERVER_URIS" ]; then KEYCLOAK_SERVER_URIS=http://localhost:8080/auth; fi
waitUntilSystemHealthy