diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index dd2db8de5a33..22377ce3fbc8 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -454,6 +454,8 @@ - Kanidm previously had an incorrect systemd service type, causing dependent units with an `after` and `requires` directive to start before `kanidm*` finished startup. The module has now been updated in line with upstream recommendations. +- The kubelet configuration file can now be amended with arbitrary additional content using the `services.kubernetes.kubelet.extraConfig` option. + - To facilitate dependency injection, the `imgui` package now builds a static archive using vcpkg' CMake rules. The derivation now installs "impl" headers selectively instead of by a wildcard. Use `imgui.src` if you just want to access the unpacked sources. diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix index cdbda5fc62f9..8fa820ac44e9 100644 --- a/nixos/modules/services/cluster/kubernetes/kubelet.nix +++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix @@ -66,6 +66,7 @@ let // lib.optionalAttrs (cfg.clusterDomain != "") { clusterDomain = cfg.clusterDomain; } // lib.optionalAttrs (cfg.clusterDns != []) { clusterDNS = cfg.clusterDns; } // lib.optionalAttrs (cfg.featureGates != {}) { featureGates = cfg.featureGates; } + // lib.optionalAttrs (cfg.extraConfig != {}) cfg.extraConfig )); manifestPath = "kubernetes/manifests"; @@ -184,6 +185,12 @@ in type = separatedString " "; }; + extraConfig = mkOption { + description = "Kubernetes kubelet extra configuration file entries."; + default = {}; + type = attrsOf attrs; + }; + featureGates = mkOption { description = "Attribute set of feature gate"; default = top.featureGates;