Files
computer-playbook/scripts/tests/workspace
kevinveenbirkenbachandClaude Opus 5 b40aa731fb fix(workspace): resolve the stack URLs when a step needs them, not on source
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>
2026-09-22 00:11:38 +02:00
..
…
…

Workspace Test Suite

This directory contains the modular workspace test suite for Infinito.Nexus. It validates the full local development flow from a clean state.

The entry point is 00_orchestrator.sh. It runs one or more tracks — subdirectories whose numbered scripts execute in order.

Tracks

base prepares the workspace and is a prerequisite for the other two. compose and swarm are independent of each other, which is what lets CI run them as separate jobs with a budget each.

Track File Purpose
base base/01_install.sh Installs package prerequisites and repository dependencies
base base/02_system.sh Shows disk usage and purges cached state
base base/03_build.sh Builds the local Docker image
base base/04_bootstrap.sh Bootstraps the development environment and starts the stack
base base/05_commit.sh Validates pre-commit hook enforcement and --no-verify bypass
base base/06_test.sh Runs the full validation suite
base base/07_console.sh Smoke-tests the interactive console REPL
compose compose/01_minimal.sh Compose deploy on minimal hardware with service exclusion
compose compose/02_performance.sh Compose deploy of the full application set on performance hardware
compose compose/03_reuse.sh Compose redeploy reusing existing inventory and packages
compose compose/04_teardown.sh Shuts down the stack and reverses environment changes
swarm swarm/01_teardown.sh Releases the development stack so the swarm cluster runs alone
swarm swarm/02_zombie.sh Swarm deploy of the MariaDB database role (svc-db-mariadb)
swarm swarm/03_roundtrip.sh Compose+swarm roundtrip of the PostgreSQL database role (svc-db-postgres)
swarm swarm/04_teardown.sh Shuts down the stack and reverses environment changes
Shared Purpose
utils/common.sh Shared bootstrap, constants, and generic helpers (HTTP assertion, inventory inspection)
utils/cache.sh Cache-stack assertions and probes (registry-cache, package-cache, DiD inner-build)
utils/teardown.sh Stack shutdown and environment reversal, shared by both closing steps

Usage

Run every track via the entry point:

bash scripts/tests/workspace/00_orchestrator.sh

Run selected tracks, in the order given, through INFINITO_WORKSPACE_TRACKS:

INFINITO_WORKSPACE_TRACKS="base swarm" bash scripts/tests/workspace/00_orchestrator.sh

An unknown track name aborts before anything else runs.

For documentation on the overall development workflow, see the Deploy Guide.