about summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorArthur Gautier <arthur.gautier@arista.com>2023-06-14 23:12:44 -0700
committerArthur Gautier <arthur.gautier@arista.com>2023-06-29 09:13:44 -0700
commit562f879cd173525076b79fc9b04de77004ad37c8 (patch)
tree5e3b03c0e81dc0654a7304c8711f7bb149cda698 /pkgs/build-support
parent18c734d7f2ca4e86730808b8b4900363cb705ed3 (diff)
runNixOSTest: adds support for lib.extend
When lib overrides were used, before this commit, they would not be made
available in the configuration evaluation of nixosTest's nodes.

Sample code:
``` nix
let
  pkgs = import ./. {
    overlays = [
      (new: old: {
        lib = old.lib.extend (self: super: {
          sorry_dave = builtins.trace "There are no pod bay doors" "sorry dave";
        });
      })
    ];
  };
in
pkgs.testers.runNixOSTest {
  name = "demo lib overlay";

  nodes = {
    machine = { lib, ... }: {
      environment.etc."got-lib-overlay".text = lib.sorry_dave;
    };
  };

  testScript = { nodes }:
    ''
      start_all()
      machine.succeed('grep dave /etc/got-lib-overlay')
    '';
}
```
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/testers/default.nix4
1 files changed, 3 insertions, 1 deletions
diff --git a/pkgs/build-support/testers/default.nix b/pkgs/build-support/testers/default.nix
index 190ce72d0e630..d380dc6f30e1d 100644
--- a/pkgs/build-support/testers/default.nix
+++ b/pkgs/build-support/testers/default.nix
@@ -97,7 +97,9 @@
   # See doc/builders/testers.chapter.md or
   # https://nixos.org/manual/nixpkgs/unstable/#tester-runNixOSTest
   runNixOSTest =
-    let nixos = import ../../../nixos/lib {};
+    let nixos = import ../../../nixos/lib {
+      inherit lib;
+    };
     in testModule:
         nixos.runTest {
           _file = "pkgs.runNixOSTest implementation";