#!/bin/sh set -eu : "${ADMIN_DASHBOARD_CONTROL_API_URL:?ADMIN_DASHBOARD_CONTROL_API_URL is required}" export ADMIN_DASHBOARD_LISTEN_ADDR="${ADMIN_DASHBOARD_LISTEN_ADDR:-:8090}" export ADMIN_DASHBOARD_CONTROL_API_TIMEOUT_SECONDS="${ADMIN_DASHBOARD_CONTROL_API_TIMEOUT_SECONDS:-10}" export ADMIN_DASHBOARD_LAST_COMPLETED_COUNT="${ADMIN_DASHBOARD_LAST_COMPLETED_COUNT:-20}" export ADMIN_DASHBOARD_POLL_INTERVAL_SECONDS="${ADMIN_DASHBOARD_POLL_INTERVAL_SECONDS:-5}" # Tokens/passwords (CONTROL_API_AGENT_TOKEN, ADMIN_DASHBOARD_*) are deliberately # NOT templated into the YAML: the binary reads them straight from this # container's environment (names default in the config loader), so secrets # never land in a file inside the container. envsubst '${ADMIN_DASHBOARD_LISTEN_ADDR} ${ADMIN_DASHBOARD_CONTROL_API_URL} ${ADMIN_DASHBOARD_CONTROL_API_TIMEOUT_SECONDS} ${ADMIN_DASHBOARD_LAST_COMPLETED_COUNT} ${ADMIN_DASHBOARD_POLL_INTERVAL_SECONDS}' \ < /etc/admin-dashboard/admin-dashboard.yaml.tmpl > /etc/admin-dashboard/admin-dashboard.yaml exec /usr/local/bin/admin-dashboard -config /etc/admin-dashboard/admin-dashboard.yaml