feat(prox): reisen node config

This commit is contained in:
arcnmx 2024-04-16 16:22:02 -07:00
parent 3053ec927c
commit bdc353964d
7 changed files with 116 additions and 26 deletions

View file

@ -40,9 +40,16 @@
};
};
mkNodeSystems = systems: mapAttrs (_: mkNodeSystem) systems;
mkNode = {name}: {
mkExtern = system: {
files = mapAttrs' (_: file: nameValuePair file.path {
source = assert file.relativeSource != null; file.relativeSource;
inherit (file) owner group mode;
}) system.extern.files;
};
mkNode = system: {
users = mkNodeUsers templateUsers;
systems = mkNodeSystems (nodeSystems name);
systems = mkNodeSystems (nodeSystems system.config.name);
extern = mkExtern system.config;
};
mkNetwork = system: {
inherit (system.config.access) hostName;
@ -58,6 +65,8 @@
network = mkNetwork system;
};
in {
reisen = mkNode {name = "reisen";};
nodes = let
nodes = filterAttrs (_: node: node.config.proxmox.node.enable) systems;
in mapAttrs (_: mkNode) nodes;
systems = mapAttrs mkSystem systems;
}