]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: include disabled modules in `mgr module ls` 16651/head
authorJohn Spray <john.spray@redhat.com>
Wed, 1 Nov 2017 10:35:14 +0000 (06:35 -0400)
committerJohn Spray <john.spray@redhat.com>
Wed, 1 Nov 2017 12:21:43 +0000 (08:21 -0400)
Otherwise, when someone wants to see what's possible
to do with `mgr module enable` they have to trawl
through the whole mgr map dump.

Signed-off-by: John Spray <john.spray@redhat.com>
src/mon/MgrMonitor.cc

index 3c0320aa8d39cac73e3724ed7b624ebd9581ff62..751ed45e81173a99f43de67636b14a7eaa8a7f57 100644 (file)
@@ -697,9 +697,20 @@ bool MgrMonitor::preprocess_command(MonOpRequestRef op)
     }
     f->flush(rdata);
   } else if (prefix == "mgr module ls") {
-    f->open_array_section("modules");
-    for (auto& p : map.modules) {
-      f->dump_string("module", p);
+    f->open_object_section("modules");
+    {
+      f->open_array_section("enabled_modules");
+      for (auto& p : map.modules) {
+        f->dump_string("module", p);
+      }
+      f->close_section();
+      f->open_array_section("disabled_modules");
+      for (auto& p : map.available_modules) {
+        if (map.modules.count(p) == 0) {
+          f->dump_string("module", p);
+        }
+      }
+      f->close_section();
     }
     f->close_section();
     f->flush(rdata);