diff --git a/modules/clan/prometheus/default.nix b/modules/clan/prometheus/default.nix index f3889d6..8ce7246 100644 --- a/modules/clan/prometheus/default.nix +++ b/modules/clan/prometheus/default.nix @@ -116,6 +116,10 @@ } else throw "clanService/yggdrasil is required"; + + matrixRoomReceivers = lib.unique ( + lib.concatMap (entry: entry.receivers) settings.matrix-alertmanager.matrixRooms + ); in { networking.firewall.allowedTCPPorts = [ @@ -144,10 +148,20 @@ }; route = { receiver = "default"; + routes = map (mReceiver: { receiver = mReceiver; }) matrixRoomReceivers; }; receivers = [ { name = "default"; } - ]; + ] + ++ map (mReceiver: { + name = mReceiver; + webhook_config = [ + { + url_file = config.clan.core.vars.generators.prometheus.files.matrix-alertmanager-urlfile.path; + send_resolved = true; + } + ]; + }) matrixRoomReceivers; }; };