]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/common: add ConfigProxy::inject_args()
authorKefu Chai <kchai@redhat.com>
Sun, 2 Aug 2020 16:52:17 +0000 (00:52 +0800)
committerKefu Chai <kchai@redhat.com>
Sun, 2 Aug 2020 16:54:55 +0000 (00:54 +0800)
prepare for the "injectargs" tell command.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/crimson/common/config_proxy.h

index d6132455eced5d3f04545cebf8ea5115e5f647ef..29f5984b552295a1359ffe9457461cb0d3ae2155 100644 (file)
@@ -155,6 +155,14 @@ public:
     });
   }
 
+  seastar::future<> inject_args(const std::string& s) {
+    return do_change([s, this](ConfigValues& values) {
+      std::stringstream err;
+      if (get_config().injectargs(values, obs_mgr, s, &err)) {
+        throw std::invalid_argument(err.str());
+      }
+    });
+  }
   void show_config(ceph::Formatter* f) const;
 
   seastar::future<> parse_argv(std::vector<const char*>& argv) {