From 2678f947fb5d094fe65e13660625e7cae5bdfd1a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Jun 2010 16:02:22 +0000 Subject: [PATCH] * Add a test for the NFS server/client. svn path=/nixos/branches/boot-order/; revision=22188 --- tests/default.nix | 1 + tests/nfs.nix | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 tests/nfs.nix diff --git a/tests/default.nix b/tests/default.nix index dfccce3851c3..015eb071a152 100644 --- a/tests/default.nix +++ b/tests/default.nix @@ -12,6 +12,7 @@ with import ../lib/testing.nix { inherit nixpkgs services system; }; kde4 = makeTest (import ./kde4.nix); login = makeTest (import ./login.nix); nat = makeTest (import ./nat.nix); + nfs = makeTest (import ./nfs.nix); openssh = makeTest (import ./openssh.nix); portmap = makeTest (import ./portmap.nix); proxy = makeTest (import ./proxy.nix); diff --git a/tests/nfs.nix b/tests/nfs.nix new file mode 100644 index 000000000000..b0739ab92abf --- /dev/null +++ b/tests/nfs.nix @@ -0,0 +1,47 @@ +{ pkgs, ... }: + +{ + + nodes = + { client = + { config, pkgs, ... }: + { services.nfsKernel.client.enable = true; + fileSystems = pkgs.lib.mkOverride 50 {} + [ { mountPoint = "/data"; + device = "server:/data"; + fsType = "nfs"; + options = "bootwait"; + } + ]; + }; + + server = + { config, pkgs, ... }: + { services.nfsKernel.server.enable = true; + services.nfsKernel.server.exports = + '' + /data 192.168.1.0/255.255.255.0(rw,no_root_squash) + ''; + services.nfsKernel.server.createMountPoints = true; + }; + }; + + testScript = + '' + startAll; + + $server->waitForJob("nfs-kernel-nfsd"); + $server->waitForJob("nfs-kernel-mountd"); + $server->waitForJob("nfs-kernel-statd"); + + $client->waitForJob("nfs-kernel-statd"); + + $client->waitForJob("tty1"); # depends on filesystems + + $client->succeed("echo bar > /data/foo"); + $server->succeed("test -e /data/foo"); + + $client->shutdown; + ''; + +}