at master 1.0 kB view raw
1{ pkgs, ... }: 2 3{ 4 name = "samba-wsdd"; 5 meta.maintainers = with pkgs.lib.maintainers; [ izorkin ]; 6 7 nodes = { 8 client_wsdd = 9 { pkgs, ... }: 10 { 11 services.samba-wsdd = { 12 enable = true; 13 openFirewall = true; 14 interface = "eth1"; 15 workgroup = "WORKGROUP"; 16 hostname = "CLIENT-WSDD"; 17 discovery = true; 18 extraOptions = [ "--no-host" ]; 19 }; 20 }; 21 22 server_wsdd = 23 { ... }: 24 { 25 services.samba-wsdd = { 26 enable = true; 27 openFirewall = true; 28 interface = "eth1"; 29 workgroup = "WORKGROUP"; 30 hostname = "SERVER-WSDD"; 31 }; 32 }; 33 }; 34 35 testScript = '' 36 client_wsdd.start() 37 client_wsdd.wait_for_unit("samba-wsdd") 38 39 server_wsdd.start() 40 server_wsdd.wait_for_unit("samba-wsdd") 41 42 client_wsdd.wait_until_succeeds( 43 "echo list | ${pkgs.libressl.nc}/bin/nc -N -U /run/wsdd/wsdd.sock | grep -i SERVER-WSDD" 44 ) 45 ''; 46}