Skip to content

chore(ci): drop inherited NVIDIA mirror plumbing#4

Merged
vessux merged 1 commit into
mainfrom
chore/drop-mirror-ci-gates
May 26, 2026
Merged

chore(ci): drop inherited NVIDIA mirror plumbing#4
vessux merged 1 commit into
mainfrom
chore/drop-mirror-ci-gates

Conversation

@vessux
Copy link
Copy Markdown
Owner

@vessux vessux commented May 26, 2026

Summary

Delete `required-ci-gates.yml` + `e2e-label-help.yml` — the two workflows that post the perpetual "Waiting for /ok to test mirror" pending statuses on every fork PR.

Why

Upstream NVIDIA gates CI through a mirror pattern: every PR is force-pushed to `refs/heads/pull-request/` by an external GitHub App when a maintainer comments `/ok to test `. The real worker workflows (branch-checks, helm-lint, branch-e2e, test-gpu, branch-kubernetes-e2e) trigger only on push to that mirror ref, and `required-ci-gates.yml` polls those workflow runs to post status checks back on the PR.

This fork inherited the gate-checker and the hint-poster but NOT the backing pieces:

  1. No `/ok to test` comment handler. That handler lives in NVIDIA's external infra and was never copied into our `.github/workflows/`.
  2. No fork-side self-hosted runners. `gh api repos/vessux/OpenShell/actions/runners` returns 0. The worker workflows target `linux-amd64-cpu8` / `linux-arm64-cpu8` runners and a private `ghcr.io/nvidia/openshell/ci` container image that our `GITHUB_TOKEN` cannot pull.

So even applying the `test:e2e*` labels and successfully creating the mirror would not run anything. The plumbing has been cosmetic dead weight since fork inception.

Effect

  • PRs no longer show "Branch Checks pending — Waiting for /ok to test mirror" or "Helm Lint pending — Waiting for /ok to test mirror".
  • The fork's real CI signal — CodeQL, `openlock-release`, `ci-image`, etc. — is unaffected.
  • The inert worker workflows (branch-checks.yml, helm-lint.yml, branch-e2e.yml, test-gpu.yml, branch-kubernetes-e2e.yml) stay in place. They cannot run for the reasons above, but leaving them keeps the diff against `upstream/main` minimal so future syncs do not need to manually re-add or rewrite them.

Test plan

required-ci-gates.yml posts five "Waiting for /ok to test mirror"
pending statuses on every PR (Branch Checks, Helm Lint, Branch E2E
Checks, GPU Test, Branch Kubernetes E2E). These never resolve on this
fork because two pieces of upstream infrastructure are missing:

- No `/ok to test <SHA>` issue-comment handler exists in our
  .github/workflows/. Upstream runs it as an external GitHub App
  that we cannot import.
- No fork-side self-hosted runners are registered, so the worker
  workflows (branch-checks.yml, helm-lint.yml, branch-e2e.yml,
  test-gpu.yml, branch-kubernetes-e2e.yml) cannot execute even when
  manually dispatched: they target `linux-amd64-cpu8` /
  `linux-arm64-cpu8` and a private `ghcr.io/nvidia/openshell/ci`
  container image.

e2e-label-help.yml is the partner workflow that posts a hint comment
when a `test:e2e*` label is applied. Without the `/ok` handler the hint
points at a command that does nothing on this fork.

Delete both. The worker workflows stay in place: they are inert
(unrunnable for the reasons above) and removing them would create a
larger surface to merge back when upstream changes.

Effect: PRs no longer show two perpetually-yellow checks. The fork's
real CI signal (CodeQL, openlock-release, ci-image, etc.) is
unaffected.
@vessux vessux merged commit fb9f4ff into main May 26, 2026
9 of 11 checks passed
@vessux vessux deleted the chore/drop-mirror-ci-gates branch May 26, 2026 09:17
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