Files
tripleo-heat-templates/extraconfig/tasks/pacemaker_common_functions.sh
Giulio Fidente 9e5bc65938 Split pacemaker common check_service function out of _restart.sh
Also split out echo_error function to DRY the error output code and
allow changing the way we report errors in a single place.

Change-Id: I448bf0eb49390f03155335736bb4ab4e979db128
Co-Authored-By: Jiri Stransky <jistr@redhat.com>
2016-01-26 15:21:24 +01:00

40 lines
894 B
Bash
Executable File

#!/bin/bash
set -eu
function check_resource {
if [ "$#" -ne 3 ]; then
echo_error "ERROR: check_resource function expects 3 parameters, $# given"
exit 1
fi
service=$1
state=$2
timeout=$3
if [ "$state" = "stopped" ]; then
match_for_incomplete='Started'
else # started
match_for_incomplete='Stopped'
fi
if timeout -k 10 $timeout crm_resource --wait; then
node_states=$(pcs status --full | grep "$service" | grep -v Clone)
if echo "$node_states" | grep -q "$match_for_incomplete"; then
echo_error "ERROR: cluster finished transition but $service was not in $state state, exiting."
exit 1
else
echo "$service has $state"
fi
else
echo_error "ERROR: cluster remained unstable for more than $timeout seconds, exiting."
exit 1
fi
}
function echo_error {
echo "$@" | tee /dev/fd2
}