Verify elasticsearch working

This commit is contained in:
Alexandre
2023-03-09 09:26:26 +01:00
committed by GitHub
parent 98b5df4492
commit ed67513b51

View File

@@ -13,68 +13,55 @@ if [[ $($LAUNCHER -V) == *"not installed"* ]]; then
exit 0
fi
############
# BASED ON #
#################################################################################
# https://raw.githubusercontent.com/nextcloud/vm/master/apps/fulltextsearch.sh #
# T&M Hansson IT AB © - 2021, https://www.hanssonit.se/ #
# SwITNet Ltd © - 2021, https://switnet.net/ #
#################################################################################
if $LAUNCHER fulltextsearch:test &>/dev/null; then
echo "Full Text Search is already working"
if bashio::config.true 'Full_Text_Search'; then
# shellcheck disable=SC1073,SC1072,SC1009
if $LAUNCHER fulltextsearch:test &>/dev/null; then
echo "Full Text Search is already working"
break 2
fi
############
# BASED ON #
#################################################################################
# https://raw.githubusercontent.com/nextcloud/vm/master/apps/fulltextsearch.sh #
# T&M Hansson IT AB © - 2021, https://www.hanssonit.se/ #
# SwITNet Ltd © - 2021, https://switnet.net/ #
#################################################################################
echo "Installing Full Text Search"
# Reset Full Text Search to be able to index again, and also remove the app to be able to install it again
# occ fulltextsearch:reset &>/dev/null || true
# APPS=(fulltextsearch fulltextsearch_elasticsearch files_fulltextsearch)
# for app in "${APPS[@]}"; do
# # If app exists, remove it
# [ -n $($LAUNCHER app:getpath $app) ] && $LAUNCHER app:remove $app &>/dev/null
# done
if bashio::config.true 'Full_Text_Search'; then
# Get Full Text Search app for nextcloud
for app in "${APPS[@]}"; do
echo "... installing apps : $app"
$LAUNCHER app:install $app >/dev/null
$LAUNCHER app:enable $app >/dev/null
done
chown -R abc:abc $NEXTCLOUD_PATH/apps
# Get Full Text Search app for nextcloud
echo "Installing Full Text Search"
for app in "${APPS[@]}"; do
echo "... installing apps : $app"
$LAUNCHER app:install $app >/dev/null
$LAUNCHER app:enable $app >/dev/null
done
chown -R abc:abc $NEXTCLOUD_PATH/apps
if bashio::config.has_value 'elasticsearch_server'; then
HOST=$(bashio::config 'elasticsearch_server')
if bashio::config.has_value 'elasticsearch_server'; then
HOST=$(bashio::config 'elasticsearch_server')
else
bashio::log.warning 'Please define elasticsearch server url in addon options. Default value of http://db21ed7f-elasticsearch:9200 will be used'
HOST=http://db21ed7f-elasticsearch:9200
fi
# Final setup
echo "... settings apps"
$LAUNCHER fulltextsearch_elasticsearch:configure "{\"elastic_host\":\"$HOST\"}" &>/dev/null
$LAUNCHER fulltextsearch_elasticsearch:configure "{\"elastic_index\":\"my_index\"}" &>/dev/null
$LAUNCHER fulltextsearch_elasticsearch:configure "{\"analyzer_tokenizer\":\"standard\"}" &>/dev/null
$LAUNCHER fulltextsearch:configure '{"search_platform":"OCA\\FullTextSearch_Elasticsearch\\Platform\\ElasticSearchPlatform"}' &>/dev/null || true
$LAUNCHER files_fulltextsearch:configure "{\"files_pdf\":\"1\",\"files_office\":\"1\"}" &>/dev/null || true
# Is server detected
# Wait further for cache for index to work
echo "Waiting for a few seconds before indexing starts..."
sleep 5s
if $LAUNCHER fulltextsearch:test &>/dev/null; then
bashio::log.info "Full Text Search was successfully installed using elasticsearch server $HOST!"
else
bashio::log.warning "Elasticsearch can't connect. Please manually define its server in the options"
fi
else
bashio::log.warning 'Please define elasticsearch server url in addon options with the format "ip:port" such as "192.168.178.1:9200". Default value of http://db21ed7f-elasticsearch:9200 will be used'
HOST=http://db21ed7f-elasticsearch:9200
#HOST=$(bashio::network.ipv4_address)
#HOST="${HOST%/*}:9200"
echo "Full_Text_Search option not set"
fi
# Final setup
echo "... settings apps"
#occ fulltextsearch:configure '{"search_platform":"ElasticSearchPlatform"}'
$LAUNCHER fulltextsearch_elasticsearch:configure "{\"elastic_host\":\"$HOST\"}" &>/dev/null
$LAUNCHER fulltextsearch_elasticsearch:configure "{\"elastic_index\":\"my_index\"}" &>/dev/null
$LAUNCHER fulltextsearch_elasticsearch:configure "{\"analyzer_tokenizer\":\"standard\"}" &>/dev/null
$LAUNCHER fulltextsearch:configure '{"search_platform":"OCA\\FullTextSearch_Elasticsearch\\Platform\\ElasticSearchPlatform"}' &>/dev/null || true
$LAUNCHER files_fulltextsearch:configure "{\"files_pdf\":\"1\",\"files_office\":\"1\"}" &>/dev/null || true
# Is server detected
# if [ curl $HOST ] &>/dev/null; then
# Wait further for cache for index to work
echo "Waiting for a few seconds before indexing starts..."
sleep 10s
if $LAUNCHER fulltextsearch:test &>/dev/null; then
bashio::log.info "Full Text Search was successfully installed using elasticsearch server $HOST!"
else
bashio::log.warning "Elasticsearch can't connect. Please manually define its server in the options"
fi
else
echo "Full_Text_Search option not set"
fi