--- /dev/null
+import logging
+from StringIO import StringIO
+
+from xfstests_dev import XFSTestsDev
+
+log = logging.getLogger(__name__)
+
+class TestACLs(XFSTestsDev):
+
+ def test_acls(self):
+ from tasks.cephfs.fuse_mount import FuseMount
+ from tasks.cephfs.kernel_mount import KernelMount
+
+ # TODO: make xfstests-dev compatible with ceph-fuse. xfstests-dev
+ # remounts CephFS before running tests using kernel, so ceph-fuse
+ # mounts are never actually testsed.
+ if isinstance(self.mount_a, FuseMount):
+ log.info('client is fuse mounted')
+ self.skipTest('Requires kernel client; xfstests-dev not '\
+ 'compatible with ceph-fuse ATM.')
+ elif isinstance(self.mount_a, KernelMount):
+ log.info('client is kernel mounted')
+
+ self.mount_a.client_remote.run(args=['sudo', './check',
+ 'generic/099'], cwd=self.repo_path, stdout=StringIO(),
+ stderr=StringIO(), timeout=30, check_status=True,
+ label='running tests for ACLs from xfstests-dev')
# TODO: add code to run non-ACL tests too.
# TODO: get tests running with SCRATCH_DEV and SCRATCH_DIR.
# TODO: make xfstests-dev tests running without running `make install`.
+# TODO: make xfstests-dev compatible with ceph-fuse. xfstests-dev remounts
+# CephFS before running tests using kernel, so ceph-fuse mounts are never
+# actually testsed.
class XFSTestsDev(CephFSTestCase):
def setUp(self):