]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/cephadm: propagate ip:port from CephadmDaemoNDeploySpec to deployment
authorSage Weil <sage@newdream.net>
Mon, 8 Mar 2021 21:07:20 +0000 (16:07 -0500)
committerSage Weil <sage@newdream.net>
Mon, 15 Mar 2021 22:55:16 +0000 (18:55 -0400)
Pass the port through to the CephadmDaemonDeploySpec, and unit.meta.

Signed-off-by: Sage Weil <sage@newdream.net>
src/pybind/mgr/cephadm/serve.py
src/pybind/mgr/cephadm/services/cephadmservice.py

index 5fc0ae35ebfe3163c2021360cfbc32432d201009..1f82dbfb218761639068c97ada6808020c10745a 100644 (file)
@@ -859,6 +859,8 @@ class CephadmServe:
                         '--name', daemon_spec.name(),
                         '--meta-json', json.dumps({
                             'service_name': daemon_spec.service_name,
+                            'ports': daemon_spec.ports,
+                            'ip': daemon_spec.ip,
                         }),
                         '--config-json', '-',
                     ] + daemon_spec.extra_args,
index 31a791ee884680364025159a4e977f2f9a0b8a61..5e18c0f819eb57869de5b69e4545623245755338 100644 (file)
@@ -33,7 +33,8 @@ class CephadmDaemonDeploySpec:
                  ceph_conf: str = '',
                  extra_files: Optional[Dict[str, Any]] = None,
                  daemon_type: Optional[str] = None,
-                 ports: Optional[List[int]] = None,):
+                 ip: Optional[str] = None,
+                 ports: Optional[List[int]] = None):
         """
         A data struction to encapsulate `cephadm deploy ...
         """
@@ -58,6 +59,7 @@ class CephadmDaemonDeploySpec:
 
         # TCP ports used by the daemon
         self.ports: List[int] = ports or []
+        self.ip: Optional[str] = ip
 
         # values to be populated during generate_config calls
         # and then used in _run_cephadm
@@ -80,7 +82,9 @@ class CephadmDaemonDeploySpec:
             daemon_id=self.daemon_id,
             hostname=self.host,
             status=status,
-            status_desc=status_desc
+            status_desc=status_desc,
+            ip=self.ip,
+            ports=self.ports,
         )
 
 
@@ -100,17 +104,21 @@ class CephadmService(metaclass=ABCMeta):
     def allow_colo(self) -> bool:
         return False
 
-    def make_daemon_spec(self, host: str,
-                         daemon_id: str,
-                         network: str,
-                         spec: ServiceSpecs,
-                         daemon_type: Optional[str] = None,) -> CephadmDaemonDeploySpec:
+    def make_daemon_spec(
+            self, host: str,
+            daemon_id: str,
+            network: str,
+            spec: ServiceSpecs,
+            daemon_type: Optional[str] = None,
+            ports: Optional[List[int]] = None
+    ) -> CephadmDaemonDeploySpec:
         return CephadmDaemonDeploySpec(
             host=host,
             daemon_id=daemon_id,
             service_name=spec.service_name(),
             network=network,
-            daemon_type=daemon_type
+            daemon_type=daemon_type,
+            ports=ports,
         )
 
     def prepare_create(self, daemon_spec: CephadmDaemonDeploySpec) -> CephadmDaemonDeploySpec: