Files
felhom.eu/documentation/audits/night-2026-09-25/tools/drillretest.py
T

22 lines
1.2 KiB
Python

"""vikunja: the catalog RE-TESTS its step — the probe port back to 3456 (the step now passes) and a new tested_at on
the ladder entry (so the ladder's print changes and R-680's record no longer binds)."""
import json, re, time
import walk as w
p = f"{w.DRILL}/templates/vikunja/.felhom.yml"
w.sh(["git", "-C", w.DRILL, "pull", "-q", "--rebase", "origin", "main"], timeout=120)
s = open(p).read()
s2 = re.sub(r"(healthcheck:\n\s+checks:\n\s+- type: api\n\s+port: )8999\b", r"\g<1>3456", s, count=1)
assert s2 != s
lines = s2.split("\n"); i = lines.index("update_ladder:") + 1
e = json.loads(lines[i][4:]); e["tested_at"] = "2026-09-24T20:40:00Z"; lines[i] = " - " + json.dumps(e, ensure_ascii=False)
open(p, "w").write("\n".join(lines))
w.sh(["git", "-C", w.DRILL, "commit", "-qam", "NIGHT-C vikunja step re-tested (probe 3456, new tested_at)"])
w.sh(["git", "-C", w.DRILL, "push", "-q", "origin", "main"], timeout=120)
head = w.sh(["git", "-C", w.DRILL, "rev-parse", "--short", "HEAD"]).stdout.strip()
w.login()
for k in range(40):
w.sync_rescan()
if w.guest("cd /var/lib/docker/volumes/felhom-controller-data/_data/data/catalog-cache && git rev-parse --short HEAD").strip() == head:
print("vikunja re-tested; box clone at", head); break
time.sleep(8)