From 5d0dfeac5fcb981a7358d20b868d808c876929ad Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Mon, 19 Oct 2026 21:30:33 +0200 Subject: [PATCH] hostinstall harness: the two R-1167 behaviour cases SKIP out loud where there is no curl (the CI runner; CI 2106/2108 red) --- scripts/CHANGELOG.md | 4 +++- scripts/hostinstall-mode-harness.sh | 17 ++++++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/scripts/CHANGELOG.md b/scripts/CHANGELOG.md index 3efb87fb..7d63065a 100644 --- a/scripts/CHANGELOG.md +++ b/scripts/CHANGELOG.md @@ -26,7 +26,9 @@ credential (`resolve_git_creds`, which now reads the status instead of `curl -f` before (the brief said „as it already does"; it did not) — the HU lines are new. Harness cases (static + behaviour: the REAL `resolve_git_creds` + `die_live_box` extracted from the script, against a local fake hub on 127.0.0.1): every call maps 409; 409 → the EN + HU sentence, never „hub status 409"; 200 → the git user is still read. Red-proved on a -mutated copy (the 409 arm removed → both 409 cases FAIL with „hub status 409"). +mutated copy (the 409 arm removed → both 409 cases FAIL with „hub status 409"). **Fix the same night:** the CI runner has +no curl, so the two behaviour cases failed there (CI 2106, 2108); without curl they now SKIP out loud (the static case +runs everywhere; the pre-push hook, with curl, runs all three) — checked both ways, with and without curl on PATH. ## 2026-10-19 — the website's git-syncs read Gitea in-cluster and retry forever (`manifests/webpage.yaml`, gate 6) diff --git a/scripts/hostinstall-mode-harness.sh b/scripts/hostinstall-mode-harness.sh index ddd7490f..2f8ebeb4 100644 --- a/scripts/hostinstall-mode-harness.sh +++ b/scripts/hostinstall-mode-harness.sh @@ -330,7 +330,12 @@ r1167_run() { # → $out/$rc of resolve_git_creds against the fake kill "$pid" 2>/dev/null || true; wait "$pid" 2>/dev/null || true [[ -n "$port" ]] } -if ! grep -q '^resolve_git_creds() {' "$r1167_fns" || ! grep -q '^die_live_box() {' "$r1167_fns"; then +if ! command -v curl >/dev/null 2>&1; then + # The CI runner carries python3 and git and nothing else (no curl): the installer's own HTTP calls cannot run there. + # The static case above still runs everywhere; the pre-push hook (with curl) runs these two. + verdict SKIP "R-1167 live-box 409 is worded (EN + HU)" "no curl on this machine — the installer's HTTP calls cannot run" + verdict SKIP "R-1167 a 200 still reads the git credential" "no curl on this machine" +elif ! grep -q '^resolve_git_creds() {' "$r1167_fns" || ! grep -q '^die_live_box() {' "$r1167_fns"; then verdict FAIL "R-1167 live-box 409 is worded (EN + HU)" "could not extract resolve_git_creds/die_live_box from the script" elif ! r1167_run 409; then verdict SKIP "R-1167 live-box 409 is worded (EN + HU)" "the local fake hub did not start" @@ -339,10 +344,12 @@ elif [[ $rc -ne 0 && "$out" == *"The operator deletes the old host on the hub fi else verdict FAIL "R-1167 live-box 409 is worded (EN + HU)" "rc=$rc; got: $(echo "$out" | tr '\n' ' ' | cut -c1-200)" fi -if r1167_run 200 && [[ $rc -eq 0 && "$out" == *"GIT_USER=felhom-ci"* ]]; then - verdict PASS "R-1167 a 200 still reads the git credential" -else - verdict FAIL "R-1167 a 200 still reads the git credential" "rc=$rc; got: $(echo "$out" | tr '\n' ' ' | cut -c1-200)" +if command -v curl >/dev/null 2>&1; then + if r1167_run 200 && [[ $rc -eq 0 && "$out" == *"GIT_USER=felhom-ci"* ]]; then + verdict PASS "R-1167 a 200 still reads the git credential" + else + verdict FAIL "R-1167 a 200 still reads the git credential" "rc=$rc; got: $(echo "$out" | tr '\n' ' ' | cut -c1-200)" + fi fi # GL6-F4 (v1.11.3): the producer steps token/enroll/grows must run UNCONDITIONALLY (not behind