+import json
+
from teuthology.orchestra.run import CommandFailedError
from tasks.cephfs.cephfs_test_case import CephFSTestCase
from tasks.cephfs.filesystem import FileLayout
+
class TestAdminCommands(CephFSTestCase):
"""
Tests for administration command.
s = self.fs.mon_manager.raw_cluster_cmd("fs", "status")
self.assertTrue("active" in s)
+ mdsmap = json.loads(self.fs.mon_manager.raw_cluster_cmd("fs", "status", "--format=json-pretty"))["mdsmap"]
+ self.assertEqual(mdsmap[0]["state"], "active")
+
+ mdsmap = json.loads(self.fs.mon_manager.raw_cluster_cmd("fs", "status", "--format=json"))["mdsmap"]
+ self.assertEqual(mdsmap[0]["state"], "active")
+
def _setup_ec_pools(self, n, metadata=True, overwrites=True):
if metadata:
self.fs.mon_manager.raw_cluster_cmd('osd', 'pool', 'create', n+"-meta", "8")
import six
import json
-from mgr_module import MgrModule
+from mgr_module import MgrModule, HandleCommandResult
class Module(MgrModule):
output += version_table.get_string() + "\n"
if output_format == "json":
- return 0, "", json.dumps(json_output, sort_keys=True)
+ return HandleCommandResult(stdout=json.dumps(json_output, sort_keys=True))
elif output_format == "json-pretty":
- return 0, "", json.dumps(json_output, sort_keys=True, indent=4, separators=(',', ': '))
+ return HandleCommandResult(stdout=json.dumps(json_output, sort_keys=True, indent=4, separators=(',', ': ')))
else:
- return 0, output, ""
+ return HandleCommandResult(stdout=output)
def handle_osd_status(self, cmd):
osd_table = PrettyTable(['ID', 'HOST', 'USED', 'AVAIL', 'WR OPS',