117 lines
2.4 KiB
Nix
117 lines
2.4 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}:
|
|
with lib; {
|
|
config = {
|
|
m-0.monitoring = [
|
|
{
|
|
host = "apollo:9100";
|
|
name = "apollo";
|
|
flaky = true;
|
|
}
|
|
{
|
|
host = "apollo:9558";
|
|
name = "apollo-user";
|
|
flaky = true;
|
|
}
|
|
{
|
|
host = "hera:9558";
|
|
name = "hera-user";
|
|
flaky = true;
|
|
}
|
|
{
|
|
host = "zeus:9100";
|
|
name = "zeus";
|
|
flaky = true;
|
|
}
|
|
{
|
|
host = "zeus:9558";
|
|
name = "zeus-user";
|
|
flaky = true;
|
|
}
|
|
{
|
|
host = "fluffy.vpn.m-0.eu:9100";
|
|
name = "fluffy";
|
|
}
|
|
{
|
|
host = "fluffy.vpn.m-0.eu:9558";
|
|
name = "fluffy-user";
|
|
}
|
|
{
|
|
name = "ved server";
|
|
host = "bach.vocalensemble-darmstadt.de:9100";
|
|
}
|
|
{
|
|
name = "ved postfix";
|
|
host = "bach.vocalensemble-darmstadt.de:9154";
|
|
}
|
|
];
|
|
};
|
|
|
|
options = {
|
|
m-0.private = mkOption {
|
|
default = {};
|
|
type = types.attrs;
|
|
};
|
|
m-0.prefix = mkOption {
|
|
default = "2a02:c207:3002:7584";
|
|
type = types.str;
|
|
};
|
|
m-0.monitoring = mkOption {
|
|
type = types.listOf (types.submodule {
|
|
options = {
|
|
name = mkOption {type = types.str;};
|
|
host = mkOption {type = types.str;};
|
|
container = mkOption {
|
|
type = types.bool;
|
|
default = false;
|
|
};
|
|
flaky = mkOption {
|
|
type = types.bool;
|
|
default = false;
|
|
};
|
|
};
|
|
});
|
|
default = [];
|
|
};
|
|
m-0.hosts = mkOption {
|
|
type = types.attrs;
|
|
default = let
|
|
p = config.m-0.prefix;
|
|
hera-p = "${p}::3";
|
|
apollo-p = "${p}::1";
|
|
wg-p = "${p}::100";
|
|
v4-p = "10.0.0";
|
|
in rec {
|
|
hera = "${p}::1";
|
|
vpn = rec {
|
|
prefix = "fdc0:7";
|
|
hera = "${prefix}::1";
|
|
fluffy = "${prefix}::2";
|
|
apollo = "${prefix}::5";
|
|
zeus = "${prefix}::4";
|
|
pegasus = "${prefix}::6";
|
|
};
|
|
hera-wg-host = "${p}::100:0:1";
|
|
|
|
hera-v4 = "213.136.94.190";
|
|
|
|
hera-wg = "${wg-p}:1";
|
|
apollo-wg = "${wg-p}:2";
|
|
zeus-wg = "${wg-p}:3";
|
|
|
|
hera-intern = "${hera-p}:1";
|
|
chor-cloud = "${hera-p}:b";
|
|
|
|
apollo = apollo-wg;
|
|
zeus = zeus-wg;
|
|
|
|
hera-intern-v4 = "${v4-p}.1";
|
|
chor-cloud-intern-v4 = "${v4-p}.3";
|
|
};
|
|
};
|
|
};
|
|
}
|