diff --git a/CODEOWNERS b/CODEOWNERS index 7499bc22d..53cdf51c9 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1,8 +1,10 @@ clanServices/.* @pinpox @kenji lib/test/container-test-driver/.* @DavHau @mic92 -lib/modules/inventory/.* @hsjobeki -lib/modules/inventoryClass/.* @hsjobeki +lib/inventory/.* @hsjobeki +lib/inventoryClass/.* @hsjobeki + +modules/.* @hsjobeki pkgs/clan-app/ui/.* @hsjobeki @brianmcgee pkgs/clan-app/clan_app/.* @qubasa @hsjobeki diff --git a/modules/dir_test.nix b/lib/dir_test.nix similarity index 90% rename from modules/dir_test.nix rename to lib/dir_test.nix index 26ac302f1..1c35a8989 100644 --- a/modules/dir_test.nix +++ b/lib/dir_test.nix @@ -2,7 +2,7 @@ lib ? import , }: let - clanLibOrig = (import ./.. { inherit lib; }).__unfix__; + clanLibOrig = (import ./. { inherit lib; }).__unfix__; clanLibWithFs = { virtual_fs }: lib.fix ( @@ -11,19 +11,19 @@ let let clan-core = { clanLib = final; - modules.clan.default = lib.modules.importApply ./clan { inherit clan-core; }; + modules.clan.default = lib.modules.importApply ../modules/clan { inherit clan-core; }; # Note: Can add other things to "clan-core" # ... Not needed for this test }; in { - clan = import ../clan { + clan = import ./clan { inherit lib clan-core; }; # Override clanLib.fs for unit-testing against a virtual filesystem - fs = import ../clanTest/virtual-fs.nix { inherit lib; } { + fs = import ./clanTest/virtual-fs.nix { inherit lib; } { inherit rootPath virtual_fs; # Example of a passthru # passthru = [ diff --git a/lib/evalService.nix b/lib/evalService.nix index 74a5584a9..7b0fbb7ce 100644 --- a/lib/evalService.nix +++ b/lib/evalService.nix @@ -17,9 +17,9 @@ lib.evalModules { specialArgs._ctx = prefix; modules = [ # Base module - ./service-module.nix + ./inventory/distributed-service/service-module.nix # Feature modules - (lib.modules.importApply ./api-feature.nix { + (lib.modules.importApply ./inventory/distributed-service/api-feature.nix { inherit clanLib prefix; }) ] diff --git a/lib/flake-module.nix b/lib/flake-module.nix index 77a2f1026..463627039 100644 --- a/lib/flake-module.nix +++ b/lib/flake-module.nix @@ -100,6 +100,35 @@ rec { touch $out ''; }; + + # Run: nix-unit --extra-experimental-features flakes --flake .#legacyPackages.x86_64-linux.evalTests-build-clan + legacyPackages.evalTests-build-clan = import ./tests.nix { + inherit lib; + clan-core = self; + }; + checks = { + eval-lib-build-clan = pkgs.runCommand "tests" { nativeBuildInputs = [ pkgs.nix-unit ]; } '' + export HOME="$(realpath .)" + + nix-unit --eval-store "$HOME" \ + --extra-experimental-features flakes \ + --show-trace \ + ${inputOverrides} \ + --flake ${ + self.filter { + include = [ + "flakeModules" + "inventory.json" + "lib" + "machines" + "nixosModules" + ]; + } + }#legacyPackages.${system}.evalTests-build-clan + + touch $out + ''; + }; }; } diff --git a/lib/inventory/distributed-service/flake-module.nix b/lib/inventory/distributed-service/flake-module.nix index 2d313d7a1..621e069f7 100644 --- a/lib/inventory/distributed-service/flake-module.nix +++ b/lib/inventory/distributed-service/flake-module.nix @@ -13,16 +13,17 @@ in let # Common filtered source for inventory tests inventoryTestsSrc = lib.fileset.toSource { - root = ../../../..; + root = ../../..; fileset = lib.fileset.unions [ - ../../../../flake.nix - ../../../../flake.lock - (lib.fileset.fileFilter (file: file.name == "flake-module.nix") ../../../..) - ../../../../flakeModules - ../../../../lib - ../../../../nixosModules/clanCore - ../../../../machines - ../../../../inventory.json + ../../../flake.nix + ../../../flake.lock + (lib.fileset.fileFilter (file: file.name == "flake-module.nix") ../../..) + ../../../flakeModules + ../../../lib + ../../../nixosModules/clanCore + ../../../machines + ../../../inventory.json + ../../../modules ]; }; in diff --git a/modules/tests.nix b/lib/tests.nix similarity index 98% rename from modules/tests.nix rename to lib/tests.nix index 56ed2edbf..fb13d3912 100644 --- a/modules/tests.nix +++ b/lib/tests.nix @@ -105,7 +105,7 @@ in self = { inputs = { }; }; - directory = ../../.; + directory = ../.; meta.name = "test-clan-core"; }; in @@ -123,7 +123,7 @@ in self = { inputs = { }; }; - directory = ../../.; + directory = ../.; meta.name = "test-clan-core"; }; in diff --git a/modules/flake-module.nix b/modules/flake-module.nix index e02bf62d6..2911f3c27 100644 --- a/modules/flake-module.nix +++ b/modules/flake-module.nix @@ -1,11 +1,7 @@ { self, - inputs, ... }: -let - inputOverrides = self.clanLib.flake-inputs.getOverrides inputs; -in { imports = [ ./clan/flake-module.nix @@ -14,7 +10,6 @@ in { pkgs, lib, - system, ... }: let @@ -25,34 +20,5 @@ in in { legacyPackages.clan-options = jsonDocs.optionsJSON; - - # Run: nix-unit --extra-experimental-features flakes --flake .#legacyPackages.x86_64-linux.evalTests-build-clan - legacyPackages.evalTests-build-clan = import ./tests.nix { - inherit lib; - clan-core = self; - }; - checks = { - eval-lib-build-clan = pkgs.runCommand "tests" { nativeBuildInputs = [ pkgs.nix-unit ]; } '' - export HOME="$(realpath .)" - - nix-unit --eval-store "$HOME" \ - --extra-experimental-features flakes \ - --show-trace \ - ${inputOverrides} \ - --flake ${ - self.filter { - include = [ - "flakeModules" - "inventory.json" - "lib" - "machines" - "nixosModules" - ]; - } - }#legacyPackages.${system}.evalTests-build-clan - - touch $out - ''; - }; }; } diff --git a/pkgs/option-search/flake-module.nix b/pkgs/option-search/flake-module.nix index b74b2b4a4..284e92dff 100644 --- a/pkgs/option-search/flake-module.nix +++ b/pkgs/option-search/flake-module.nix @@ -118,7 +118,7 @@ _file = "docs flake-module"; imports = [ { _module.args = { inherit clanLib; }; } - (import ../../lib/modules/inventoryClass/roles-interface.nix { + (import ../../modules/inventoryClass/roles-interface.nix { nestedSettingsOption = mkOption { type = types.raw; description = ''