feat(submodules): support for submodule passthru

This commit is contained in:
Jaka Hudoklin 2019-10-06 21:36:13 +02:00
parent 7afbc91301
commit a8dcc69d54
No known key found for this signature in database
GPG key ID: D1F18234B07BD6E2
5 changed files with 30 additions and 30 deletions

View file

@ -44,6 +44,20 @@ let
then throw "No module found ${name}/${if version == null then "latest" else version}"
else head versionSortedSubmodules;
in matchingModule;
passthruConfig = mapAttrsToList (name: opt: {
${name} = mkMerge (mapAttrsToList (_: inst:
if inst.passthru.enable
then inst.config.submodule.passthru.${name} or {}
else {}
) config.submodules.instances);
_module.args = mkMerge (mapAttrsToList (_: inst:
if inst.passthru.enable
then inst.config.submodule.passthru._module.args or {}
else {}
) config.submodules.instances);
}) (removeAttrs options ["_definedNames" "_module" "submodules"]);
in {
imports = [ ./base.nix ];
@ -248,5 +262,5 @@ in {
};
}];
})
];
] ++ passthruConfig);
}