nixos/tests/prometheus-exporters/kea: migrate to kea nixos module
This commit is contained in:
parent
508408559a
commit
cf139f7203
@ -26,6 +26,7 @@ in {
|
|||||||
};
|
};
|
||||||
serviceOpts = {
|
serviceOpts = {
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
User = "kea";
|
||||||
ExecStart = ''
|
ExecStart = ''
|
||||||
${pkgs.prometheus-kea-exporter}/bin/kea-exporter \
|
${pkgs.prometheus-kea-exporter}/bin/kea-exporter \
|
||||||
--address ${cfg.listenAddress} \
|
--address ${cfg.listenAddress} \
|
||||||
|
@ -326,49 +326,36 @@ let
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
kea = {
|
kea = let
|
||||||
|
controlSocketPath = "/run/kea/dhcp6.sock";
|
||||||
|
in
|
||||||
|
{
|
||||||
exporterConfig = {
|
exporterConfig = {
|
||||||
enable = true;
|
enable = true;
|
||||||
controlSocketPaths = [
|
controlSocketPaths = [
|
||||||
"/run/kea/kea-dhcp6.sock"
|
controlSocketPath
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
metricProvider = {
|
metricProvider = {
|
||||||
users.users.kea = {
|
systemd.services.prometheus-kea-exporter.after = [ "kea-dhcp6-server.service" ];
|
||||||
isSystemUser = true;
|
|
||||||
};
|
|
||||||
users.groups.kea = {};
|
|
||||||
|
|
||||||
systemd.services.prometheus-kea-exporter.after = [ "kea-dhcp6.service" ];
|
services.kea = {
|
||||||
|
enable = true;
|
||||||
|
dhcp6 = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
control-socket = {
|
||||||
|
socket-type = "unix";
|
||||||
|
socket-name = controlSocketPath;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
systemd.services.kea-dhcp6 = let
|
|
||||||
configFile = pkgs.writeText "kea-dhcp6.conf" (builtins.toJSON {
|
|
||||||
Dhcp6 = {
|
|
||||||
"control-socket" = {
|
|
||||||
"socket-type" = "unix";
|
|
||||||
"socket-name" = "/run/kea/kea-dhcp6.sock";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
});
|
|
||||||
in
|
|
||||||
{
|
|
||||||
after = [ "network.target" ];
|
|
||||||
wantedBy = [ "multi-user.target" ];
|
|
||||||
|
|
||||||
serviceConfig = {
|
|
||||||
DynamicUser = false;
|
|
||||||
User = "kea";
|
|
||||||
Group = "kea";
|
|
||||||
ExecStart = "${pkgs.kea}/bin/kea-dhcp6 -c ${configFile}";
|
|
||||||
StateDirectory = "kea";
|
|
||||||
RuntimeDirectory = "kea";
|
|
||||||
UMask = "0007";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
exporterTest = ''
|
exporterTest = ''
|
||||||
wait_for_unit("kea-dhcp6.service")
|
wait_for_unit("kea-dhcp6-server.service")
|
||||||
wait_for_file("/run/kea/kea-dhcp6.sock")
|
wait_for_file("${controlSocketPath}")
|
||||||
wait_for_unit("prometheus-kea-exporter.service")
|
wait_for_unit("prometheus-kea-exporter.service")
|
||||||
wait_for_open_port(9547)
|
wait_for_open_port(9547)
|
||||||
succeed(
|
succeed(
|
||||||
|
Loading…
Reference in New Issue
Block a user