67 lines
1.6 KiB
Nix
67 lines
1.6 KiB
Nix
{ nixpkgs, agenix, ... }:
|
|
|
|
let
|
|
system = "x86_64-linux";
|
|
baseModules = [
|
|
agenix.nixosModules.default
|
|
{ environment.systemPackages = [ agenix.packages.${system}.default ]; }
|
|
{
|
|
age.secrets = {
|
|
#etcd-root-crt = {
|
|
# file = ./secrets/etcd-root-crt.age;
|
|
# mode = "444";
|
|
# owner = "root";
|
|
# group = "root";
|
|
#};
|
|
#k8s-root-crt = {
|
|
# file = ./secrets/k8s-root-crt.age;
|
|
# mode = "444";
|
|
# owner = "root";
|
|
# group = "root";
|
|
#};
|
|
};
|
|
}
|
|
];
|
|
mkSystem =
|
|
extraModules:
|
|
nixpkgs.lib.nixosSystem {
|
|
inherit system;
|
|
modules = baseModules ++ extraModules;
|
|
};
|
|
mkControlPlaneNode =
|
|
extraModules:
|
|
mkSystem [
|
|
#./services/etcd.nix
|
|
#./services/k8s.nix
|
|
#./services/k8s-apiserver.nix
|
|
#./services/k8s-controller-manager.nix
|
|
#./services/k8s-kubelet.nix
|
|
#./services/k8s-proxy.nix
|
|
#./services/k8s-scheduler.nix
|
|
]
|
|
++ extraModules;
|
|
mkWorkerNode =
|
|
extraModules:
|
|
mkSystem [
|
|
#./services/k8s.nix
|
|
#./services/k8s-kubelet.nix
|
|
#./services/k8s-proxy.nix
|
|
]
|
|
++ extraModules;
|
|
in
|
|
{
|
|
"kaede" = nixpkgs.lib.nixosSystem {
|
|
inherit system;
|
|
modules = [
|
|
./hosts/kaede
|
|
];
|
|
};
|
|
"master-01" = mkControlPlaneNode [ ];
|
|
"master-02" = mkControlPlaneNode [ ];
|
|
"master-03" = mkControlPlaneNode [ ];
|
|
"worker-01" = mkWorkerNode [ ];
|
|
"worker-02" = mkWorkerNode [ ];
|
|
"worker-03" = mkWorkerNode [ ];
|
|
"worker-04" = mkWorkerNode [ ];
|
|
"worker-05" = mkWorkerNode [ ];
|
|
}
|