#!/usr/bin/bash

if [ -f /etc/sysconfig/ng-kickstart ]; then

    # When we started
    START=$(date +%s)
    glusterwait=180

    source /etc/sysconfig/ng-kickstart

    PRIVATEIPADDR1="${clusterprivateipaddrs%%,*}"
    PRIVATEIPADDR2="${clusterprivateipaddrs##*,}"

    if [[ -z "$PRIVATEIPADDR1" || -z "$PRIVATEIPADDR2" ]]; then
        echo "Skipping $(basename "$0") as one or both clusterprivateipaddrs is not set" >&2
        # Should this be a failure? missing ng-kickstart isn't.....
        exit 0
    fi

    while ! nc -w 1 "$PRIVATEIPADDR1" 24007 < /dev/null 2>/dev/null && ! nc -w 1 "$PRIVATEIPADDR2" 24007 < /dev/null 2>/dev/null;
    do
        sleep 1;
        NOW=$(date +%s)
        ELAPSED=$((NOW-START))
        if [[ $ELAPSED -ge $glusterwait ]]; then
            echo "Timed out waiting for gluster port 24007 to become reachable on $PRIVATEIPADDR1 or $PRIVATEIPADDR2" >&2
            exit 1
        fi
    done


fi
