From efbb8bd9045469daef47e23163912a2af39c7810 Mon Sep 17 00:00:00 2001 From: Christoph Heiss Date: Fri, 16 Feb 2024 23:10:46 +0100 Subject: [PATCH] nixos/tests/prometheus-exporters: add tests for mqtt-exporter Signed-off-by: Christoph Heiss --- nixos/tests/prometheus-exporters.nix | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/nixos/tests/prometheus-exporters.nix b/nixos/tests/prometheus-exporters.nix index 4aacd8e5a849..6ea841b4d9ea 100644 --- a/nixos/tests/prometheus-exporters.nix +++ b/nixos/tests/prometheus-exporters.nix @@ -804,6 +804,38 @@ let ''; }; + mqtt = { + exporterConfig = { + enable = true; + environmentFile = pkgs.writeText "mqtt-exporter-envfile" '' + MQTT_PASSWORD=testpassword + ''; + }; + metricProvider = { + services.mosquitto = { + enable = true; + listeners = [{ + users.exporter = { + acl = [ "read #" ]; + passwordFile = pkgs.writeText "mosquitto-password" "testpassword"; + }; + }]; + }; + systemd.services.prometheus-mqtt-exporter ={ + wants = [ "mosquitto.service" ]; + after = [ "mosquitto.service" ]; + }; + }; + exporterTest = '' + wait_for_unit("mosquitto.service") + wait_for_unit("prometheus-mqtt-exporter.service") + wait_for_open_port(9000) + succeed( + "curl -sSf http://localhost:9000/metrics | grep '^python_info'" + ) + ''; + }; + mysqld = { exporterConfig = { enable = true;