From f1a4b100fd198678a737759ce0cae994f4f75a58 Mon Sep 17 00:00:00 2001 From: Matt Layher Date: Sun, 7 Jun 2020 22:41:43 -0400 Subject: nixos/corerad: add settings option to supersede configFile Signed-off-by: Matt Layher --- nixos/tests/corerad.nix | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) (limited to 'nixos/tests') diff --git a/nixos/tests/corerad.nix b/nixos/tests/corerad.nix index 741fa448f68..72ab255b191 100644 --- a/nixos/tests/corerad.nix +++ b/nixos/tests/corerad.nix @@ -3,7 +3,7 @@ import ./make-test-python.nix ( nodes = { router = {config, pkgs, ...}: { config = { - # This machines simulates a router with IPv6 forwarding and a static IPv6 address. + # This machine simulates a router with IPv6 forwarding and a static IPv6 address. boot.kernel.sysctl = { "net.ipv6.conf.all.forwarding" = true; }; @@ -14,13 +14,25 @@ import ./make-test-python.nix ( enable = true; # Serve router advertisements to the client machine with prefix information matching # any IPv6 /64 prefixes configured on this interface. - configFile = pkgs.writeText "corerad.toml" '' - [[interfaces]] - name = "eth1" - advertise = true - [[interfaces.prefix]] - prefix = "::/64" - ''; + # + # This configuration is identical to the example in the CoreRAD NixOS module. + settings = { + interfaces = [ + { + name = "eth0"; + monitor = true; + } + { + name = "eth1"; + advertise = true; + prefix = [{ prefix = "::/64"; }]; + } + ]; + debug = { + address = "localhost:9430"; + prometheus = true; + }; + }; }; }; }; @@ -66,5 +78,12 @@ import ./make-test-python.nix ( assert ( "/64 scope global temporary" in addrs ), "SLAAC temporary address was not configured on client after router advertisement" + + with subtest("Verify HTTP debug server is configured"): + out = router.succeed("curl localhost:9430/metrics") + + assert ( + "corerad_build_info" in out + ), "Build info metric was not found in Prometheus output" ''; }) -- cgit 1.4.1