From 63f1fd80566bb83684b5645319f9865d4b0e46b8 Mon Sep 17 00:00:00 2001 From: scitex-agent-container Date: Mon, 31 Aug 2026 09:29:05 +0000 Subject: [PATCH] ci(tests): read vars.CI_RUNS_ON, with ubuntu-latest as the fallback The repository variable CI_RUNS_ON was set to point CI at our own hardware, but this workflow hardcoded `runs-on: ubuntu-latest`, so the variable was never read: the write was verified, the effect was not, and reruns kept landing on GitHub-hosted runners. The job now consults the variable and falls back to the literal '["ubuntu-latest"]' when it is unset, so this is inert on any repo or fork where the variable is absent. --- .../pytest-matrix-on-ubuntu-py3-11-3-12-3-13.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pytest-matrix-on-ubuntu-py3-11-3-12-3-13.yml b/.github/workflows/pytest-matrix-on-ubuntu-py3-11-3-12-3-13.yml index a82717b85..49c9683e9 100644 --- a/.github/workflows/pytest-matrix-on-ubuntu-py3-11-3-12-3-13.yml +++ b/.github/workflows/pytest-matrix-on-ubuntu-py3-11-3-12-3-13.yml @@ -12,7 +12,14 @@ on: jobs: test: name: pytest-matrix-on-ubuntu-py${{ matrix.python-version }} - runs-on: ubuntu-latest + # Consult the repo-level CI_RUNS_ON variable so this matrix can be pointed at + # our own hardware (label set `scitex-org-cpu`, hosts compute-01/03/04) + # without editing the workflow. The variable holds a JSON array of labels, + # e.g. '["self-hosted","Linux","X64","scitex-org-cpu"]'. Where it is UNSET the + # literal fallback applies and nothing changes: ubuntu-latest, exactly as + # before. Until 2026-08-31 this line hardcoded ubuntu-latest, so setting the + # variable was silently ignored — the write landed, the runs did not move. + runs-on: ${{ fromJSON(vars.CI_RUNS_ON || '["ubuntu-latest"]') }} # Ceiling well below the GitHub-Actions 6h maximum so a genuine hang # (wedged subprocess / coverage deadlock — the old chronic "tests" red) # fails fast and diagnosably. The suite itself is single-digit minutes