COMMAND("osd blacklist ls", "show blacklisted clients", "osd", "r", "cli,rest")
COMMAND("osd crush rule list", "list crush rules", "osd", "r", "cli,rest")
COMMAND("osd crush rule ls", "list crush rules", "osd", "r", "cli,rest")
-COMMAND("osd crush rule dump", "dump crush rules", "osd", "r", "cli,rest")
COMMAND("osd crush dump", "dump crush map", "osd", "r", "cli,rest")
+COMMAND("osd crush rule dump " \
+ "name=format,type=CephChoices,strings=json|json-pretty|xml|xml-pretty,req=false", \
+ "dump crush rules formatted as <format> (default json-pretty)", \
+ "osd", "r", "cli,rest")
COMMAND("osd setcrushmap", "set crush map from input file", \
"osd", "rw", "cli,rest")
COMMAND("osd crush set", "set crush map from input file", \
def test_crush_rule(self):
assert_equal({}, validate_command(sigdict, ['osd', 'crush']))
assert_equal({}, validate_command(sigdict, ['osd', 'crush', 'rule']))
- for subcommand in ('list', 'ls', 'dump'):
+ for subcommand in ('list', 'ls'):
self.assert_valid_command(['osd', 'crush', 'rule', subcommand])
assert_equal({}, validate_command(sigdict, ['osd', 'crush',
'rule', subcommand,
'toomany']))
+ def test_crush_rule_dump(self):
+ self.assert_valid_command(['osd', 'crush', 'rule', 'dump'])
+ for format in ('json', 'json-pretty', 'xml', 'xml-pretty'):
+ self.assert_valid_command(['osd', 'crush', 'rule', 'dump', format])
+ assert_equal({}, validate_command(sigdict, ['osd', 'crush',
+ 'rule', 'dump',
+ 'json',
+ 'toomany']))
+
def test_crush_dump(self):
self.assert_valid_command(['osd', 'crush', 'dump'])
assert_equal({}, validate_command(sigdict, ['osd', 'crush']))