diff options
Diffstat (limited to 'nixpkgs/nixos/tests/samba.nix')
-rw-r--r-- | nixpkgs/nixos/tests/samba.nix | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/nixpkgs/nixos/tests/samba.nix b/nixpkgs/nixos/tests/samba.nix new file mode 100644 index 000000000000..252c3dd9c76e --- /dev/null +++ b/nixpkgs/nixos/tests/samba.nix @@ -0,0 +1,46 @@ +import ./make-test-python.nix ({ pkgs, ... }: + +{ + name = "samba"; + + meta.maintainers = [ pkgs.lib.maintainers.eelco ]; + + nodes = + { client = + { pkgs, ... }: + { virtualisation.fileSystems = + { "/public" = { + fsType = "cifs"; + device = "//server/public"; + options = [ "guest" ]; + }; + }; + }; + + server = + { ... }: + { services.samba.enable = true; + services.samba.openFirewall = true; + services.samba.shares.public = + { path = "/public"; + "read only" = true; + browseable = "yes"; + "guest ok" = "yes"; + comment = "Public samba share."; + }; + }; + }; + + # client# [ 4.542997] mount[777]: sh: systemd-ask-password: command not found + + testScript = + '' + server.start() + server.wait_for_unit("samba.target") + server.succeed("mkdir -p /public; echo bar > /public/foo") + + client.start() + client.wait_for_unit("remote-fs.target") + client.succeed("[[ $(cat /public/foo) = bar ]]") + ''; +}) |