From: Xiubo Li Date: Mon, 4 Dec 2023 06:15:47 +0000 (+0800) Subject: qa/cephfs: add 'root_squash' check from the keyring X-Git-Tag: v19.1.1~265^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a55c330dd106e23d92dc050221e8fca165299562;p=ceph.git qa/cephfs: add 'root_squash' check from the keyring Fixes: https://tracker.ceph.com/issues/63141 Signed-off-by: Xiubo Li (cherry picked from commit bdabe22a0d3a4c0bbc9da3697add00639f688c18) --- diff --git a/qa/tasks/cephfs/caps_helper.py b/qa/tasks/cephfs/caps_helper.py index 2b02ea71ea041..c9ac2803e4785 100644 --- a/qa/tasks/cephfs/caps_helper.py +++ b/qa/tasks/cephfs/caps_helper.py @@ -66,7 +66,7 @@ def gen_mds_cap_str(caps): caps = ((perm1, fsname1, cephfs_mntpt1), (perm2, fsname2, cephfs_mntpt2)) """ - def _gen_mds_cap_str(perm, fsname=None, cephfs_mntpt='/'): + def _gen_mds_cap_str(perm, fsname=None, cephfs_mntpt='/', root_squash=False): mds_cap = f'allow {perm}' if fsname: mds_cap += f' fsname={fsname}' @@ -74,6 +74,8 @@ def gen_mds_cap_str(caps): if cephfs_mntpt[0] == '/': cephfs_mntpt = cephfs_mntpt[1:] mds_cap += f' path={cephfs_mntpt}' + if root_squash: + mds_cap += ' root_squash' return mds_cap if len(caps) == 1: diff --git a/qa/tasks/cephfs/test_admin.py b/qa/tasks/cephfs/test_admin.py index ee2c72f900ef8..afac6f1dfcbd2 100644 --- a/qa/tasks/cephfs/test_admin.py +++ b/qa/tasks/cephfs/test_admin.py @@ -1688,7 +1688,7 @@ class TestFsAuthorizeUpdate(CephFSTestCase): keyring = self.fs.mon_manager.get_keyring(self.client_id) moncap = gen_mon_cap_str((('r', self.fs.name,),)) osdcap = gen_osd_cap_str(((PERM, self.fs.name),)) - mdscap = gen_mds_cap_str(((PERM, self.fs.name, PATH),)) + mdscap = gen_mds_cap_str(((PERM, self.fs.name, PATH, True),)) for cap in (moncap, osdcap, mdscap): self.assertIn(cap, keyring) self._remount(self.mount_a, self.fs.name, keyring, PATH)