#!/usr/bin/env bash if [ -f ~/.homestead-features/wsl_user_name ]; then WSL_USER_NAME="$(cat ~/.homestead-features/wsl_user_name)" WSL_USER_GROUP="$(cat ~/.homestead-features/wsl_user_group)" else WSL_USER_NAME=vagrant WSL_USER_GROUP=vagrant fi export DEBIAN_FRONTEND=noninteractive if [ -f /home/$WSL_USER_NAME/.homestead-features/elasticsearch ] then echo "Elasticsearch already installed." exit 0 fi touch /home/$WSL_USER_NAME/.homestead-features/elasticsearch chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features # Determine version from config set -- "$1" IFS="."; if [ -z "${version}" ]; then installVersion="" # by not specifying we'll install latest majorVersion="7" # default to version 7 else installVersion="=$version" majorVersion="$(echo $version | head -c 1)" fi echo "Elasticsearch installVersion: $installVersion" echo "Elasticsearch majorVersion: $majorVersion" # Install Java & Elasticsearch curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /etc/apt/keyrings/elasticsearch.gpg if [ ! -f /etc/apt/sources.list.d/elastic-$majorVersion.x.list ]; then echo "deb [signed-by=/etc/apt/keyrings/elasticsearch.gpg] https://artifacts.elastic.co/packages/$majorVersion.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-$majorVersion.x.list fi sudo apt-get update sudo apt-get -y install openjdk-11-jre sudo apt-get -y install elasticsearch"$installVersion" # Start Elasticsearch on boot sudo update-rc.d elasticsearch defaults 95 10 # Update configuration to use 'homestead' as the cluster sudo sed -i "s/#cluster.name: my-application/cluster.name: homestead/" /etc/elasticsearch/elasticsearch.yml # Enable Start Elasticsearch sudo systemctl enable elasticsearch.service sudo service elasticsearch start