1{
2 pkgs,
3 ...
4}:
5
6{
7 name = "tlsrpt";
8
9 meta = {
10 inherit (pkgs.tlsrpt-reporter.meta) maintainers;
11 };
12
13 nodes.machine = {
14 services.tlsrpt = {
15 enable = true;
16 reportd.settings = {
17 organization_name = "NixOS Testers United";
18 contact_info = "smtp-tls-report@localhost";
19 sender_address = "noreply@localhost";
20 };
21 };
22
23 # To test the postfix integration
24 services.postfix.enable = true;
25 };
26
27 testScript = ''
28 machine.wait_for_unit("tlsrpt-collectd.service")
29 machine.wait_for_unit("tlsrpt-reportd.service")
30
31 machine.wait_for_file("/run/tlsrpt/collectd.sock")
32 machine.wait_until_succeeds("journalctl -o cat -u tlsrpt-collectd | grep -Pq 'Database .* setup finished'")
33 machine.wait_until_succeeds("journalctl -o cat -u tlsrpt-reportd | grep -Pq 'Database .* setup finished'")
34 machine.wait_until_succeeds("journalctl -o cat -u tlsrpt-reportd | grep -Pq 'Fetcher .* finished'")
35
36 # Enabling postfix should put sendmail as the sendmail setting
37 machine.succeed("grep -q sendmail_script=/run/wrappers/bin/sendmail /etc/tlsrpt/reportd.cfg")
38 machine.succeed("getent group tlsrpt | grep -q postfix")
39
40 machine.log(machine.succeed("systemd-analyze security tlsrpt-collectd.service tlsrpt-reportd.service | grep -v ✓"))
41 '';
42}