Skip to content

ci: write the GKE runner as the bare scale-set name - #571

Merged
luisleo526 merged 2 commits into
mainfrom
ci/gke-bare-labels
Oct 27, 2026
Merged

luisleo526 merged 2 commits into
mainfrom
ci/gke-bare-labels

Conversation

@luisleo526

Copy link
Copy Markdown
Collaborator

The proof jobs of ci-post.yml, corpus-parity.yml and native-live.yml name their
runner pods with runs-on: plus a group: gke-runners / labels: gke-...
mapping. The org CI canon accepts a GKE runner only as the exact bare scalar
scale-set name (runs-on: gke-8cpu-16gb-amd64): no mapping, array,
self-hosted label or expression. All 11 jobs now use the scalar with the same
size and architecture as before; the runner group still restricts which
workflows may start on it.

scripts/ci_preflight.py pins the exact scalar for each moved job and refuses any
other shape on a GKE name as a wrong shape: a group/labels mapping (block and
inline), a one-label array, a ["self-hosted", ...] array, an expression, a
different letter case, and a different size or architecture. The per-label cap
(8 per label), the pull-request reachability refusal and the credential refusals
are unchanged and now read the scalar. Every rewritten test keeps its original
property; the real workflow files are the positive control.

docs/ci.md sentences replaced, on the same lines, named by the commit that
introduced each:

  • c85a40b: "post preflight/parity use", "profiles use fixed", "fixed
    architecture/size labels", "literal VM arrays or exact", "HOSTED_JOB_RUNNERS
    pins hosted jobs and exact GKE mappings"
  • 3ea5a0d: "The amd64 post build shards", "The four amd64 post legs"
  • 3a0d150: the ci-post.yml and corpus-parity.yml table rows
  • 8154993: the native-live.yml table row

Co-Authored-By: Claude Sonnet 5.5 [email protected]

🤖 Generated with Claude Code

ci-cx and others added 2 commits October 28, 2026 04:46
The proof jobs of ci-post.yml, corpus-parity.yml and native-live.yml name their
runner pods with `runs-on:` plus a `group: gke-runners` / `labels: gke-...`
mapping. The org CI canon accepts a GKE runner only as the exact bare scalar
scale-set name (`runs-on: gke-8cpu-16gb-amd64`): no mapping, array,
`self-hosted` label or expression. All 11 jobs now use the scalar with the same
size and architecture as before; the runner group still restricts which
workflows may start on it.

scripts/ci_preflight.py pins the exact scalar for each moved job and refuses any
other shape on a GKE name as a wrong shape: a group/labels mapping (block and
inline), a one-label array, a `["self-hosted", ...]` array, an expression, a
different letter case, and a different size or architecture. The per-label cap
(8 per label), the pull-request reachability refusal and the credential refusals
are unchanged and now read the scalar. Every rewritten test keeps its original
property; the real workflow files are the positive control.

docs/ci.md sentences replaced, on the same lines, named by the commit that
introduced each:
- c85a40b: "post preflight/parity use", "profiles use fixed", "fixed
  architecture/size labels", "literal VM arrays or exact", "`HOSTED_JOB_RUNNERS`
  pins hosted jobs and exact GKE mappings"
- 3ea5a0d: "The amd64 post build shards", "The four amd64 post legs"
- 3a0d150: the `ci-post.yml` and `corpus-parity.yml` table rows
- 8154993: the `native-live.yml` table row

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Plain merge; keeps the strict ruleset's up-to-date requirement.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
@luisleo526
luisleo526 merged commit 482b000 into main Oct 27, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant