My personal project and infrastructure archive
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nomicon/nixos/tests/blocky.nix

34 lines
848 B

import ./make-test-python.nix {
name = "blocky";
nodes = {
server = { pkgs, ... }: {
environment.systemPackages = [ pkgs.dnsutils ];
services.blocky = {
enable = true;
settings = {
customDNS = {
mapping = {
"printer.lan" = "192.168.178.3,2001:0db8:85a3:08d3:1319:8a2e:0370:7344";
};
};
upstream = {
default = [ "8.8.8.8" "1.1.1.1" ];
};
port = 53;
httpPort = 5000;
logLevel = "info";
};
};
};
};
testScript = ''
with subtest("Service test"):
server.wait_for_unit("blocky.service")
server.wait_for_open_port(53)
server.wait_for_open_port(5000)
server.succeed("dig @127.0.0.1 +short -x 192.168.178.3 | grep -qF printer.lan")
'';
}