Repository navigation
feat(ci): route Linux API jobs and wheel builds to dedicated runner - #6806
Open
zhanglistar wants to merge 26 commits into
Open
zhanglistar wants to merge 26 commits into
zhanglistar wants to merge 26 commits into
Conversation
…ools Use prepared self-hosted hosts for ordinary Linux jobs with isolated build environments, shared pool scheduling without inventory credentials, and hosted fallback when selection is unavailable.
4 of 8 tasks
Preserve the Ubuntu 20.04 wheel baseline while routing x64 wheels and shared Studio/source builds through the Linux pool selector.
Default the selector to GitHub-hosted and retain an explicit runner-label override for prepared self-hosted machines.
Register setup-python libraries with the container loader so Hermes can clear its environment without losing the shared Python runtime.
The hosted image supplied zip implicitly, but archive installation tests also need it in the isolated test container.
Install jq in Linux test containers and check archive and marketplace tooling before running the plugin suites.
Run independent tests and checks on hosted runners so they do not queue behind compilation on ov-ci-runner.
Select runners directly for heavy builds and keep hosted tests unchanged, removing the selector, pool configuration and unrelated container migration.
Limit self-hosted builds to trusted PRs and branch pushes, move ARM64 musl to hosted capacity, and provide execution limits plus an emergency hosted override.
Keep Studio, API native runtime and musl CLI builds hosted so they do not serialize behind the wheel build.
zhanglistar
force-pushed
the
feat/ci-linux-pools-official
branch
from
October 31, 2026 04:07
fade53a to
dbed5ef
Compare
Record platform timings and runner cost tradeoffs for later CI optimization.
Keep runner routing compatible with current API and database CI workflows.
Alternate x64 wheel and API native build runs between hosted capacity and ci-linux-builds, with readiness checks and an enable switch before routing work to the new machine.
Synchronize with upstream main while retaining the Linux build distribution changes.
Keep the timing analysis without carrying the large CSV in the runner-routing PR.
Use the host CA bundle for minimal containers and fail on incomplete apt indexes; verify package downloads in runner readiness checks.
Keep hosted package sources unchanged and diagnose host versus container connectivity before enabling build routing.
Keep the runner-routing PR focused on CI configuration and current validation.
t0saki
approved these changes
Nov 13, 2026
Keep API, database and cuVS tests from waiting for hosted capacity after a dedicated native build, with disposable test containers and service-aware networking.
Avoid blocking dedicated API builds and tests behind a hosted-only planning job.
Remove whole-run parity gating so planning, native preparation and Linux API consumers use the dedicated runner on every eligible run.
Observe cancellation separately from worker completion so slower MySQL cleanup does not turn a successful cancellation into a one-second timeout.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Linux API jobs can stall behind exhausted hosted capacity while the dedicated runner is idle. Route the entire trusted Linux API dependency chain to
iv-yezentk8ao3z47ge5tmmusing the customci-linux-buildslabel, and alternate Linux x86_64 wheel builds between the two pools.CI_LINUX_BUILDS_ENABLED=truebefore routing these jobs to the dedicated runner.CI_DISABLE_SELF_HOSTED=truereturns new workflow runs to hosted capacity; already queued jobs retain their labels.CI_UBUNTU_MIRRORoverrides package sources only on self-hosted builds/tests._build.ymlthat tests Docker, host/container connectivity and actual package installation without checking out repository code.Validation
iv-yezentk8ao3z47ge5tmm. Official Ubuntu endpoints timed out from both host and container; the configured HTTPS Aliyun mirror was reachable from both. Ubuntu 20.04 and 24.04 containers successfully downloaded indexes and installed Git and CA certificates.CI_UBUNTU_MIRROR=https://mirrors.aliyun.com/ubuntuandCI_LINUX_BUILDS_ENABLED=trueare enabled.self-hosted / Linux / X64 / ci-linux-builds, and itspreparejob started oniv-yezentk8ao3z47ge5tmm.fb2956b25. Its only failure was a one-second timeout in remote task cancellation cleanup; an isolated real-MySQL rerun passed with 107 passing cases and two expected skips.66f9433da: API CI and PR CI are running.Local checks verify routing and compatibility contracts; they do not establish a build speedup.