diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 2e46b0d01b14..e5a3ec7d3b6f 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -355,7 +355,7 @@ in containers-tmpfs = runTest ./containers-tmpfs.nix; containers-unified-hierarchy = runTest ./containers-unified-hierarchy.nix; convos = runTest ./convos.nix; - corerad = handleTest ./corerad.nix { }; + corerad = runTest ./corerad.nix; corteza = runTest ./corteza.nix; cosmic = runTest { imports = [ ./cosmic.nix ]; diff --git a/nixos/tests/corerad.nix b/nixos/tests/corerad.nix index 3795cdd41757..ba9b47f79896 100644 --- a/nixos/tests/corerad.nix +++ b/nixos/tests/corerad.nix @@ -1,61 +1,55 @@ -import ./make-test-python.nix ({ +{ name = "corerad"; nodes = { - router = - { config, pkgs, ... }: - { - config = { - # This machine simulates a router with IPv6 forwarding and a static IPv6 address. - boot.kernel.sysctl = { - "net.ipv6.conf.all.forwarding" = true; - }; - networking.interfaces.eth1 = { - ipv6.addresses = [ - { - address = "fd00:dead:beef:dead::1"; - prefixLength = 64; - } - ]; - }; - services.corerad = { - enable = true; - # Serve router advertisements to the client machine with prefix information matching - # any IPv6 /64 prefixes configured on this interface. - # - # 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; - }; - }; + router = { + # This machine simulates a router with IPv6 forwarding and a static IPv6 address. + boot.kernel.sysctl = { + "net.ipv6.conf.all.forwarding" = true; + }; + networking.interfaces.eth1 = { + ipv6.addresses = [ + { + address = "fd00:dead:beef:dead::1"; + prefixLength = 64; + } + ]; + }; + services.corerad = { + enable = true; + # Serve router advertisements to the client machine with prefix information matching + # any IPv6 /64 prefixes configured on this interface. + # + # 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; }; }; }; + }; client = - { config, pkgs, ... }: + { pkgs, ... }: { # Use IPv6 SLAAC from router advertisements, and install rdisc6 so we can # trigger one immediately. - config = { - boot.kernel.sysctl = { - "net.ipv6.conf.all.autoconf" = true; - }; - environment.systemPackages = with pkgs; [ - ndisc6 - ]; + boot.kernel.sysctl = { + "net.ipv6.conf.all.autoconf" = true; }; + environment.systemPackages = with pkgs; [ + ndisc6 + ]; }; }; @@ -97,4 +91,4 @@ import ./make-test-python.nix ({ "corerad_build_info" in out ), "Build info metric was not found in Prometheus output" ''; -}) +}