summaryrefslogtreecommitdiffstats
path: root/nixos/lib
diff options
context:
space:
mode:
authorJanne Heß <janne@hess.ooo>2020-06-02 16:27:07 +0200
committerJanne Heß <janne@hess.ooo>2020-09-14 00:10:21 +0200
commit9f33ab62d99c98e3f5bddd64532f15f482cf01b2 (patch)
treec383d7daef78e2fc3b3ebb61f87d92e419d434ae /nixos/lib
parent5457fc7c76bd46a791ec02a52eebc274c9ce542f (diff)
nixos/testing: Add support for specialArgs
Since using flakes disallows the usage of <unstable> (which I use in some tests), this adds an alternative. By setting specialArgs, all VMs can get the `unstable` flake input as an arg. This is not possible with extraConfigurations, as that would lead to infinite recursions.
Diffstat (limited to 'nixos/lib')
-rw-r--r--nixos/lib/build-vms.nix8
-rw-r--r--nixos/lib/testing-python.nix4
2 files changed, 8 insertions, 4 deletions
diff --git a/nixos/lib/build-vms.nix b/nixos/lib/build-vms.nix
index 1bad63b9194c..b1575fc13bbd 100644
--- a/nixos/lib/build-vms.nix
+++ b/nixos/lib/build-vms.nix
@@ -3,8 +3,10 @@
minimal ? false
, # Ignored
config ? null
- # Nixpkgs, for qemu, lib and more
-, pkgs
+, # Nixpkgs, for qemu, lib and more
+ pkgs
+, # !!! See comment about args in lib/modules.nix
+ specialArgs ? {}
, # NixOS configuration to add to the VMs
extraConfigurations ? []
}:
@@ -31,7 +33,7 @@ rec {
nodes: configurations:
import ./eval-config.nix {
- inherit system;
+ inherit system specialArgs;
modules = configurations ++ extraConfigurations;
baseModules = (import ../modules/module-list.nix) ++
[ ../modules/virtualisation/qemu-vm.nix
diff --git a/nixos/lib/testing-python.nix b/nixos/lib/testing-python.nix
index 76a2022082c5..498f97336c02 100644
--- a/nixos/lib/testing-python.nix
+++ b/nixos/lib/testing-python.nix
@@ -4,10 +4,12 @@
, minimal ? false
# Ignored
, config ? {}
+ # !!! See comment about args in lib/modules.nix
+, specialArgs ? {}
# Modules to add to each VM
, extraConfigurations ? [] }:
-with import ./build-vms.nix { inherit system pkgs minimal extraConfigurations; };
+with import ./build-vms.nix { inherit system pkgs minimal specialArgs extraConfigurations; };
with pkgs;
rec {