at 25.11-pre 1.0 kB view raw
1import ./make-test-python.nix ( 2 { pkgs, lib, ... }: 3 4 let 5 testPort = 6052; 6 unixSocket = "/run/esphome/esphome.sock"; 7 in 8 { 9 name = "esphome"; 10 meta.maintainers = with lib.maintainers; [ oddlama ]; 11 12 nodes = { 13 esphomeTcp = 14 { ... }: 15 { 16 services.esphome = { 17 enable = true; 18 port = testPort; 19 address = "0.0.0.0"; 20 openFirewall = true; 21 }; 22 }; 23 24 esphomeUnix = 25 { ... }: 26 { 27 services.esphome = { 28 enable = true; 29 enableUnixSocket = true; 30 }; 31 }; 32 }; 33 34 testScript = '' 35 esphomeTcp.wait_for_unit("esphome.service") 36 esphomeTcp.wait_for_open_port(${toString testPort}) 37 esphomeTcp.succeed("curl --fail http://localhost:${toString testPort}/") 38 39 esphomeUnix.wait_for_unit("esphome.service") 40 esphomeUnix.wait_for_file("${unixSocket}") 41 esphomeUnix.succeed("curl --fail --unix-socket ${unixSocket} http://localhost/") 42 ''; 43 } 44)