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")
'';
}