infrastructure/meta/nodes.nix

65 lines
1.1 KiB
Nix

###
# File specifying all the deployement options for the nodes administrated by the dgnum.
#
# Node metadata template is:
#
# NODE_NAME = {
# adminGroups = []; # List of groups that have root access
# admins = []; # List of individuals that have root access
# deployment = {}; # Colmena deployment options
# nixpkgs = "unstable" or "22.11"; # nixpkgs version
# }
let
mkNode =
_: attrs:
{
adminGroups = [ ];
admins = [ ];
deployment = { };
nixpkgs = "23.11";
}
// attrs;
in
builtins.mapAttrs mkNode {
web01 = {
deployment.tags = [ "web" ];
stateVersion = "23.05";
};
compute01 = {
stateVersion = "23.05";
};
geo01 = {
deployment.tags = [ "geo" ];
stateVersion = "24.05";
nixpkgs = "unstable";
};
geo02 = {
deployment.tags = [ "geo" ];
stateVersion = "24.05";
nixpkgs = "unstable";
};
storage01 = {
stateVersion = "23.11";
};
vault01 = {
stateVersion = "23.11";
nixpkgs = "unstable";
};
web02 = {
stateVersion = "24.05";
nixpkgs = "unstable";
};
}