diff options
| author | Martin Fischer <martin@push-f.com> | 2026-01-24 09:49:01 +0100 |
|---|---|---|
| committer | Martin Fischer <martin@push-f.com> | 2026-01-24 10:00:12 +0100 |
| commit | 9cbeb3d9b3878d57f2c0def4bbe3d928001a69c5 (patch) | |
| tree | bb94753dd7626ed494ffca37825b459454cef446 /nixos | |
| parent | fd62f221db9eb59938166147bc923d6059553a5c (diff) | |
tweak(tente): send Grafana alerts via email instead of Matrix
Less moving parts. Instead of:
Grafana -> Forwarder -> Conduit -> UnifiedPush? -> Matrix client
just
Grafana -> Mail server -> Mail client
Diffstat (limited to 'nixos')
| -rw-r--r-- | nixos/hosts/tente/default.nix | 2 | ||||
| -rw-r--r-- | nixos/hosts/tente/grafana.nix | 28 | ||||
| -rw-r--r-- | nixos/hosts/tente/secrets/alerts-smtp.age | 7 | ||||
| -rw-r--r-- | nixos/hosts/tente/secrets/grafana-matrix-forwarder-env.age | bin | 449 -> 0 bytes | |||
| -rw-r--r-- | nixos/npins/sources.json | 15 | ||||
| -rw-r--r-- | nixos/shared/grafana-matrix-forwarder/default.nix | 10 | ||||
| -rw-r--r-- | nixos/shared/grafana-matrix-forwarder/service.nix | 31 |
7 files changed, 18 insertions, 75 deletions
diff --git a/nixos/hosts/tente/default.nix b/nixos/hosts/tente/default.nix index 8297fc9..2dcfe62 100644 --- a/nixos/hosts/tente/default.nix +++ b/nixos/hosts/tente/default.nix @@ -102,8 +102,6 @@ in grafana = { port = ports.grafana; - matrixForwarderPort = ports.grafanaMatrixForwarder; - matrixServerUrl = "http://localhost:${toString ports.matrix}"; }; headscale = { diff --git a/nixos/hosts/tente/grafana.nix b/nixos/hosts/tente/grafana.nix index 73ea0d3..f6db5ca 100644 --- a/nixos/hosts/tente/grafana.nix +++ b/nixos/hosts/tente/grafana.nix @@ -9,20 +9,13 @@ in port = lib.mkOption { type = lib.types.int; }; - matrixForwarderPort = lib.mkOption { - type = lib.types.int; - }; - matrixServerUrl = lib.mkOption { - type = lib.types.str; - }; }; - imports = [ - <top/shared/grafana-matrix-forwarder/service.nix> - ]; - config = { - age.secrets.grafana-matrix-forwarder-env.file = ./secrets/grafana-matrix-forwarder-env.age; + age.secrets.alerts-smtp = { + file = ./secrets/alerts-smtp.age; + owner = "grafana"; + }; services.grafana = { enable = true; @@ -31,6 +24,13 @@ in http_addr = "0.0.0.0"; http_port = cfg.port; }; + smtp = rec { + enabled = true; + host = "smtp.migadu.com:465"; + user = "alerts@push-f.com"; + from_address = user; + password = "$__file{${config.age.secrets.alerts-smtp.path}}"; + }; }; provision = { @@ -61,11 +61,5 @@ in ]; }; }; - services.grafana-matrix-forwarder = { - enable = true; - port = cfg.matrixForwarderPort; - homeserver = cfg.matrixServerUrl; - environmentFile = config.age.secrets.grafana-matrix-forwarder-env.path; - }; }; } diff --git a/nixos/hosts/tente/secrets/alerts-smtp.age b/nixos/hosts/tente/secrets/alerts-smtp.age new file mode 100644 index 0000000..d673690 --- /dev/null +++ b/nixos/hosts/tente/secrets/alerts-smtp.age @@ -0,0 +1,7 @@ +age-encryption.org/v1 +-> ssh-ed25519 aqtcmw knuL8pL0ot3fE042Apaw2CVQ19E8poqNsSznVcqAtSg +Dp6+7IShnd8MZrSYjh0LqGH7HUc3Tji/76dQCVIwzMA +-> ssh-ed25519 PMTW+A nvriZ1urwJLuEpCbiZxrKu4juhASLSAQFBA9h4pLzxQ +zqYNxGJLyl6TU0doc3+BLLvek09cgZ1NS4cO+mx7BPo +--- 8T5MKNAsvZMtgfIAL3OIKnXeBA3uJkqvQ9SPYwg9p2A +\Ä MKxª–l>µ¥sœ™DÿÒ”9;‰}#’øL<G+ŠR|‚2ÿe‚"2¸TO½µ§
\ No newline at end of file diff --git a/nixos/hosts/tente/secrets/grafana-matrix-forwarder-env.age b/nixos/hosts/tente/secrets/grafana-matrix-forwarder-env.age Binary files differdeleted file mode 100644 index 84cab14..0000000 --- a/nixos/hosts/tente/secrets/grafana-matrix-forwarder-env.age +++ /dev/null diff --git a/nixos/npins/sources.json b/nixos/npins/sources.json index f93120c..385fbbb 100644 --- a/nixos/npins/sources.json +++ b/nixos/npins/sources.json @@ -12,21 +12,6 @@ "url": null, "hash": "1d4m7hsq727q7ndjqmgyl8vkbkqjwps962ygmv2mcc5dbqzgn963" }, - "grafana-matrix-forwarder": { - "type": "GitRelease", - "repository": { - "type": "Git", - "url": "https://gitlab.com/hctrdev/grafana-matrix-forwarder.git" - }, - "pre_releases": false, - "version_upper_bound": null, - "release_prefix": null, - "submodules": false, - "version": "v0.8.3", - "revision": "a77a360503ea12c8244646753a3bf271428ddd02", - "url": null, - "hash": "1mdgv6jfbjs3xsqk9dxli6w345jws8j5qgzqf6wljmxlvibbic6y" - }, "my-cmd50": { "type": "Git", "repository": { diff --git a/nixos/shared/grafana-matrix-forwarder/default.nix b/nixos/shared/grafana-matrix-forwarder/default.nix deleted file mode 100644 index 7a04dcb..0000000 --- a/nixos/shared/grafana-matrix-forwarder/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ buildGoModule }: -let - sources = import <top/npins>; -in -buildGoModule { - pname = "grafana-matrix-forwarder"; - version = sources.grafana-matrix-forwarder.version; - src = sources.grafana-matrix-forwarder; - vendorHash = "sha256-ifkeakyRkIF2Y/4otUWhTvUzsPwRb1Wxx6gqN0806c4="; -} diff --git a/nixos/shared/grafana-matrix-forwarder/service.nix b/nixos/shared/grafana-matrix-forwarder/service.nix deleted file mode 100644 index 5ad511c..0000000 --- a/nixos/shared/grafana-matrix-forwarder/service.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ config, lib, pkgs, ... }: - -let - grafanaMatrixForwarder = pkgs.callPackage ./default.nix {}; - cfg = config.services.grafana-matrix-forwarder; -in -{ - options.services.grafana-matrix-forwarder = { - enable = lib.mkEnableOption "grafana-matrix-forwarder"; - port = lib.mkOption { - type = lib.types.int; - }; - homeserver = lib.mkOption { - type = lib.types.str; - }; - environmentFile = lib.mkOption { - type = lib.types.path; - }; - }; - - config = lib.mkIf cfg.enable { - systemd.services.grafana-matrix-forwarder = { - serviceConfig = { - ExecStart = "${grafanaMatrixForwarder}/bin/grafana-matrix-forwarder --port=${toString cfg.port} --homeserver ${cfg.homeserver}"; - EnvironmentFile = cfg.environmentFile; - DynamicUser = "true"; - }; - wantedBy = ["multi-user.target"]; - }; - }; -} |
