python312Packages.millheater: 0.11.8 -> 0.12.0
[NixPkgs.git] / nixos / tests / telegraf.nix
blob2ccad7af3f555b9fc15ac3e3a5898ca668530e5f
1 import ./make-test-python.nix ({ pkgs, ...} : {
2   name = "telegraf";
3   meta = with pkgs.lib.maintainers; {
4     maintainers = [ mic92 ];
5   };
7   nodes.machine = { ... }: {
8     services.telegraf.enable = true;
9     services.telegraf.environmentFiles = [(pkgs.writeText "secrets" ''
10       SECRET=example
11     '')];
12     services.telegraf.extraConfig = {
13       agent.interval = "1s";
14       agent.flush_interval = "1s";
15       inputs.exec = {
16         commands = [
17           "${pkgs.runtimeShell} -c 'echo $SECRET,tag=a i=42i'"
18         ];
19         timeout = "5s";
20         data_format = "influx";
21       };
22       inputs.ping = {
23         urls = ["127.0.0.1"];
24         count = 4;
25         interval = "10s";
26         timeout = 1.0;
27       };
28       outputs.file.files = ["/tmp/metrics.out"];
29       outputs.file.data_format = "influx";
30     };
31   };
33   testScript = ''
34     start_all()
36     machine.wait_for_unit("telegraf.service")
37     machine.wait_until_succeeds("grep -q example /tmp/metrics.out")
38     machine.wait_until_succeeds("grep -q ping /tmp/metrics.out")
39   '';