diff mbox series

overlay: run unionmount tests with custom overlay mount options

Message ID 20201219104727.18737-1-amir73il@gmail.com (mailing list archive)
State New, archived
Headers show
Series overlay: run unionmount tests with custom overlay mount options | expand

Commit Message

Amir Goldstein Dec. 19, 2020, 10:47 a.m. UTC
Assign $OVERLAY_MOUNT_OPTIONS to UNIONMOUNT_MNTOPTIONS and require
that unionmount supports UNIONMOUNT_MNTOPTIONS if OVERLAY_MOUNT_OPTIONS
was provided.

For example, when the mount option metacopy=on is set in
$OVERLAY_MOUNT_OPTIONS, it enables the --meta test option and affects
the test verifications after copy up.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---

Eryu,

I've added support to configurable mount option to unionmount-testsuite.
This change intergates xfstests configurable mount option to unionmount
test wrappers.

For users who do not have OVERLAY_MOUNT_OPTIONS defined, this change
makes no difference.

For users that have OVERLAY_MOUNT_OPTIONS defined, the overlay/union
tests will be skipped after this change is applied and print:

  overlay/100 -- newer version of unionmount testsuite required to \
                 support OVERLAY_MOUNT_OPTIONS.

Updating the unionmount src code to current master commit 95be14e
("Allow user provided options with or without -o") will fix this and
overlay/union tests will be run with the defined OVERLAY_MOUNT_OPTIONS.

Thanks,
Amir.

 common/overlay | 8 ++++++++
 1 file changed, 8 insertions(+)
diff mbox series

Patch

diff --git a/common/overlay b/common/overlay
index 5e6a7e0f..1ca37e29 100644
--- a/common/overlay
+++ b/common/overlay
@@ -376,6 +376,13 @@  _require_unionmount_testsuite()
 	local usage=`UNIONMOUNT_BASEDIR=_ "$UNIONMOUNT_TESTSUITE/run" 2>&1`
 	echo $usage | grep -wq "UNIONMOUNT_BASEDIR" || \
 		_notrun "newer version of unionmount testsuite required."
+
+	[ -n "$OVERLAY_MOUNT_OPTIONS" ] || return
+	# If custom overlay mount options are used
+	# verify that UNIONMOUNT_MNTOPTIONS var is supported
+	local usage=`UNIONMOUNT_MNTOPTIONS=_ "$UNIONMOUNT_TESTSUITE/run" 2>&1`
+	echo $usage | grep -wq "UNIONMOUNT_MNTOPTIONS" || \
+		_notrun "newer version of unionmount testsuite required to support OVERLAY_MOUNT_OPTIONS."
 }
 
 _unionmount_testsuite_run()
@@ -394,6 +401,7 @@  _unionmount_testsuite_run()
 		export UNIONMOUNT_LOWERDIR=$OVL_BASE_TEST_DIR/union
 	fi
 	export UNIONMOUNT_BASEDIR=$OVL_BASE_SCRATCH_MNT/union
+	export UNIONMOUNT_MNTOPTIONS="$OVERLAY_MOUNT_OPTIONS"
 
 	_scratch_mkfs
 	rm -rf $UNIONMOUNT_BASEDIR $UNIONMOUNT_LOWERDIR