#!/bin/bash

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


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

    echo "-- SETTING UP KIBANA -----------------------------------------------------------"

    export ES_VERSION=6.0.0-beta2

    echo " - Creating elasticsearch user (if not exist)"
    elascticsearch_user_id=`id -u elasticsearch > /tmp/es_install_log 2>&1`
    if [[ $? != 0 ]]; then
        sudo useradd elasticsearch
    fi

    echo " - Simlinking Kibana config to /usr/local/etc/kibana"
    sudo ln -s /usr/local/lib/kibana-$ES_VERSION/config /usr/local/etc/kibana

    echo " - Simlinking Kibana binaries and scripts to /usr/local/sbin"
    sudo ln -s /usr/local/lib/kibana-$ES_VERSION/bin/kibana /usr/local/sbin/kibana

    echo " - Adapting kibana config"
    sudo sed -i s/"#server.host: \"localhost\""/"server.host: \"0.0.0.0\""/g /usr/local/etc/kibana/kibana.yml
    sudo sed -i s/"#server.name: \"your-hostname\""/"server.name: \"mes_master\""/g /usr/local/etc/kibana/kibana.yml

    echo " - Copying kibana systemd file"
    sudo cp $SCRIPT_DIR/utils/kibana.service /lib/systemd/system/
    sudo chmod 644 /lib/systemd/system/kibana.service

    echo " - Checking Systemd file"
    if [[ `systemctl status kibana | grep 'could not be found'` != "" ]]; then
        echo "kibana systemd file installation failed"
        exit -12
    fi
    sudo systemctl status kibana > /tmp/es_install_log 2>&1
    if [[ $? != 0 && $? != 3 ]]; then
        echo "kibana systemd file doesn't work as expected"
        exit -12
    fi  

    echo " - Testing systemd startup - starting Elasticsearch (required as dependency)"
    sudo systemctl start elasticsearch > /tmp/kibana_install_log 2>&1
    fail_if_error $? "/tmp/kibana_install_log" -1

    echo " - Testing systemd startup - starting Kibana"
    sudo systemctl start kibana > /tmp/kibana_install_log 2>&1
    fail_if_error $? "/tmp/kibana_install_log" -2

    echo " - Testing systemd startup - Checking startup"
    sleep 8
    sudo systemctl status kibana > /tmp/kibana_install_log 2>&1
    fail_if_error $? "/tmp/kibana_install_log" -3

    echo " - Testing systemd startup - stopping Kibana"
    sudo systemctl stop kibana > /tmp/kibana_install_log 2>&1
    fail_if_error $? "/tmp/kibana_install_log" -4

    echo " - Enabling Kibana on startup"
    sudo systemctl enable kibana > /tmp/kibana_install_log 2>&1
    fail_if_error $? "/tmp/kibana_install_log" -5


fi




