summaryrefslogtreecommitdiff
path: root/tests/fuse-unmount.bash
diff options
context:
space:
mode:
Diffstat (limited to 'tests/fuse-unmount.bash')
-rwxr-xr-xtests/fuse-unmount.bash27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/fuse-unmount.bash b/tests/fuse-unmount.bash
new file mode 100755
index 0000000..087b6fe
--- /dev/null
+++ b/tests/fuse-unmount.bash
@@ -0,0 +1,27 @@
+#!/bin/bash -eu
+#
+# Compatability wrapper around "fusermount" on Linux and "umount" on
+# Mac OS X and friends.
+#
+# This script can be sourced or executed directly.
+#
+function fuse-unmount {
+ local MYNAME=$(basename "$BASH_SOURCE")
+ if [[ $# -eq 0 ]] ; then
+ echo "$MYNAME: missing argument"
+ exit 1
+ fi
+ if [[ $OSTYPE == linux* ]] ; then
+ fusermount -u "$@"
+ else
+ # Mountpoint is in last argument, ignore anything else
+ # (like additional flags for fusermount).
+ local MNT=${@:$#}
+ umount "$MNT"
+ fi
+}
+# If the process name and the source file name is identical
+# we have been executed, not sourced.
+if [[ $(basename "$0") == $(basename "$BASH_SOURCE") ]] ; then
+ fuse-unmount "$@"
+fi