[Backport release-24.11] ci: allow running jobs locally#406136
Merged
wolfgangwalther merged 15 commits intorelease-24.11from May 11, 2025
Merged
[Backport release-24.11] ci: allow running jobs locally#406136wolfgangwalther merged 15 commits intorelease-24.11from
wolfgangwalther merged 15 commits intorelease-24.11from
Conversation
They are not really related to eval.yml. (cherry picked from commit e908941)
This allows running the lib-tests locally in exactly the same way that they are run in CI: nix-build ci -A lib-tests (cherry picked from commit 7097614)
The NixOS manual can now be built locally the same way as in CI with: nix-build ci -A manual-nixos (cherry picked from commit 89520b9)
The Nixpkgs manual can now be built locally the same way as in CI with: nix-build ci -A manual-nixpkgs -A manual-nixpkgs-tests (cherry picked from commit d253ad1)
The dev shell can now be built locally the same way as in CI with: nix-build ci -A shell (cherry picked from commit 7c16d15)
The nix-parse workflow can now be run locally the same way as in CI. To do this, the CI's workflow was slightly adjusted. Instead of testing only the changed files, we're now testing all files in the repository. This is possible in two ways: 1. By calling nix-instantiate once with all files as arguments. This will be rather fast, but only the first error is shown before it errors out. 2. By calling nix-instantiate once for each file. This will be much slower, but has the advantage that we see all errors at once. To avoid running the long variant every time, we first do a quick check with the fast version. If that fails, we run the slower one to report the errors. This gives us the best of both. (cherry picked from commit a553ef2)
Path interpolation syntax is not supported in the minimum nix version. (cherry picked from commit 8980c1f)
This adds the minimum nix version and the latest lix version to the matrix of parse checks. Especially the minimum nix version is relevant, because parsing routinely breaks because of introduction of newer syntax. Adding lix just completes the picture. (cherry picked from commit 101a271)
6 tasks
Member
|
Merge is blocked on #404466 (comment) |
Contributor
|
Cherry-picked the fixes from #406138 in here, too. Will still wait a bit more to see that CI stays green. |
ARM runners are supposed to be more energy efficient than x86. Also, from limited testing, they appear to be faster for the eval jobs as well. Average run time for the "Outpaths (x86_64-linux)" job was 4m 27s, so far. In the first run, this job came in at 3m 9s. This effect did not show for other jobs, yet. The following two exceptions are made right now: - nixpkgs-lib-tests currently fails on the ARM runner building Nix 2.3 - nixpkgs-vet is currently pinned to a x86_64-linux only binary release (cherry picked from commit d3e4865)
A bit easier to read. (cherry picked from commit c148dc7)
GitHub has all the different runners, so we can just as well check that shell.nix works. (cherry picked from commit a56fa7a)
I added a lint-action.sh script in .github/workflows a while ago while fixing some warnings. But I haven't run it myself ever since. This needs to be part of CI to make any use of it. (cherry picked from commit 8b65ba5)
Contributor
Mic92
approved these changes
May 11, 2025
Contributor
|
I'm running all the recently merged PRs together (aka current master) once more in my fork, triggering all those jobs. |
Contributor
|
All looks good, except the job for the nixpkgs-manual. It fails weirdly: https://github.com/wolfgangwalther/nixpkgs/actions/runs/14955192741/job/42009953079?pr=639 It works just fine for me locally. Seems to be some networking error: I don't see this related to the recent changes. |
Contributor
|
This also reproduces against master in nixpkgs: #406152 |
(cherry picked from commit 2dfc31f)
Contributor
|
That was a temporary issue, re-running a few hours later and all is good. |
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.
Bot-based backport to
release-24.11, triggered by a label in #404466.