ci/eval/compare: add 10.rebuild-nixos-tests label#439255
ci/eval/compare: add 10.rebuild-nixos-tests label#439255wolfgangwalther merged 3 commits intoNixOS:masterfrom
Conversation
emilazy
left a comment
There was a problem hiding this comment.
Thank you for working on this 💜
Yes, mentioning staging in the label sounds okay to me until we get a branch. It doesn’t hurt to send such changes to staging and kernel maintainers will know it doesn’t apply to them.
BTW, if you want GitHub to display the diff of stacked PRs more sensibly, you can push the first PR to a branch in the Nixpkgs repository, and then open a second PR that targets that PR’s branch. This will show only the additional commits compared to the first PR, and when the first PR is merged, the second PR will automatically adjust to target the first PR’s base branch instead. GitHub doesn’t have great support for this workflow, and it’s unfortunate that it requires the preemptive use of branches on the main repo, but it’s a better review experience than the commits being included in both PRs.
This comment was marked as resolved.
This comment was marked as resolved.
We can't eval all nixos tests, this would be way too expensive. But we can evaluate `nixosTests.simple` as an indication whether the nixos test driver has changed. If that's the case, this means that *all* NixOS tests need to be rebuilt.
d134013 to
fdf061e
Compare
Ma27
left a comment
There was a problem hiding this comment.
One suggestion (I won't die on that hill, though).
Otherwise, looks reasonable, thanks!
MattSturgeon
left a comment
There was a problem hiding this comment.
Just commenting to say that I see no issues in the diff, but I don't feel confident enough in these weeds to sign off with an approval. I trust those more familiar will do so.
a623d85 to
27ebc40
Compare
ci/eval/compare/default.nix
Outdated
There was a problem hiding this comment.
I added this in the last push, which addresses #437208 (comment).
@emilazy like this?
This indicates that the NixOS test-driver changed and all NixOS tests have to be rebuilt. It can be used to either re-target to staging or to batch this with other similar changes, at least.
This should be a test that will change whenever most likely *all* NixOS tests change. As such it should use the most "default" configuration possible. This decreases chances of a change that will affect almost other NixOS tests to go unnoticed by this test. With the minimal profile used previously, there could be changes made to the default behavior of NixOS modules which were explicitly disabled in this profile. These would not change the simple test, but would change all other tests. Removing as many moving parts as possible from this test should make it the most default it can be. It now contains only pieces that every other NixOS test has, too: A name, a machine and a testScript. But nothing fancy.
27ebc40 to
6d90bae
Compare
philiptaron
left a comment
There was a problem hiding this comment.
I agree that the way ci/eval and the various release top-level derivation entry points fit together is pretty awkward. Fixing that or even trying to find a direction to resolve that awkwardness doesn't fit with this scope of this PR.
So, I support merging this only minor tweaks and continuing to evolve the interface in refactor PRs.
|
Let's try and see how the label works out. |
This comment was marked as resolved.
This comment was marked as resolved.
|
I restarted CI on #441918, that is an all-tests rebuild and should get the tag. We'll see how this goes. |
|
Yep, tag is there, seems to work just fine. Nice! |
This indicates that the NixOS test-driver changed and all NixOS tests have to be rebuilt. It can be used to either re-target to staging or to batch this with other similar changes, at least.
I created the new label with the following description for now:
(before anyone wants to suggest changes, this has a 100 character limit, keep that in mind!)
This can later be adjusted, when the
kernel-updates-rebuilding-all-nixos-testsbranch exists.Resolves #437208
Things done
Add a 👍 reaction to pull requests you find important.