#!/bin/bash

SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
. $SCRIPT_DIR/common.sh "$@"


if [[ $IS_MASTER == 1 ]]; then

    echo "-- SETTING UP ZOOKEEPER --------------------------------------------------------"

    echo " - Adapting configuration in file zoo.cfg"
    sudo sed -i s/"#server.1=zookeeper1:2888:3888"/"server.1=$MASTER_IP:2888:3888"/g /etc/zookeeper/conf/zoo.cfg

    # TODO reenable after clusterizing zookeeper
    # TODO FIXME Remove hardcoding of IPS and make them configurable at Provisionning level
    #echo " - !! TODO : remove hardcoding of IPs and make them configurable at Provisionning level !!"
    #sudo sed -i s/"#server.2=zookeeper2:2888:3888"/"server.2=192.168.10.11:2888:3888"/g /etc/zookeeper/conf/zoo.cfg
    #sudo sed -i s/"#server.3=zookeeper3:2888:3888"/"server.3=192.168.10.12:2888:3888"/g /etc/zookeeper/conf/zoo.cfg

    echo " - Generating myid"
    # extract id from ip address
    get_ip_address
    if [[ "$IP_ADDRESS" =~ ([0-9\.]+)([0-9]{1}) ]]; then
        export NUMBER=${BASH_REMATCH[2]}
        export ZK_ID=$(($NUMBER + 1))
    else
        echo " !! Unable to extract id from IP address "
        exit -20
    fi
    sudo bash -c "echo $ZK_ID > /etc/zookeeper/conf/myid"

    # restarting zookeeper
    echo " - restarting zookeeper"
    sudo systemctl restart zookeeper > /tmp/setup_zk_log 2>&1
    fail_if_error $? "/tmp/setup_zk_log" -1

fi

