summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-07-31 18:51:38 +0200
committerLudovic Courtès <ludo@gnu.org>2016-07-31 18:51:38 +0200
commit1250034d5aff14fe236aad9900233a2b6f8563bb (patch)
tree6d68fcd897dcacb2c9093d46263f927aab765030
parent40f788b9f6184436d9cc36a4dd8e7d101cd2f0ba (diff)
downloadguix-1250034d5aff14fe236aad9900233a2b6f8563bb.tar.gz
tests: 'guix-environment-container.sh' works when run from a tmpfs.
Fixes <http://bugs.gnu.org/22004>.
Reported by Ting-Wei Lan <lantw44@gmail.com>.

* tests/guix-environment-container.sh (mount_test_code): Add 'match'
clause to ignore "/"; augment clause that ignores specific file system
types such that it does not ignore parent mount points.
-rw-r--r--tests/guix-environment-container.sh11
1 files changed, 8 insertions, 3 deletions
diff --git a/tests/guix-environment-container.sh b/tests/guix-environment-container.sh
index 5ea6c49263..12da950eba 100644
--- a/tests/guix-environment-container.sh
+++ b/tests/guix-environment-container.sh
@@ -65,10 +65,15 @@ mount_test_code="
                 (match (string-split line #\space)
                   ;; Empty line.
                   ((\"\") #f)
-                  ;; Ignore these types of file systems.
-                  ((_ _ (or \"tmpfs\" \"proc\" \"sysfs\" \"devtmpfs\"
-                            \"devpts\" \"cgroup\" \"mqueue\") _ _ _)
+                  ;; Ignore the root file system.
+                  ((_ \"/\" _ _ _ _)
                    #f)
+                  ;; Ignore these types of file systems, except if they
+                  ;; correspond to a parent file system.
+                  ((_ mount (or \"tmpfs\" \"proc\" \"sysfs\" \"devtmpfs\"
+                                \"devpts\" \"cgroup\" \"mqueue\") _ _ _)
+                   (and (string-prefix? mount (getcwd))
+		        mount))
                   ((_ mount _ _ _ _)
                    mount)))
               (string-split (call-with-input-file \"/proc/mounts\" read-string)