From bccaf630679a5251549fd11abb08eb35e6bcec8e Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Fri, 22 Sep 2017 23:20:42 +0200 Subject: [PATCH] nixos/hardened test: add failing test-case for deferred mounts --- nixos/tests/hardened.nix | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/nixos/tests/hardened.nix b/nixos/tests/hardened.nix index ee7ffe83ba34..cb33b69e7199 100644 --- a/nixos/tests/hardened.nix +++ b/nixos/tests/hardened.nix @@ -10,6 +10,17 @@ import ./make-test.nix ({ pkgs, ...} : { { users.users.alice = { isNormalUser = true; extraGroups = [ "proc" ]; }; users.users.sybil = { isNormalUser = true; group = "wheel"; }; imports = [ ../modules/profiles/hardened.nix ]; + virtualisation.emptyDiskImages = [ 4096 ]; + boot.initrd.postDeviceCommands = '' + ${pkgs.dosfstools}/bin/mkfs.vfat -n EFISYS /dev/vdb + ''; + fileSystems = lib.mkVMOverride { + "/efi" = { + device = "/dev/disk/by-label/EFISYS"; + fsType = "vfat"; + options = [ "noauto" ]; + }; + }; }; testScript = @@ -42,5 +53,13 @@ import ./make-test.nix ({ pkgs, ...} : { subtest "kcore", sub { $machine->fail("cat /proc/kcore"); }; + + # Test deferred mount + subtest "mount", sub { + $machine->fail("mountpoint -q /efi"); # was deferred + $machine->execute("mkdir -p /efi"); + $machine->succeed("mount /dev/disk/by-label/EFISYS /efi"); + $machine->succeed("mountpoint -q /efi"); # now mounted + }; ''; })