nixos/tests/cjdns: do not build cjdns at evaluation
Putting hostnames in the cjdns configuration requires a utility be present to convert public keys to ip addresses
This commit is contained in:
parent
7e66337f6c
commit
ba2074fc31
@ -242,7 +242,7 @@ in rec {
|
|||||||
tests.blivet = callTest tests/blivet.nix {};
|
tests.blivet = callTest tests/blivet.nix {};
|
||||||
tests.cadvisor = hydraJob (import tests/cadvisor.nix { system = "x86_64-linux"; });
|
tests.cadvisor = hydraJob (import tests/cadvisor.nix { system = "x86_64-linux"; });
|
||||||
tests.chromium = callTest tests/chromium.nix {};
|
tests.chromium = callTest tests/chromium.nix {};
|
||||||
#tests.cjdns = callTest tests/cjdns.nix {};
|
tests.cjdns = callTest tests/cjdns.nix {};
|
||||||
tests.containers = callTest tests/containers.nix {};
|
tests.containers = callTest tests/containers.nix {};
|
||||||
tests.docker = hydraJob (import tests/docker.nix { system = "x86_64-linux"; });
|
tests.docker = hydraJob (import tests/docker.nix { system = "x86_64-linux"; });
|
||||||
tests.dockerRegistry = hydraJob (import tests/docker-registry.nix { system = "x86_64-linux"; });
|
tests.dockerRegistry = hydraJob (import tests/docker-registry.nix { system = "x86_64-linux"; });
|
||||||
|
@ -3,15 +3,15 @@ let
|
|||||||
carolPubKey = "n932l3pjvmhtxxcdrqq2qpw5zc58f01vvjx01h4dtd1bb0nnu2h0.k";
|
carolPubKey = "n932l3pjvmhtxxcdrqq2qpw5zc58f01vvjx01h4dtd1bb0nnu2h0.k";
|
||||||
carolPassword = "678287829ce4c67bc8b227e56d94422ee1b85fa11618157b2f591de6c6322b52";
|
carolPassword = "678287829ce4c67bc8b227e56d94422ee1b85fa11618157b2f591de6c6322b52";
|
||||||
carolIp4 = "192.168.0.9";
|
carolIp4 = "192.168.0.9";
|
||||||
|
|
||||||
basicConfig =
|
basicConfig =
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{ services.cjdns.enable = true;
|
{ services.cjdns.enable = true;
|
||||||
|
|
||||||
# Turning off DHCP isn't very realistic but makes
|
# Turning off DHCP isn't very realistic but makes
|
||||||
# the sequence of address assignment less stochastic.
|
# the sequence of address assignment less stochastic.
|
||||||
networking.useDHCP = false;
|
networking.useDHCP = false;
|
||||||
|
|
||||||
networking.interfaces.eth1.prefixLength = 24;
|
networking.interfaces.eth1.prefixLength = 24;
|
||||||
# CJDNS output is incompatible with the XML log.
|
# CJDNS output is incompatible with the XML log.
|
||||||
systemd.services.cjdns.serviceConfig.StandardOutput = "null";
|
systemd.services.cjdns.serviceConfig.StandardOutput = "null";
|
||||||
@ -41,19 +41,18 @@ import ./make-test.nix {
|
|||||||
# Bob explicitly connects to Carol over UDPInterface.
|
# Bob explicitly connects to Carol over UDPInterface.
|
||||||
bob =
|
bob =
|
||||||
{ config, lib, nodes, ... }:
|
{ config, lib, nodes, ... }:
|
||||||
|
|
||||||
let carolIp4 = lib.mkForce nodes.carol.config.networking.interfaces.eth1; in
|
let carolIp4 = lib.mkForce nodes.carol.config.networking.interfaces.eth1; in
|
||||||
|
|
||||||
{ imports = [ basicConfig ];
|
{ imports = [ basicConfig ];
|
||||||
|
|
||||||
networking.interfaces.eth1.ipAddress = "192.168.0.2";
|
networking.interfaces.eth1.ipAddress = "192.168.0.2";
|
||||||
|
|
||||||
services.cjdns =
|
services.cjdns =
|
||||||
{ UDPInterface =
|
{ UDPInterface =
|
||||||
{ bind = "0.0.0.0:1024";
|
{ bind = "0.0.0.0:1024";
|
||||||
connectTo."192.168.0.1:1024}" =
|
connectTo."192.168.0.1:1024}" =
|
||||||
{ hostname = "carol.hype";
|
{ password = carolPassword;
|
||||||
password = carolPassword;
|
|
||||||
publicKey = carolPubKey;
|
publicKey = carolPubKey;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -75,7 +74,7 @@ import ./make-test.nix {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
networking.interfaces.eth1.ipAddress = "192.168.0.1";
|
networking.interfaces.eth1.ipAddress = "192.168.0.1";
|
||||||
|
|
||||||
services.cjdns =
|
services.cjdns =
|
||||||
{ authorizedPasswords = [ carolPassword ];
|
{ authorizedPasswords = [ carolPassword ];
|
||||||
ETHInterface.bind = "eth1";
|
ETHInterface.bind = "eth1";
|
||||||
@ -106,13 +105,13 @@ import ./make-test.nix {
|
|||||||
my $carolIp6 = cjdnsIp $carol;
|
my $carolIp6 = cjdnsIp $carol;
|
||||||
|
|
||||||
# ping a few times each to let the routing table establish itself
|
# ping a few times each to let the routing table establish itself
|
||||||
|
|
||||||
$alice->succeed("ping6 -c 4 $carolIp6");
|
$alice->succeed("ping6 -c 4 $carolIp6");
|
||||||
$bob->succeed("ping6 -c 4 carol.hype");
|
$bob->succeed("ping6 -c 4 $carolIp6");
|
||||||
|
|
||||||
$carol->succeed("ping6 -c 4 $aliceIp6");
|
$carol->succeed("ping6 -c 4 $aliceIp6");
|
||||||
$carol->succeed("ping6 -c 4 $bobIp6");
|
$carol->succeed("ping6 -c 4 $bobIp6");
|
||||||
|
|
||||||
$alice->succeed("ping6 -c 4 $bobIp6");
|
$alice->succeed("ping6 -c 4 $bobIp6");
|
||||||
$bob->succeed("ping6 -c 4 $aliceIp6");
|
$bob->succeed("ping6 -c 4 $aliceIp6");
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user