mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-11 21:26:44 +00:00
769163ca7 computed DASHBOARD_URL and MATOMO_URL from INFINITO_DOMAIN
right after load_repo_env in common.sh. The orchestrator sources
common.sh inside the bare runtime image before Python is installed,
where load_repo_env returns without loading the env, so the guard
aborted the debian, ubuntu and fedora workspace jobs before their first
step.
common.sh now offers stack_url, which reads INFINITO_DOMAIN when it is
called. The compose steps resolve their URLs in plain assignments after
their own source of common.sh, so a missing domain still aborts the step
instead of handing an empty URL to an assertion that expects 000.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
26 lines
1.2 KiB
Bash
Executable File
26 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Deploy on performance hardware — deploy the full set of applications.
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
# shellcheck source=scripts/tests/workspace/utils/common.sh
|
|
source "${SCRIPT_DIR}/../utils/common.sh"
|
|
|
|
echo "Deploying matomo (full cycle: deploy + update pass) so it becomes reachable via its dedicated inventory entry."
|
|
# Exception: the onion provider has to stay out. svc-net-tor is exclusive, so once it joins the groups matomo is served onion-only, loses its clearnet vhost, and the assertion below aborts in TLS before HTTP.
|
|
make compose-deploy mode=reinstall apps="${MATOMO_APP}" full_cycle=true disable=tor
|
|
inspect
|
|
|
|
echo "Re-trusting the CA after the fresh deploy rebuilt the certificates."
|
|
make network-trust-ca
|
|
|
|
matomo_url="$(stack_url matomo)"
|
|
dashboard_url="$(stack_url dashboard)"
|
|
|
|
echo "Verifying matomo is now reachable after its dedicated deploy."
|
|
assert_http_status 200 "${matomo_url}"
|
|
|
|
echo "Verifying the dashboard is no longer reachable after the matomo-only fresh deploy."
|
|
# Exception: Expect 000 because curl aborts in TLS before HTTP when the removed hostname is missing from the certificate SANs.
|
|
assert_http_status 000 "${dashboard_url}"
|