#!/usr/bin/env bash # run-surface-monitoring.sh — hourly remote-only ecosystem surface scan # Public only on taler.hacktivism.ch: # https://taler.hacktivism.ch/taler-monitoring-surface/ # https://taler.hacktivism.ch/taler-monitoring-surface_err/ # set -uo pipefail AGENT_DIR=$(cd "$(dirname "$0")" && pwd) export AGENT_LABEL="${AGENT_LABEL:-surface-host-agent}" export STATE_NAME="${STATE_NAME:-taler-surface-monitoring}" export TALER_DOMAIN="${TALER_DOMAIN:-hacktivism.ch}" # surface is remote-only — force flags (ignore shared env) export INSIDE_PODMAN=0 export LOCAL_STACK=0 export SKIP_SSH=1 export INSIDE_MODE="${INSIDE_MODE:-none}" export CONTINUE_ON_ERROR="${CONTINUE_ON_ERROR:-1}" # many hosts; allow up to 45 min wall (phase also has RUN_TIMEOUT) export RUN_TIMEOUT="${RUN_TIMEOUT:-2400}" # dedicated job: always surface only (never inherit PHASES from shared env) export PHASES="${PHASES:-surface monpages}" # Only merchant public front — not bank/exchange export MON_HOSTS="${MON_HOSTS:-taler.hacktivism.ch}" export HTML_OUT="${HTML_OUT:-$HOME/monitoring-sites-staging}" export DEPLOY_WWW_ROOT="${DEPLOY_WWW_ROOT:-/var/www/monitoring-sites}" export HTML_OK_DIR="taler-monitoring-surface" export HTML_ERR_DIR="taler-monitoring-surface_err" export HTML_URL_OK="/taler-monitoring-surface/" export HTML_URL_ERR="/taler-monitoring-surface_err/" export PAGE_LABEL="taler-monitoring-surface" # ecosystem catalog by default (not domain-only) export SURFACE_SCOPE="${SURFACE_SCOPE:-ecosystem}" export TALER_DOMAIN_FROM_CLI=0 # Do not run apt-deploy ensure for surface-only jobs export APT_DEPLOY_ENSURE=0 exec bash "$AGENT_DIR/run-host-report.sh" "$@"