NixOS / nix

Nix, the purely functional package manager
https://nixos.org/
GNU Lesser General Public License v2.1
11.47k stars 1.44k forks source link

Run the functional tests in a NixOS environment #10922

Closed roberth closed 1 week ago

roberth commented 2 weeks ago

Motivation

By running the functional tests also in a mostly normal NixOS environment, we increase our test coverage.

This reproduces

It also allows for testing

Context

Priorities and Process

Add :+1: to pull requests you find important.

The Nix maintainer team uses a GitHub project board to schedule and track reviews.

fricklerhandwerk commented 2 weeks ago

Indeed I discussed just this sort of change with @tfc recently, and I'd take a slightly different architectural approach: instead of including environment-dependent setup/teardown, source the script itself from each environment. WDYT?

roberth commented 2 weeks ago

instead of including environment-dependent setup/teardown, source the script itself from each environment. WDYT?

The implementation and benefit of this idea are unclear to me.

I have not changed the architecture to keep the diff manageable, so I'd like to proceed with this and refactor later.

fricklerhandwerk commented 2 weeks ago

Discussed in Nix maintainer meeting:

nixos-discourse commented 2 weeks ago

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/2024-06-17-nix-team-meeting-minutes-153/47186/1

fricklerhandwerk commented 1 week ago

@roberth IMO you can self-merge once it's all green.

roberth commented 1 week ago

The extra swap appears to handle the extra evaluations with no significant slowdown :tada:

nixos-discourse commented 6 days ago

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/2024-06-24-nix-team-meeting-minutes-155/47739/1