Skip to content
This repository was archived by the owner on Dec 12, 2025. It is now read-only.

Conversation

@MarkBedrock
Copy link
Contributor

CI Migration: Move Bedrock CI & CodeQL to GitHub-Hosted Runners

Summary

This PR modernizes Bedrock’s continuous integration setup by migrating all required CI jobs from the self-hosted dev-01 runner to GitHub-hosted runners (ubuntu-latest).
Self-hosted runners remain available for optional heavy/soak workflows, but no longer gate merges or block PRs when offline.

This is part of the Side Quest: CI Modernization & Hygiene, and aligns Bedrock CI with Phoenix’s new GitHub-hosted CI architecture.

Key Changes

  1. Migrate CI / build to GitHub-hosted runner

File changed: .github/workflows/ci.yml
• Replaced:

runs-on: [self-hosted, linux, x64, dev01, fastpath]

with:

runs-on: ubuntu-latest

•	Added standard Ubuntu dependency setup via apt-get
•	Removed dev-01 specific logic (ccache setup, dnf, runner labels, etc.)
•	Build + test jobs now run consistently on GitHub infrastructure

  1. Migrate CodeQL to GitHub-hosted runners

File changed: .github/workflows/codeql.yml
• Replaced:

runs-on: [self-hosted, linux, x64, dev01, fastpath]

with:

runs-on: ubuntu-latest

•	Added pull_request trigger (previously missing)
•	Left all CodeQL init/analyze steps intact
•	CodeQL now runs without depending on dev-01 availability

  1. Fix auto-merge.yml required check names

File changed: .github/workflows/auto-merge.yml

Updated check names so dependabot auto-merge recognizes the actual status checks emitted by GitHub:
• "CI / build" instead of "CI"
• "CodeQL Analysis" instead of "CodeQL"

This resolves silent auto-merge failures caused by mismatched check names.

Why This Change Is Needed

Before this PR:
• CI jobs were locked to the self-hosted dev-01 runner
• When dev-01 was offline, CI stalled indefinitely
• PR Guard showed “Expected — Waiting for status…” deadlocks
• CodeQL never ran on PRs
• auto-merge workflows had stale check name expectations

After this PR:
• All required checks run on GitHub infrastructure
• Bedrock CI is now:
• Reliable
• Scalable
• Independent of local hardware
• Consistent across contributors

Self-hosted runners remain available for non-required soak/perf tests.

Validation

✔ Builds on GitHub-hosted ubuntu-latest
• Full build + test run completes successfully
• No dev-01-specific paths remain
• No unexpected toolchain differences

✔ CodeQL runs successfully on PRs
• Correct triggers
• No dependency errors
• Fully GitHub-infra based

✔ auto-merge workflows now match actual check names

✔ No changes to core Bedrock code or behavior

This PR touches only workflow files.

Files Changed (High-level)

.github/workflows/ci.yml
.github/workflows/codeql.yml
.github/workflows/auto-merge.yml

Next Steps (Post-Merge)

After merging this PR:
1. Update branch protection rules (manual GitHub UI step):
• Required:
• CI / build
• CodeQL Analysis
• validate (if applicable)
• Remove any self-hosted required checks
2. Optional in future PRs:
• Migrate soak/heartbeat jobs off self-hosted runners if desired
• Add macOS or Windows CI as separate jobs
• Add cache rehydration steps for faster builds

Confidence

This PR implements exactly the plan outlined in:
• BEDROCK_CI_HYGIENE_AUDIT.md
• CI_MIGRATION_PLAN.md

All edits were performed on the feature/ci-migration branch and validated locally before opening this PR.

@MarkBedrock MarkBedrock merged commit fd5322d into main Nov 24, 2025
6 checks passed
@MarkBedrock MarkBedrock deleted the feature/ci-migration branch November 24, 2025 21:49
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants