Message ID | 20211216124752.13768-1-jlayton@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | common/rc, ceph: skip ceph/001-ceph/003 if test_dummy_encryption is enabled | expand |
On Thu, Dec 16, 2021 at 07:47:52AM -0500, Jeff Layton wrote: > Some tests on ceph require changing the layout of new files, which is > forbidden when the files are encrypted. Skip these tests if the > test_dummy_encryption mount option is being used. > > Generalize the _exclude_scratch_mount_option code and add a new > _exclude_test_mount_option call as well. Call the new function from the > ceph tests that should exclude test_dummy_encryption. > > Cc: Luis Henriques <lhenriques@suse.de> > Signed-off-by: Jeff Layton <jlayton@kernel.org> > --- > common/rc | 18 ++++++++++++++---- > tests/ceph/001 | 1 + > tests/ceph/002 | 1 + > tests/ceph/003 | 1 + > 4 files changed, 17 insertions(+), 4 deletions(-) > > diff --git a/common/rc b/common/rc > index 7973ceb5fdf8..312ebea8fb57 100644 > --- a/common/rc > +++ b/common/rc > @@ -3844,14 +3844,14 @@ _require_cloner() > # "opt1 opt2 opt3" > _normalize_mount_options() > { > - echo $MOUNT_OPTIONS | sed -n 's/-o\s*\(\S*\)/\1/gp'| sed 's/,/ /g' > + echo "$1" | sed -n 's/-o\s*\(\S*\)/\1/gp'| sed 's/,/ /g' > } Doesn't this break the call to _normalize_mount_options() in common/btrfs? > > -# skip test if MOUNT_OPTIONS contains the given strings > +# skip test if $2 contains the given strings in $1 > # Both dax and dax=always are excluded if dax or dax=always is passed > -_exclude_scratch_mount_option() > +_exclude_mount_option() > { > - local mnt_opts=$(_normalize_mount_options) > + local mnt_opts=$(_normalize_mount_options "$2") > > while [ $# -gt 0 ]; do > local pattern=$1 > @@ -3864,6 +3864,16 @@ _exclude_scratch_mount_option() > done > } This function already uses all positional arguments, so using $2 isn't valid. - Eric
diff --git a/common/rc b/common/rc index 7973ceb5fdf8..312ebea8fb57 100644 --- a/common/rc +++ b/common/rc @@ -3844,14 +3844,14 @@ _require_cloner() # "opt1 opt2 opt3" _normalize_mount_options() { - echo $MOUNT_OPTIONS | sed -n 's/-o\s*\(\S*\)/\1/gp'| sed 's/,/ /g' + echo "$1" | sed -n 's/-o\s*\(\S*\)/\1/gp'| sed 's/,/ /g' } -# skip test if MOUNT_OPTIONS contains the given strings +# skip test if $2 contains the given strings in $1 # Both dax and dax=always are excluded if dax or dax=always is passed -_exclude_scratch_mount_option() +_exclude_mount_option() { - local mnt_opts=$(_normalize_mount_options) + local mnt_opts=$(_normalize_mount_options "$2") while [ $# -gt 0 ]; do local pattern=$1 @@ -3864,6 +3864,16 @@ _exclude_scratch_mount_option() done } +_exclude_scratch_mount_option() +{ + _exclude_mount_option "$1" "$MOUNT_OPTIONS" +} + +_exclude_test_mount_option() +{ + _exclude_mount_option "$1" "$TEST_FS_MOUNT_OPTS" +} + _require_atime() { _exclude_scratch_mount_option "noatime" diff --git a/tests/ceph/001 b/tests/ceph/001 index c00de308fd95..5a828567d500 100755 --- a/tests/ceph/001 +++ b/tests/ceph/001 @@ -22,6 +22,7 @@ _begin_fstest auto quick copy_range _supported_fs ceph _require_xfs_io_command "copy_range" +_exclude_test_mount_option "test_dummy_encryption" _require_attrs _require_test diff --git a/tests/ceph/002 b/tests/ceph/002 index 9bc728fd2e18..ac3d65b529bd 100755 --- a/tests/ceph/002 +++ b/tests/ceph/002 @@ -30,6 +30,7 @@ _begin_fstest auto quick copy_range _supported_fs ceph _require_xfs_io_command "copy_range" +_exclude_test_mount_option "test_dummy_encryption" _require_attrs _require_test diff --git a/tests/ceph/003 b/tests/ceph/003 index faedb48cfeea..2d6cb393b3f6 100755 --- a/tests/ceph/003 +++ b/tests/ceph/003 @@ -18,6 +18,7 @@ _begin_fstest auto quick copy_range _supported_fs ceph _require_xfs_io_command "copy_range" +_exclude_test_mount_option "test_dummy_encryption" _require_attrs _require_test
Some tests on ceph require changing the layout of new files, which is forbidden when the files are encrypted. Skip these tests if the test_dummy_encryption mount option is being used. Generalize the _exclude_scratch_mount_option code and add a new _exclude_test_mount_option call as well. Call the new function from the ceph tests that should exclude test_dummy_encryption. Cc: Luis Henriques <lhenriques@suse.de> Signed-off-by: Jeff Layton <jlayton@kernel.org> --- common/rc | 18 ++++++++++++++---- tests/ceph/001 | 1 + tests/ceph/002 | 1 + tests/ceph/003 | 1 + 4 files changed, 17 insertions(+), 4 deletions(-)