From: Sage Weil Date: Tue, 18 Jul 2017 20:00:28 +0000 (-0400) Subject: mgr: move mgr_commands to separate compilation unit X-Git-Tag: v12.1.2~196^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c86c8b717e1850410c59f7c6c708b20619c60a6c;p=ceph.git mgr: move mgr_commands to separate compilation unit Signed-off-by: Sage Weil --- diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a764c490e46c..862dd2b19abc 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -691,7 +691,8 @@ if (WITH_MGR) mgr/PyState.cc mgr/MgrPyModule.cc mgr/MgrStandby.cc - mgr/Mgr.cc) + mgr/Mgr.cc + mgr/mgr_commands.cc) add_executable(ceph-mgr ${mgr_srcs} $) target_include_directories(ceph-mgr PRIVATE "${PYTHON_INCLUDE_DIRS}") diff --git a/src/mgr/DaemonServer.cc b/src/mgr/DaemonServer.cc index e54fd5a62550..3259df587025 100644 --- a/src/mgr/DaemonServer.cc +++ b/src/mgr/DaemonServer.cc @@ -17,6 +17,7 @@ #include "auth/RotatingKeyRing.h" #include "json_spirit/json_spirit_writer.h" +#include "mgr/mgr_commands.h" #include "mon/MonCommand.h" #include "messages/MMgrOpen.h" @@ -34,16 +35,6 @@ #define dout_prefix *_dout << "mgr.server " << __func__ << " " -/* The set of statically defined (C++-handled) commands. This - * does not include the Python-defined commands, which are loaded - * in PyModules */ -const std::vector DaemonServer::mgr_commands = { -#define COMMAND(parsesig, helptext, module, perm, availability) \ - {parsesig, helptext, module, perm, availability, 0}, -#include "MgrCommands.h" -#undef COMMAND -}; - DaemonServer::DaemonServer(MonClient *monc_, Finisher &finisher_, diff --git a/src/mgr/DaemonServer.h b/src/mgr/DaemonServer.h index 1c5825502a28..6e4483202151 100644 --- a/src/mgr/DaemonServer.h +++ b/src/mgr/DaemonServer.h @@ -95,8 +95,6 @@ private: void maybe_ready(int32_t osd_id); public: - static const std::vector mgr_commands; - int init(uint64_t gid, entity_addr_t client_addr); void shutdown(); diff --git a/src/mgr/Mgr.cc b/src/mgr/Mgr.cc index e46b2cabd63b..dcadb254e988 100644 --- a/src/mgr/Mgr.cc +++ b/src/mgr/Mgr.cc @@ -22,6 +22,7 @@ #include "global/signal_handler.h" #include "mgr/MgrContext.h" +#include "mgr/mgr_commands.h" #include "MgrPyModule.h" #include "DaemonServer.h" @@ -637,7 +638,7 @@ std::vector Mgr::get_command_set() const { Mutex::Locker l(lock); - std::vector commands = DaemonServer::mgr_commands; + std::vector commands = mgr_commands; std::vector py_commands = py_modules.get_commands(); commands.insert(commands.end(), py_commands.begin(), py_commands.end()); return commands; diff --git a/src/mgr/mgr_commands.cc b/src/mgr/mgr_commands.cc new file mode 100644 index 000000000000..aafee99140cf --- /dev/null +++ b/src/mgr/mgr_commands.cc @@ -0,0 +1,14 @@ +// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +// vim: ts=8 sw=2 smarttab + +#include "mgr_commands.h" + +/* The set of statically defined (C++-handled) commands. This + * does not include the Python-defined commands, which are loaded + * in PyModules */ +const std::vector mgr_commands = { +#define COMMAND(parsesig, helptext, module, perm, availability) \ + {parsesig, helptext, module, perm, availability, 0}, +#include "MgrCommands.h" +#undef COMMAND +}; diff --git a/src/mgr/mgr_commands.h b/src/mgr/mgr_commands.h new file mode 100644 index 000000000000..c6ed6c68d727 --- /dev/null +++ b/src/mgr/mgr_commands.h @@ -0,0 +1,9 @@ +// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +// vim: ts=8 sw=2 smarttab + +#pragma once + +#include "mon/MonCommand.h" +#include + +extern const std::vector mgr_commands;