#!/usr/bin/env python3 """termix_xff_install.py LABEL — install Termix from the drill on 9202 through the product, make the first account (the fixture's own sign-up: it lifts the setup gate), run termix_xff.py LABEL, remove the app through the product.""" import os, runpy, sys sys.path.insert(0, "/mnt/5_hdd/felhom.eu/git/app-catalog-felhom.eu/scripts") import box_walk as w import upgrade_fixtures_box28 as f28 w.login() try: if w.stack("termix").get("deployed"): w.remove("termix") w.refresh_box_mirror(); w.sync_rescan() if not w.deploy("termix", "termix"): print("install failed"); sys.exit(1) t = f28.FIXTURES28["termix"].seed(w, "termix", w.say) print("seed:", bool(t)) # 2.9.2 dropped its route for a while right after the first install (502, then 404 — 2026-10-28): wait until the # container is healthy and stays so for 60 s before the test import time for _ in range(40): if w.guest("docker inspect -f '{{.State.Health.Status}}' termix").strip() == "healthy": break time.sleep(10) time.sleep(60) print("health before the test:", w.guest("docker inspect -f '{{.State.Health.Status}} {{.RestartCount}}' termix").strip()) sys.argv = ["termix_xff.py", sys.argv[1]] runpy.run_path(os.path.join(os.path.dirname(os.path.abspath(__file__)), "termix_xff.py"), run_name="__main__") finally: if w.stack("termix").get("deployed"): w.remove("termix") print("\n".join(w.LOG[-3:]))