feat: made a function to create the nodes from teh config attribute
This commit is contained in:
parent
f75c4626b5
commit
bd970bebd0
1 changed files with 17 additions and 7 deletions
24
flake.nix
24
flake.nix
|
@ -24,6 +24,10 @@
|
||||||
modules = [
|
modules = [
|
||||||
./machines/base.nix
|
./machines/base.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# for
|
||||||
|
hostname = "test01.home.brendan.ie";
|
||||||
|
sshUser = "root";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -44,19 +48,25 @@
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
create_nodes = map (
|
||||||
|
config: {
|
||||||
|
${config.name} = {
|
||||||
|
hostname = config.hostname;
|
||||||
|
profiles.system = {
|
||||||
|
path = deploy-rs.lib."${config.system}".activate.nixos self.nixosConfigurations."${config.name}";
|
||||||
|
sshUser = config.sshUser;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
# this merges together an array of atributes
|
# this merges together an array of atributes
|
||||||
merge = nixpkgs.lib.lists.foldl (a: b: a // b) {};
|
merge = nixpkgs.lib.lists.foldl (a: b: a // b) {};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
nixosConfigurations = merge (create_nixosConfigurations machine_config);
|
nixosConfigurations = merge (create_nixosConfigurations machine_config);
|
||||||
|
|
||||||
deploy.nodes.some-random-system2 = {
|
deploy.nodes = merge (create_nodes machine_config);
|
||||||
hostname = "test01.home.brendan.ie";
|
|
||||||
profiles.system = {
|
|
||||||
path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.test01;
|
|
||||||
sshUser = "root";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# This is highly advised, and will prevent many possible mistakes
|
# This is highly advised, and will prevent many possible mistakes
|
||||||
checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib;
|
checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib;
|
||||||
|
|
Loading…
Reference in a new issue