aboutsummaryrefslogtreecommitdiff
path: root/kolla/docker/keepalived/check_alive.sh
diff options
context:
space:
mode:
Diffstat (limited to 'kolla/docker/keepalived/check_alive.sh')
-rw-r--r--kolla/docker/keepalived/check_alive.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/kolla/docker/keepalived/check_alive.sh b/kolla/docker/keepalived/check_alive.sh
new file mode 100644
index 000000000..857131123
--- /dev/null
+++ b/kolla/docker/keepalived/check_alive.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+# This will return 0 when it successfully passes all checks for all daemons
+# Failures return 1
+
+declare -A check_results
+final_result=0
+
+if [ -d "/checks" ]; then
+ CHECKS=$(find /checks -type f)
+fi
+
+if [ "${CHECKS}" ]; then
+ # Store results
+ for check in ${CHECKS}; do
+ # Run check but do not print stderr
+ # as single check can be executed manually to see the result
+ ${check} 2>/dev/null
+ check_results[${check}]=$?
+ done
+
+ # Print results and save the final result
+ for i in "${!check_results[@]}"; do
+ if [ "${check_results[$i]}" == "0" ]; then
+ echo "Keepalived check script ${i} succeeded."
+ else
+ final_result=1
+ echo "Keepalived check script ${i} failed."
+ fi
+ done
+
+ exit ${final_result}
+fi