Do not import kubernets node labels from nixos-servers

This commit is contained in:
Pim Kunis 2024-11-04 23:16:51 +01:00
parent e18f3c7caa
commit 7be57d26f0
4 changed files with 157 additions and 23 deletions

View file

@ -158,6 +158,22 @@
} }
}, },
"flake-compat_4": { "flake-compat_4": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_5": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1673956053, "lastModified": 1673956053,
@ -173,7 +189,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat_5": { "flake-compat_6": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1696426674,
@ -335,6 +351,30 @@
"type": "github" "type": "github"
} }
}, },
"git-hooks_2": {
"inputs": {
"flake-compat": "flake-compat_4",
"gitignore": "gitignore_2",
"nixpkgs": [
"servers",
"nixpkgs-unstable"
],
"nixpkgs-stable": "nixpkgs-stable_2"
},
"locked": {
"lastModified": 1730302582,
"narHash": "sha256-W1MIJpADXQCgosJZT8qBYLRuZls2KSiKdpnTVdKBuvU=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "af8a16fe5c264f5e9e18bcee2859b40a656876cf",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitignore": { "gitignore": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -356,6 +396,28 @@
"type": "github" "type": "github"
} }
}, },
"gitignore_2": {
"inputs": {
"nixpkgs": [
"servers",
"git-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"haumea": { "haumea": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -403,7 +465,7 @@
}, },
"kubenix_2": { "kubenix_2": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_4", "flake-compat": "flake-compat_5",
"nixpkgs": [ "nixpkgs": [
"servers", "servers",
"nixpkgs-unstable" "nixpkgs-unstable"
@ -480,7 +542,7 @@
}, },
"nix-snapshotter": { "nix-snapshotter": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_5", "flake-compat": "flake-compat_6",
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"nixpkgs": [ "nixpkgs": [
"servers", "servers",
@ -568,6 +630,21 @@
"type": "github" "type": "github"
} }
}, },
"nixos-facter-modules": {
"locked": {
"lastModified": 1730737399,
"narHash": "sha256-PzJrTMhHb9f46uMxmRD4GjnyVuNqxeyEvxaq7OierUQ=",
"owner": "numtide",
"repo": "nixos-facter-modules",
"rev": "c22b916f629fee6941a2976c62247b0bec68082b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "nixos-facter-modules",
"type": "github"
}
},
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1729742320, "lastModified": 1729742320,
@ -617,6 +694,22 @@
} }
}, },
"nixpkgs-stable_2": { "nixpkgs-stable_2": {
"locked": {
"lastModified": 1720386169,
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "194846768975b7ad2c4988bdb82572c00222c0d7",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_3": {
"locked": { "locked": {
"lastModified": 1729357638, "lastModified": 1729357638,
"narHash": "sha256-66RHecx+zohbZwJVEPF7uuwHeqf8rykZTMCTqIrOew4=", "narHash": "sha256-66RHecx+zohbZwJVEPF7uuwHeqf8rykZTMCTqIrOew4=",
@ -696,6 +789,22 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_5": {
"locked": {
"lastModified": 1726871744,
"narHash": "sha256-V5LpfdHyQkUF7RfOaDPrZDP+oqz88lTJrMT1+stXNwo=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "a1d92660c6b3b7c26fb883500a80ea9d33321be2",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"poetry2nix": { "poetry2nix": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_4", "flake-utils": "flake-utils_4",
@ -732,7 +841,7 @@
"nixng": "nixng", "nixng": "nixng",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"servers": "servers", "servers": "servers",
"treefmt-nix": "treefmt-nix_3" "treefmt-nix": "treefmt-nix_4"
} }
}, },
"servers": { "servers": {
@ -741,22 +850,25 @@
"disko": "disko", "disko": "disko",
"dns": "dns_2", "dns": "dns_2",
"flake-utils": "flake-utils_6", "flake-utils": "flake-utils_6",
"git-hooks": "git-hooks_2",
"kubenix": "kubenix_2", "kubenix": "kubenix_2",
"nix-snapshotter": "nix-snapshotter", "nix-snapshotter": "nix-snapshotter",
"nixng": "nixng_2", "nixng": "nixng_2",
"nixos-facter-modules": "nixos-facter-modules",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"sops-nix": "sops-nix" "sops-nix": "sops-nix",
"treefmt-nix": "treefmt-nix_3"
}, },
"locked": { "locked": {
"lastModified": 1729864092, "lastModified": 1730757386,
"narHash": "sha256-8AL1TTUYu6KxcT2C9NNlvAtZvYoaniNqkTibSW9aIh0=", "narHash": "sha256-oJOJrj38CS1lSxYHdU5x/ect9TVu9J/DRDJ/o+zQv/8=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "2352a1a9177fbb7d3fed042cc74f80e079196020", "rev": "ed550eafb115c78def25f2c88b54ce3f70daa6a6",
"revCount": 477, "revCount": 489,
"type": "git", "type": "git",
"url": "https://git.kun.is/home/nixos-servers" "url": "https://git.kun.is/home/nixos-servers"
}, },
@ -771,7 +883,7 @@
"servers", "servers",
"nixpkgs" "nixpkgs"
], ],
"nixpkgs-stable": "nixpkgs-stable_2" "nixpkgs-stable": "nixpkgs-stable_3"
}, },
"locked": { "locked": {
"lastModified": 1729775275, "lastModified": 1729775275,
@ -969,6 +1081,24 @@
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": {
"lastModified": 1730025913,
"narHash": "sha256-Y9NtFmP8ciLyRsopcCx1tyoaaStKeq+EndwtGCgww7I=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "bae131e525cc8718da22fbeb8d8c7c43c4ea502a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"treefmt-nix_4": {
"inputs": {
"nixpkgs": "nixpkgs_5"
},
"locked": { "locked": {
"lastModified": 1730120726, "lastModified": 1730120726,
"narHash": "sha256-LqHYIxMrl/1p3/kvm2ir925tZ8DkI0KA10djk8wecSk=", "narHash": "sha256-LqHYIxMrl/1p3/kvm2ir925tZ8DkI0KA10djk8wecSk=",

View file

@ -32,6 +32,16 @@
hedgedoc = "quay.io/hedgedoc/hedgedoc:1.10.0"; hedgedoc = "quay.io/hedgedoc/hedgedoc:1.10.0";
minecraft = "itzg/minecraft-server:latest"; minecraft = "itzg/minecraft-server:latest";
}; };
nodeLabels = {
atlas.storageType = "slow";
jefke.storageType = "fast";
lewis = {
storageType = "fast";
hasMedia = "true";
};
};
}; };
in { in {
globals = globals // servers.globals; globals = globals // servers.globals;

View file

@ -1,6 +1,5 @@
inputs @ { inputs @ {
self, self,
servers,
flake-utils, flake-utils,
nixpkgs, nixpkgs,
kubenix, kubenix,
@ -14,12 +13,10 @@ flake-utils.lib.eachDefaultSystem
buildCommand = "${old.buildCommand}\npatchShebangs $out"; buildCommand = "${old.buildCommand}\npatchShebangs $out";
}); });
machines = servers.machines.${system};
mkKubernetes = name: module: namespace: mkKubernetes = name: module: namespace:
(kubenix.evalModules.${system} { (kubenix.evalModules.${system} {
specialArgs = { specialArgs = {
inherit namespace system machines self; inherit namespace system self;
inherit (inputs) nixhelm blog-pim dns nixpkgs nixng; inherit (inputs) nixhelm blog-pim dns nixpkgs nixng;
inherit (self) globals; inherit (self) globals;
@ -74,8 +71,8 @@ flake-utils.lib.eachDefaultSystem
postBuild = let postBuild = let
# HACK: create normal way of checking if server runs k8s # HACK: create normal way of checking if server runs k8s
k8sMachines = lib.filterAttrs (n: m: m.kubernetesNodeLabels != null) machines; k8sMachines = builtins.attrNames self.globals.nodeLabels;
k8sServerNames = builtins.concatStringsSep " " (builtins.attrNames k8sMachines); k8sServerNames = builtins.concatStringsSep " " k8sMachines;
in in
/* /*
bash bash

View file

@ -4,7 +4,6 @@
nixhelm, nixhelm,
system, system,
globals, globals,
machines,
... ...
}: { }: {
options.bootstrap-default.enable = lib.mkEnableOption "bootstrap-default"; options.bootstrap-default.enable = lib.mkEnableOption "bootstrap-default";
@ -65,14 +64,12 @@
ntfy = {}; ntfy = {};
}; };
nodes = let nodes =
machinesWithKubernetesLabels = lib.filterAttrs (name: machine: machine.kubernetesNodeLabels != null) machines;
in
builtins.mapAttrs builtins.mapAttrs
(name: machine: { (name: labels: {
metadata.labels = machine.kubernetesNodeLabels; metadata.labels = labels;
}) })
machinesWithKubernetesLabels; globals.nodeLabels;
recurringJobs.backup-nfs.spec = { recurringJobs.backup-nfs.spec = {
cron = "0 1 * * *"; # One o'clock at night cron = "0 1 * * *"; # One o'clock at night