nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ pkgs, ... }:
2{
3 name = "rsyncd";
4 meta.maintainers = with pkgs.lib.maintainers; [ ehmry ];
5
6 nodes =
7 let
8 mkNode =
9 socketActivated:
10 { config, ... }:
11 {
12 networking.firewall.allowedTCPPorts = [ config.services.rsyncd.port ];
13 services.rsyncd = {
14 enable = true;
15 inherit socketActivated;
16 settings = {
17 globalSection = {
18 "reverse lookup" = false;
19 "forward lookup" = false;
20 };
21 sections = {
22 tmp = {
23 path = "/nix/store";
24 comment = "test module";
25 };
26 };
27 };
28 };
29 };
30 in
31 {
32 a = mkNode false;
33 b = mkNode true;
34 };
35
36 testScript = ''
37 start_all()
38 a.wait_for_unit("rsync")
39 b.wait_for_unit("sockets.target")
40 b.succeed("rsync a::")
41 a.succeed("rsync b::")
42 '';
43}