#!/bin/sh err=0 if [ "$(pcs stonith list 2> /dev/null | wc -l)" -eq 0 ]; then echo "ERROR: pcs: no agents available..." err=$((err+1)) fi echo "INFO: pcs: agents available..." # test bundled libraries declare -A libs=( ["aliyunsdkcore"]="sys.path.insert(0, '/usr/lib/fence-agents/bundled/aliyun');" ["azure"]="sys.path.insert(0, '/usr/lib/fence-agents/bundled/azure');" ["msrestazure"]="sys.path.insert(0, '/usr/lib/fence-agents/bundled/azure');" ) for lib in "${!libs[@]}"; do output=$(python3 -c "import sys; sys.path.append('/usr/share/fence'); \ ${libs[$lib]} \ import $lib" 2>&1) if [ $? -ne 0 ]; then echo -e "ERROR: Failed to import $lib:\n$output" err=$((err+1)) else echo "INFO: importing $lib works..." fi done if [ $err -ge 1 ]; then echo -e "\nERROR: $err tests FAILED..." exit 1 fi