]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
monmaptool: add --enable-all-features option
authorSage Weil <sage@redhat.com>
Wed, 19 Dec 2018 03:34:30 +0000 (21:34 -0600)
committerSage Weil <sage@redhat.com>
Thu, 3 Jan 2019 17:17:31 +0000 (11:17 -0600)
Signed-off-by: Sage Weil <sage@redhat.com>
src/test/cli/monmaptool/add-exists.t
src/test/cli/monmaptool/feature-set-unset-list.t
src/test/cli/monmaptool/help.t
src/test/cli/monmaptool/rm-nonexistent.t
src/tools/monmaptool.cc

index daeacbc52c47829d03bb2555d9afa2e650a1f6ef..ee002e1203d5906eb22c424155856aa65429bb68 100644 (file)
@@ -12,6 +12,7 @@
   monmaptool: monmap file mymonmap
   monmaptool: map already contains mon.foo
    usage: [--print] [--create [--clobber][--fsid uuid]]
+          [--enable-all-features]
           [--generate] [--set-initial-members]
           [--add name 1.2.3.4:567] [--rm name]
           [--feature-list [plain|parseable]]
index 5aec83ec0744058959a807af340825cc84e01164..4f22d26f518ad0fe16908bd118bbb008a052dbd4 100644 (file)
@@ -30,6 +30,7 @@
   $ monmaptool --feature-set foo /tmp/test.monmap.1234
   unknown features name 'foo' or unable to parse value: Expected option value to be integer, got 'foo'
    usage: [--print] [--create [--clobber][--fsid uuid]]
+          [--enable-all-features]
           [--generate] [--set-initial-members]
           [--add name 1.2.3.4:567] [--rm name]
           [--feature-list [plain|parseable]]
index d6267ef964d0d67d4d4d9910fd1aee5a3ee35934..5c5a95cc25768cfe91d3e12954ad99b813f3d0b9 100644 (file)
@@ -1,5 +1,6 @@
   $ monmaptool --help
    usage: [--print] [--create [--clobber][--fsid uuid]]
+          [--enable-all-features]
           [--generate] [--set-initial-members]
           [--add name 1.2.3.4:567] [--rm name]
           [--feature-list [plain|parseable]]
index 433750d7b2476bbd0ae5d926ed5bf2aed979c560..08e6a328bc6fd2e95b4fa8034ce2feccac5a339a 100644 (file)
@@ -10,6 +10,7 @@
   monmaptool: removing doesnotexist
   monmaptool: map does not contain doesnotexist
    usage: [--print] [--create [--clobber][--fsid uuid]]
+          [--enable-all-features]
           [--generate] [--set-initial-members]
           [--add name 1.2.3.4:567] [--rm name]
           [--feature-list [plain|parseable]]
index 7c92282234906216e0ee3d897e6da870726b651d..c551aa2d62d55ea7ff00a66e041c8f1fed1a8da2 100644 (file)
@@ -24,6 +24,7 @@
 void usage()
 {
   cout << " usage: [--print] [--create [--clobber][--fsid uuid]]\n"
+       << "        [--enable-all-features]\n"
        << "        [--generate] [--set-initial-members]\n"
        << "        [--add name 1.2.3.4:567] [--rm name]\n"
        << "        [--feature-list [plain|parseable]]\n"
@@ -181,6 +182,7 @@ int main(int argc, const char **argv)
   std::string fn;
   bool print = false;
   bool create = false;
+  bool enable_all_features = false;
   bool clobber = false;
   bool modified = false;
   bool show_features = false;
@@ -203,6 +205,8 @@ int main(int argc, const char **argv)
       print = true;
     } else if (ceph_argparse_flag(args, i, "--create", (char*)NULL)) {
       create = true;
+    } else if (ceph_argparse_flag(args, i, "--enable-all-features", (char*)NULL)) {
+      enable_all_features = true;
     } else if (ceph_argparse_flag(args, i, "--clobber", (char*)NULL)) {
       clobber = true;
     } else if (ceph_argparse_flag(args, i, "--generate", (char*)NULL)) {
@@ -333,6 +337,11 @@ int main(int argc, const char **argv)
     }
     modified = true;
   }
+  if (enable_all_features) {
+    // populate persistent features, too
+    monmap.persistent_features = ceph::features::mon::get_persistent();
+    modified = true;
+  }
 
   if (generate) {
     int r = monmap.build_initial(g_ceph_context, true, cerr);