#!/usr/bin/with-contenv bash

echo -e "[init-geoip2influx-setup] Starting"


if ! pip list 2>&1 | grep -q "influxdb"; then
  echo '-------------------------------------------------------------'
  echo '| Mod by Gilbn                                              |'
  echo '| Adding required modules for Geoip2Influx to install list  |'
  echo '-------------------------------------------------------------'
  echo "\
    geoip2==4.8.0 \
    geohash2==1.1 \
    influxdb==5.3.2 \
    python-dotenv \
    influxdb-client==1.44.0 \
    IPy==1.01" >> /mod-pip-packages-to-install.list
fi

# Create log folder
mkdir -p \
  /config/log/geoip2influx
# move old log if needed
if [ -f /config/geoip2db/geoip2influx.log ]; then
  mv /config/geoip2db/geoip2influx.log /config/log/geoip2influx
fi

# permissions
lsiown -R abc:abc \
  /geoip2influx \
  /config/log/geoip2influx

chmod +x /geoip2influx/run.py

# Display variables for troubleshooting
echo -e "[init-geoip2influx-setup] Variables set:\\n\\n
INFLUX_HOST=${INFLUX_HOST}\\n\
INFLUX_HOST_PORT=${INFLUX_HOST_PORT}\\n\
INFLUX_DATABASE=${INFLUX_DATABASE}\\n\
INFLUX_USER=${INFLUX_USER}\\n\
INFLUX_PASS=${INFLUX_PASS}\\n\
INFLUX_RETENTION=${INFLUX_RETENTION}\\n\
INFLUX_SHARD=${INFLUX_SHARD}\\n\\n
INFLUXDB_V2_TOKEN=${INFLUXDB_V2_TOKEN}\\n\
INFLUXDB_V2_URL=${INFLUXDB_V2_URL}\\n\
INFLUXDB_V2_ORG=${INFLUXDB_V2_ORG}\\n\
INFLUXDB_V2_BUCKET=${INFLUXDB_V2_BUCKET}\\n\
INFLUXDB_V2_RETENTION=${INFLUXDB_V2_RETENTION}\\n\
INFLUXDB_V2_DEBUG=${INFLUXDB_V2_DEBUG}\\n\
INFLUXDB_V2_BATCHING=${INFLUXDB_V2_BATCHING}\\n\
INFLUXDB_V2_BATCH_SIZE=${INFLUXDB_V2_BATCH_SIZE}\\n\
INFLUXDB_V2_FLUSH_INTERVAL=${INFLUXDB_V2_FLUSH_INTERVAL}\\n\\n
GEO_MEASUREMENT=${GEO_MEASUREMENT}\\n\
LOG_MEASUREMENT=${LOG_MEASUREMENT}\\n\
NGINX_LOG_PATH=${NGINX_LOG_PATH}\\n\
SEND_NGINX_LOGS=${SEND_NGINX_LOGS}\\n\
GEOIP2INFLUX_LOG_LEVEL=${GEOIP2INFLUX_LOG_LEVEL}\\n\
GEOIP2INFLUX_LOG_PATH=${GEOIP2INFLUX_LOG_PATH}\\n\
GEOIP_DB_PATH=${GEOIP_DB_PATH}\\n\
USE_INFLUXDB_V2=${USE_INFLUXDB_V2}\\n\
MAXMINDDB_USER_ID=${MAXMINDDB_USER_ID}\\n\
MAXMINDDB_LICENSE_KEY=${MAXMINDDB_LICENSE_KEY}\\n"

echo -e "[init-geoip2influx-setup] Finished"
