refactor(dotfiles): separate registry validation

This commit is contained in:
2026-10-04 21:26:20 -04:00
parent 3e9295134e
commit 9d818712fe
2 changed files with 19 additions and 19 deletions

View File

@@ -19,14 +19,12 @@ let
]; ];
}).config; }).config;
data = validate ( validate = import ./registry/validation.nix { inherit definitions lib; };
lib.mapAttrs (
data = lib.mapAttrs (
registryName: _registry: registryName: _registry:
lib.mapAttrs (hostName: host: host.config.registry.${registryName}.${hostName} or { }) hosts lib.mapAttrs (hostName: host: host.config.registry.${registryName}.${hostName} or { }) hosts
) definitions ) definitions;
);
validate = import ./registry/validation.nix { inherit definitions lib; };
in in
{ {
types = lib.mapAttrs (_name: definition: definition.type) definitions; types = lib.mapAttrs (_name: definition: definition.type) definitions;
@@ -45,7 +43,10 @@ in
) definitions; ) definitions;
}; };
collected = data // { collected =
assert validate data;
data
// {
join = join =
host: entry: host: entry:
lib.filterAttrs (_name: value: value != null) ( lib.filterAttrs (_name: value: value != null) (

View File

@@ -35,7 +35,6 @@ let
assertions = validationAssertions data; assertions = validationAssertions data;
failures = lib.filter (assertion: !assertion.assertion) assertions; failures = lib.filter (assertion: !assertion.assertion) assertions;
in in
assert lib.assertMsg (lib.all (assertion: assertion.assertion) assertions) ( lib.assertMsg (lib.all (assertion: assertion.assertion) assertions) (
lib.concatMapStringsSep "\n" (assertion: assertion.message) failures lib.concatMapStringsSep "\n" (assertion: assertion.message) failures
); )
data