Skip to content

CI: move all workflows to repository runners#3

Merged
apstenku123 merged 17 commits into
mainfrom
codex/self-hosted-workflows
Jul 18, 2026
Merged

CI: move all workflows to repository runners#3
apstenku123 merged 17 commits into
mainfrom
codex/self-hosted-workflows

Conversation

@apstenku123

Copy link
Copy Markdown
Collaborator

Moves MLX E2E, automation, Pages, and contract workflows to the registered repository Linux/macOS runners.

  • real MLX/Playwright E2E runs on Apple Silicon
  • report and automation jobs use the cppmega-mlx Linux runner
  • E2E explicitly binds the setup-python interpreter
  • adds a regression test forbidding *-latest runners

Verification: policy test, YAML parse, git diff check.

Copilot AI review requested due to automatic review settings July 13, 2026 21:18
@github-actions

Copy link
Copy Markdown

🤖 Hi @apstenku123, I've received your request, and I'm working on it now! You can track my progress in the logs for more details.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Moves GitHub Actions CI workflows off GitHub-hosted *-latest runners and onto the repository’s registered self-hosted Linux/macOS runners, adding a regression test to enforce the policy going forward.

Changes:

  • Replaces runs-on: *-latest with self-hosted runner label sets across Pages, Gemini automation, and E2E workflows.
  • Updates E2E workflow to bind the backend to the setup-python interpreter and adjusts Playwright browser install for macOS runners.
  • Adds a policy test to forbid *-latest runners and wires it into the self-hosted CI workflow.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/test_workflow_runner_policy.py Adds a test intended to prevent use of GitHub-hosted *-latest runners in workflows.
.github/workflows/vbgui-pages.yml Moves Pages build/deploy jobs onto the self-hosted Linux runner.
.github/workflows/gemini-triage.yml Moves Gemini triage reusable workflow jobs onto the self-hosted Linux runner.
.github/workflows/gemini-scheduled-triage.yml Moves scheduled triage jobs onto the self-hosted Linux runner.
.github/workflows/gemini-review.yml Moves Gemini review reusable workflow onto the self-hosted Linux runner.
.github/workflows/gemini-plan-execute.yml Moves plan/execute workflow onto the self-hosted Linux runner.
.github/workflows/gemini-invoke.yml Moves invoke workflow onto the self-hosted Linux runner.
.github/workflows/gemini-dispatch.yml Moves dispatch/debugger/fallthrough jobs onto the self-hosted Linux runner.
.github/workflows/e2e-matrix.yml Moves E2E workloads onto the self-hosted macOS runner; binds Python and adjusts Playwright install.
.github/workflows/ci-self-hosted.yml Adds the new runner-policy test to the CI test lists.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 57 to +61
github.event.sender.type == 'User' &&
startsWith(github.event.comment.body || github.event.review.body || github.event.issue.body, '@gemini-cli') &&
contains(fromJSON('["OWNER", "MEMBER", "COLLABORATOR"]'), github.event.comment.author_association || github.event.review.author_association || github.event.issue.author_association)
)
runs-on: 'ubuntu-latest'
runs-on: [self-hosted, Linux, X64, cppmega-mlx]
Comment thread tests/test_workflow_runner_policy.py Outdated
Comment on lines +8 to +18
HOSTED_RUNNER = re.compile(
r"^\s*runs-on:\s*.*(?:ubuntu|macos|windows)-latest\s*$",
re.MULTILINE,
)


def test_workflows_do_not_use_github_hosted_runners() -> None:
violations = []
for workflow in sorted((REPO_ROOT / ".github" / "workflows").glob("*.yml")):
if HOSTED_RUNNER.search(workflow.read_text(encoding="utf-8")):
violations.append(workflow.relative_to(REPO_ROOT).as_posix())
@github-actions

Copy link
Copy Markdown

🤖 I'm sorry @apstenku123, but I was unable to process your request. Please see the logs for more details.

@apstenku123
apstenku123 force-pushed the codex/self-hosted-workflows branch from d0f9eba to ada15bc Compare July 13, 2026 21:25
@apstenku123
apstenku123 merged commit 254dc6d into main Jul 18, 2026
16 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.

2 participants