#!/bin/bash
set -eu
## Database driver
if [[ $DD_ENABLED == "TRUE" ]]; then
  echo "Datadog is enabled"
  export DD_HTTP_CONF="include /usr/share/nginx/dd_configs/nginx_dd_http.conf;"
  export DD_LOCATION_CONF="include /usr/share/nginx/dd_configs/nginx_dd_location.conf;"
else
  echo "Datadog is disabled"
  export DD_HTTP_CONF=""
  export DD_LOCATION_CONF=""
fi

envsubst '${DNS_SERVER},
  ${DD_HTTP_CONF},
  ${DD_LOCATION_CONF},
  ${PROXY_CACHE_PATH},
  ${PROXY_CACHE_KEYS_ZONE},
  ${PROXY_CACHE_MAX_SIZE},
  ${PROXY_CACHE_INACTIVE},
  ${SERVER_NAME},
  ${BACKEND_ADDRESS},
  ${BACKEND_PROTO},
  ${PROXY_BUFFER_SIZE},
  ${ACCESS_LOG_STATUS},
  ${PROXY_BUFFERS},
  ${PROXY_BUSY_BUFFERS_SIZE},
  ${HEALTHCHECK_ENDPOINTS},
  ${OAUTH_ENDPOINTS},
  ${DISABLED_AUTH_ENDPOINTS_1},
  ${DISABLED_AUTH_ENDPOINTS_2},
  ${DATACOMPLETENESS_ENDPOINT},
  ${ADS_PERFOMANCE_ENDPOINT},
  ${ADS_PERFOMANCE_CACHE_INACTIVE},
  ${CHARTS_ENDPOINT_1},
  ${CHARTS_ENDPOINT_2},
  ${PUBLIC_TRACK_POSITIONS_PLAYLISTS_1},
  ${SHORT_CACHE_INACTIVE},
  ${SHORT_CACHE_INACTIVE_V2},
  ${DISABLED_ENDPOINT}' \
  < /usr/share/nginx/nginx.template.conf > /etc/nginx/nginx.conf

envsubst '${DD_SERVICE}' < /usr/share/nginx/dd_configs/dd-config.json.template > /etc/nginx/dd-config.json

cat /etc/nginx/nginx.conf

nginx -t

if [[ $TESTING == "TRUE" ]]; then
  echo "Configuration test has been passed"
  exit 0
else
  echo "Starting nginx"
  exec nginx -g 'daemon off;'
fi
