#!/bin/bash -e

distro=$1
dist=$2
apacheuser=$3
apachegroup=$4
nagiosuser=$5
nagiosgroup=$6

pkgname="elasticsearch-1.7.6"

echo "Installing Elasticsearch..."

# Delete the old archive
rm -rf "$pkgname"

# Extract archive
tar -xzf "$pkgname.tar.gz"

# Make and install 
(
    mkdir -p /usr/local/nagioslogserver/elasticsearch /var/log/elasticsearch /var/run/elasticsearch
    cp -r $pkgname/* /usr/local/nagioslogserver/elasticsearch

    if [ "$distro" == "Debian" ] || [ "$distro" == "Ubuntu" ]; then
        cp mods/etc/init.d/elasticsearch.deb.init /etc/init.d/elasticsearch
    else
        cp mods/etc/init.d/elasticsearch.init /etc/init.d/elasticsearch
    fi

    # In Ubuntu/Debian there is no sysconfig folder, instead they are put in defaults 
    if [ -d "/etc/sysconfig" ]; then
        cp -r mods/etc/sysconfig/* /etc/sysconfig
    else
        cp -r mods/etc/sysconfig/* /etc/default
    fi

    if [ -d "/usr/lib/systemd" ] ; then
        cp -pr mods/etc/systemd/* /usr/lib/systemd
        cp -pr mods/etc/systemd/* /usr/lib/systemd/system
    fi

    cp -r mods/elasticsearch/* /usr/local/nagioslogserver/elasticsearch
    mv -f /usr/local/nagioslogserver/elasticsearch/elasticsearch.in.sh /usr/local/nagioslogserver/elasticsearch/bin
	chown -R $nagiosuser:$nagiosuser /usr/local/nagioslogserver/elasticsearch /var/log/elasticsearch /var/run/elasticsearch
    chgrp $apachegroup /usr/local/nagioslogserver/elasticsearch/config/elasticsearch.yml
    chmod 664 /usr/local/nagioslogserver/elasticsearch/config/elasticsearch.yml
    chmod +x /etc/init.d/elasticsearch /usr/local/nagioslogserver/elasticsearch/bin/elasticsearch

    systemctl daemon-reload
    systemctl enable elasticsearch
    systemctl start elasticsearch

)

# Post-install modifications
./post-install

# Do a simple sanity check to make sure some key files exist...
for f in /usr/local/nagioslogserver/elasticsearch/bin/elasticsearch /usr/local/nagioslogserver/elasticsearch/config/elasticsearch.yml ; do
    if [ ! -f "$f" ]; then
        echo "ERROR: Elasticsearch install appears to have failed - exiting.  Missing file = $f"
        exit 1
    fi
done

# Things are okay
echo "Elasticsearch installed OK"

