mob next [ci-skip] [ci skip] [skip ci]
lastFile:modules/clan/prometheus/default.nix
This commit is contained in:
+87
-73
@@ -320,81 +320,95 @@
|
||||
name = "prometheus";
|
||||
input = "self";
|
||||
};
|
||||
roles.server.machines."rigel".settings = { };
|
||||
roles.server.extraModules = [
|
||||
(
|
||||
{ config, pkgs, ... }:
|
||||
roles.server.machines."rigel".settings = {
|
||||
matrix-alertmanager = {
|
||||
enable = true;
|
||||
homeserverUrl = "https://matrix-client.matrix.org";
|
||||
matrixUser = "@kuroiris:matrix.org";
|
||||
matrixRooms = [
|
||||
{
|
||||
# clan.core.vars.generators.prometheus = {
|
||||
# files.matrix-alertmanager-token.secret = true;
|
||||
# files.matrix-alertmanager-secret.secret = true;
|
||||
# files.matrix-alertmanager-urlfile = {
|
||||
# secret = true;
|
||||
# owner = "alertmanager";
|
||||
# group = "alertmanager";
|
||||
# };
|
||||
# script = ''
|
||||
# echo "" > $out/matrix-alertmanager-token
|
||||
# openssl rand -hex 32 > "$out"/matrix-alertmanager-secret
|
||||
#
|
||||
# echo "http://localhost:3000/alerts?secret=$(cat $out/matrix-alertmanager-secret)" > $out/matrix-alertmanager-urlfile
|
||||
# '';
|
||||
# runtimeInputs = [
|
||||
# pkgs.openssl
|
||||
# ];
|
||||
# };
|
||||
#
|
||||
# services.matrix-alertmanager = {
|
||||
# enable = true;
|
||||
# tokenFile = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-token.path;
|
||||
# secretFile = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-secret.path;
|
||||
# homeserverUrl = "https://matrix-client.matrix.org";
|
||||
# matrixUser = "@kuroiris:matrix.org";
|
||||
# matrixRooms = [
|
||||
# {
|
||||
# receivers = [
|
||||
# "matrix"
|
||||
# ];
|
||||
# roomId = "!rqIrWqPvsXqMgYpcNZ:matrix.org";
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
|
||||
# services.prometheus = {
|
||||
#
|
||||
# alertmanager = {
|
||||
# enable = true;
|
||||
# configuration = {
|
||||
# global = {
|
||||
# resolve_timeout = "5m";
|
||||
# };
|
||||
# route = {
|
||||
# receiver = "default";
|
||||
# routes = [
|
||||
# {
|
||||
# receiver = "matrix";
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
# receivers = [
|
||||
# { name = "default"; }
|
||||
# {
|
||||
# name = "matrix";
|
||||
# webhook_configs = [
|
||||
# {
|
||||
# url_file = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-urlfile.path;
|
||||
# send_resolved = true;
|
||||
# }
|
||||
# ];
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
# };
|
||||
#
|
||||
# };
|
||||
}
|
||||
)
|
||||
receivers = [
|
||||
"matrix"
|
||||
];
|
||||
roomId = "!rqIrWqPvsXqMgYpcNZ:matrix.org";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
# roles.server.extraModules = [
|
||||
# (
|
||||
# { config, pkgs, ... }:
|
||||
# {
|
||||
# # clan.core.vars.generators.prometheus = {
|
||||
# # files.matrix-alertmanager-token.secret = true;
|
||||
# # files.matrix-alertmanager-secret.secret = true;
|
||||
# # files.matrix-alertmanager-urlfile = {
|
||||
# # secret = true;
|
||||
# # owner = "alertmanager";
|
||||
# # group = "alertmanager";
|
||||
# # };
|
||||
# # script = ''
|
||||
# # echo "" > $out/matrix-alertmanager-token
|
||||
# # openssl rand -hex 32 > "$out"/matrix-alertmanager-secret
|
||||
# #
|
||||
# # echo "http://localhost:3000/alerts?secret=$(cat $out/matrix-alertmanager-secret)" > $out/matrix-alertmanager-urlfile
|
||||
# # '';
|
||||
# # runtimeInputs = [
|
||||
# # pkgs.openssl
|
||||
# # ];
|
||||
# # };
|
||||
# #
|
||||
# # services.matrix-alertmanager = {
|
||||
# # enable = true;
|
||||
# # tokenFile = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-token.path;
|
||||
# # secretFile = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-secret.path;
|
||||
# # homeserverUrl = "https://matrix-client.matrix.org";
|
||||
# # matrixUser = "@kuroiris:matrix.org";
|
||||
# # matrixRooms = [
|
||||
# # {
|
||||
# # receivers = [
|
||||
# # "matrix"
|
||||
# # ];
|
||||
# # roomId = "!rqIrWqPvsXqMgYpcNZ:matrix.org";
|
||||
# # }
|
||||
# # ];
|
||||
# # };
|
||||
#
|
||||
# # services.prometheus = {
|
||||
# #
|
||||
# # alertmanager = {
|
||||
# # enable = true;
|
||||
# # configuration = {
|
||||
# # global = {
|
||||
# # resolve_timeout = "5m";
|
||||
# # };
|
||||
# # route = {
|
||||
# # receiver = "default";
|
||||
# # routes = [
|
||||
# # {
|
||||
# # receiver = "matrix";
|
||||
# # }
|
||||
# # ];
|
||||
# # };
|
||||
# # receivers = [
|
||||
# # { name = "default"; }
|
||||
# # {
|
||||
# # name = "matrix";
|
||||
# # webhook_configs = [
|
||||
# # {
|
||||
# # url_file = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-urlfile.path;
|
||||
# # send_resolved = true;
|
||||
# # }
|
||||
# # ];
|
||||
# # }
|
||||
# # ];
|
||||
# # };
|
||||
# # };
|
||||
# #
|
||||
# # };
|
||||
# }
|
||||
# )
|
||||
# ];
|
||||
|
||||
roles.nodes.machines = {
|
||||
vega.settings = {
|
||||
|
||||
@@ -122,6 +122,7 @@
|
||||
lib.concatMap (entry: entry.receivers) settings.matrix-alertmanager.matrixRooms
|
||||
);
|
||||
in
|
||||
lib.mkMerge [
|
||||
{
|
||||
networking.firewall.allowedTCPPorts = [
|
||||
9090
|
||||
@@ -156,7 +157,7 @@
|
||||
]
|
||||
++ map (mReceiver: {
|
||||
name = mReceiver;
|
||||
webhook_config = [
|
||||
webhook_configs = [
|
||||
{
|
||||
url_file = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-urlfile.path;
|
||||
send_resolved = true;
|
||||
@@ -234,7 +235,8 @@
|
||||
};
|
||||
|
||||
}
|
||||
// lib.optionalAttrs settings.matrix-alertmanager.enable {
|
||||
(lib.optionalAttrs settings.matrix-alertmanager.enable {
|
||||
|
||||
clan.core.vars.generators.prometheus = {
|
||||
files.matrix-alertmanager-token.secret = true;
|
||||
files.matrix-alertmanager-secret.secret = true;
|
||||
@@ -262,7 +264,8 @@
|
||||
matrixUser = settings.matrix-alertmanager.matrixUser;
|
||||
matrixRooms = settings.matrix-alertmanager.matrixRooms;
|
||||
};
|
||||
};
|
||||
})
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user