about summary refs log tree commit diff
path: root/nixos/tests/non-default-filesystems.nix
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2023-05-26 13:26:48 +0000
committerAlyssa Ross <hi@alyssa.is>2023-05-26 13:26:48 +0000
commita92bc576b12c47e5f4e765b3ff9ee3545905ebbc (patch)
tree26213cadcb14839d8233d0461fd7d8d6ffe5dbf5 /nixos/tests/non-default-filesystems.nix
parentf91ee3065de91a3531329a674a45ddcb3467a650 (diff)
nixos/stage-1: support bind mounts of files
On my system, / is tmpfs, and /etc/machine-id is bind mounted from
/persist.
Diffstat (limited to 'nixos/tests/non-default-filesystems.nix')
-rw-r--r--nixos/tests/non-default-filesystems.nix25
1 files changed, 25 insertions, 0 deletions
diff --git a/nixos/tests/non-default-filesystems.nix b/nixos/tests/non-default-filesystems.nix
index 03cc5bf709a48..6233e8d265d0f 100644
--- a/nixos/tests/non-default-filesystems.nix
+++ b/nixos/tests/non-default-filesystems.nix
@@ -6,6 +6,31 @@
 with import ../lib/testing-python.nix { inherit system pkgs; };
 with pkgs.lib;
 {
+  bind = makeTest {
+    name = "non-default-filesystem-bind";
+
+    nodes.machine = { ... }: {
+      virtualisation.writableStore = false;
+
+      virtualisation.fileSystems."/test-bind-dir/bind" = {
+        device = "/";
+        neededForBoot = true;
+        options = [ "bind" ];
+      };
+
+      virtualisation.fileSystems."/test-bind-file/bind" = {
+        depends = [ "/nix/store" ];
+        device = builtins.toFile "empty" "";
+        neededForBoot = true;
+        options = [ "bind" ];
+      };
+    };
+
+    testScript = ''
+      machine.wait_for_unit("multi-user.target")
+    '';
+  };
+
   btrfs = makeTest
     {
       name = "non-default-filesystems-btrfs";