Repository navigation
CI: run the unittest workflow on the self-hosted alma10 runners - #321
Merged
oliviermattelaer merged 4 commits intoOct 24, 2026
Merged
Conversation
Fork PRs stay on ubuntu-24.04. restore-pip-cache and the bundle_3 pip installs no longer assume apt/sudo; the pip cache key falls back to the distribution when ImageOS is unset (self-hosted).
Fork PRs still go to ubuntu-24.04.
On the self-hosted alma10 runners the ubuntu-written cache (zstd) is not restored, so ~/.cache/UFOMODEL was missing, the cp failed, PYTHONPATH was never exported and test_fks_ppzz_in_RS could not import RS.
Fork PRs stay on ubuntu-24.04.
oliviermattelaer
deleted the
claude/self-hosted-runner-unittests-684eb5
branch
October 24, 2026 15:21
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.
Moves every job of
unittest.ymlto the self-hosted AlmaLinux 10 runners (cern1–cern5, labelalma10), to take load off the GitHub-hosted queue (free plan, 20 concurrent jobs).Runner choice
The repo is public: pull requests from forks stay on
ubuntu-24.04, so outside code never runs on our machines.Portability fixes (the runners have no apt and no sudo)
restore-pip-cache:sudo apt install meson ninja-buildonly whereapt-getexists; on the alma10 runners meson/ninja are preinstalled (dnf), with a pip fallback. The cache key falls back to/etc/os-releasewhen$ImageOSis unset (self-hosted), so a numpy built for ubuntu is never restored there.unittest_bundle_3:sudo pip install scipy/numpybecomespython3 -m pip install --userwhen there is no apt.restore_ufomodel: no longer fails when the UFO cache misses. Before zstd was installed on the runners the ubuntu-written.tzstcache was not restored, thecpfailed,PYTHONPATHwas never exported andtest_fks_ppzz_in_RSfailed withNo module named 'RS'(only on a runner's first job, as the test leaves the model in~/.cache/UFOMODEL).Validation — run 40098417647: all 8 jobs green on cern1–cern5, 19 min from push to finish. Each job ran exactly as many tests as on main's latest green ubuntu run (588 / 495 / 1527 / 49 / 54 / 56 / 88 / 1), none skipped; the UFO cache restores on the runners.
Runner requirements for future machines: label
alma10, plus python3-pip, gcc-gfortran, gcc-c++, make, git, meson, ninja-build, zstd.