at 24.11-pre 1.2 kB view raw
1import ./make-test-python.nix ({ lib, ... }: 2{ 3 name = "ntpd-rs"; 4 5 meta = { 6 maintainers = with lib.maintainers; [ fpletz ]; 7 }; 8 9 nodes = { 10 client = { 11 services.ntpd-rs = { 12 enable = true; 13 metrics.enable = true; 14 useNetworkingTimeServers = false; 15 settings = { 16 source = [ 17 { 18 mode = "server"; 19 address = "server"; 20 } 21 ]; 22 synchronization = { 23 minimum-agreeing-sources = 1; 24 }; 25 }; 26 }; 27 }; 28 server = { 29 networking.firewall.allowedUDPPorts = [ 123 ]; 30 services.ntpd-rs = { 31 enable = true; 32 metrics.enable = true; 33 settings = { 34 server = [ 35 { listen = "[::]:123"; } 36 ]; 37 }; 38 }; 39 }; 40 }; 41 42 testScript = { nodes, ... }: '' 43 start_all() 44 45 for machine in (server, client): 46 machine.wait_for_unit('multi-user.target') 47 machine.succeed('systemctl is-active ntpd-rs.service') 48 machine.succeed('systemctl is-active ntpd-rs-metrics.service') 49 machine.succeed('curl http://localhost:9975/metrics | grep ntp_uptime_seconds') 50 ''; 51})