]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/messages/MMgrBeacon.h
update sources to 12.2.2
[ceph.git] / ceph / src / messages / MMgrBeacon.h
index c877afc152438491cc6f4c150dfd0da6accf8fef..5def13c1491c34c27c80f934c1a0edf0752f730c 100644 (file)
@@ -23,7 +23,7 @@
 
 class MMgrBeacon : public PaxosServiceMessage {
 
-  static const int HEAD_VERSION = 5;
+  static const int HEAD_VERSION = 6;
   static const int COMPAT_VERSION = 1;
 
 protected:
@@ -35,6 +35,9 @@ protected:
   std::set<std::string> available_modules;
   map<string,string> metadata; ///< misc metadata about this osd
 
+  // From active daemon to populate MgrMap::services
+  std::map<std::string, std::string> services;
+
   // Only populated during activation
   std::vector<MonCommand> command_descs;
 
@@ -65,6 +68,15 @@ public:
     return metadata;
   }
 
+  const std::map<std::string,std::string>& get_services() const {
+    return services;
+  }
+
+  void set_services(const std::map<std::string, std::string> &svcs)
+  {
+    services = svcs;
+  }
+
   void set_command_descs(const std::vector<MonCommand> &cmds)
   {
     command_descs = cmds;
@@ -98,6 +110,7 @@ public:
     ::encode(available_modules, payload);
     ::encode(command_descs, payload);
     ::encode(metadata, payload);
+    ::encode(services, payload);
   }
   void decode_payload() override {
     bufferlist::iterator p = payload.begin();
@@ -118,6 +131,9 @@ public:
     if (header.version >= 5) {
       ::decode(metadata, p);
     }
+    if (header.version >= 6) {
+      ::decode(services, p);
+    }
   }
 };