3 WAIT_TIME
=340 # LCM healthcheck needs 2x(30+140) senconds
4 SERVICES_WITH_HEALTH
="nbi ro zookeeper lcm mon light-ui pol"
5 NUM_SERVICES_WITH_HEALTH
=$
(echo $SERVICES_WITH_HEALTH |
wc -w)
8 while getopts "w:s:n:c:" o
; do
17 NUM_SERVICES_WITH_HEALTH
=${OPTARG}
20 SERVICES_WITH_HEALTH
="${OPTARG}"
28 while [ $time -le "$WAIT_TIME" ]; do
29 if [ "$(docker ps | grep " ${STACK_NAME}_
" | grep -i healthy | wc -l)" -ge "$NUM_SERVICES_WITH_HEALTH" ]; then
30 # all dockers are healthy now.
31 # final sleep is needed until more health checks are added to validate system is ready to handle requests
40 echo "Not all Docker services are healthy"
41 docker ps |
grep " ${STACK_NAME}_"
43 for S_WITH_HEALTH
in $SERVICES_WITH_HEALTH ; do
44 docker ps |
grep " ${STACK_NAME}_" |
grep -i healthy |
grep -q "_${S_WITH_HEALTH}." && continue
46 echo BEGIN LOGS of container
${S_WITH_HEALTH} not healthy
47 docker service logs
${STACK_NAME}_
${S_WITH_HEALTH} 2>&1 |
tail -n 100
48 echo END LOGS of container
${S_WITH_HEALTH} not healthy