From bc56ce3f4c5c59076b1601832515a4fe9c6cd367 Mon Sep 17 00:00:00 2001 From: Johannes Kirschbauer Date: Sun, 15 Sep 2024 16:43:36 +0200 Subject: [PATCH] Inventory: allow arbitrary imports from nix --- lib/inventory/build-inventory/default.nix | 2 +- lib/inventory/build-inventory/interface.nix | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/inventory/build-inventory/default.nix b/lib/inventory/build-inventory/default.nix index 855118a3b..d3d0e3ec0 100644 --- a/lib/inventory/build-inventory/default.nix +++ b/lib/inventory/build-inventory/default.nix @@ -145,7 +145,7 @@ let builtins.map (role: serviceConfig.roles.${role}.config or { }) inverseRoles.${machineName} or [ ] ); - customImports = map (s: "${directory}/${s}") ( + customImports = map (s: if builtins.typeOf s == "string" then "${directory}/${s}" else s) ( globalImports ++ machineImports ++ roleServiceImports ); in diff --git a/lib/inventory/build-inventory/interface.nix b/lib/inventory/build-inventory/interface.nix index dd20a676a..257c78362 100644 --- a/lib/inventory/build-inventory/interface.nix +++ b/lib/inventory/build-inventory/interface.nix @@ -61,7 +61,12 @@ let ''; default = [ ]; - type = types.listOf types.str; + type = types.listOf ( + types.oneOf [ + types.str + types.anything + ] + ); }; in {