#!/bin/bash
set -e

API_URL=${API_URL:-"https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_SERVICE_PORT"}

export BEARER_TOKEN_PATH TOKEN NODE_NAME NODE_IP AGENT_HOSTNAME
BEARER_TOKEN_PATH=/var/run/secrets/kubernetes.io/serviceaccount/token
TOKEN="$(cat $BEARER_TOKEN_PATH)"
NODE_NAME="$(curl -s "$API_URL/api/v1/namespaces/$POD_NAMESPACE/pods/$HOSTNAME" --header "Authorization: Bearer $TOKEN" --insecure | jq -r '.spec.nodeName')"
echo "Node Name set (${NODE_NAME})"
NODE_IP="$(curl -s "$API_URL/api/v1/namespaces/$POD_NAMESPACE/pods/$HOSTNAME" --header "Authorization: Bearer $TOKEN" --insecure | jq -r '.status.hostIP')"
echo "Node IP set (${NODE_IP})"
AGENT_HOSTNAME=$NODE_NAME

if [ -n "$ENABLE_KUBERNETES" ]; then
  export KUBERNETES_BEARER_TOKEN_PATH=${BEARER_TOKEN_PATH}
  export KUBERNETES_URL="https://${NODE_IP}:10250"
  echo "Setting KUBERNETES_URL: $KUBERNETES_URL"
fi

echo "Building config.toml!"
envtpl config.toml.tpl | sed  '/^$/d' > config.toml

echo "Finished building toml..."
echo "###########################################"
echo "###########################################"
cat config.toml
echo "###########################################"
echo "###########################################"
telegraf -config config.toml -quiet
