]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cephadm: populate ports if known and not included in unit.meta
authorSage Weil <sage@newdream.net>
Mon, 8 Mar 2021 19:18:04 +0000 (14:18 -0500)
committerSage Weil <sage@newdream.net>
Mon, 15 Mar 2021 22:55:16 +0000 (18:55 -0400)
This is only helpful for daemons deployed by older versions of cephadm
that have known ports based on their type.

Signed-off-by: Sage Weil <sage@newdream.net>
src/cephadm/cephadm

index 7d2d25505989e2a39244a79f5c52d7dc372715fb..75be85f3c6dd27795861a44b907b27da0bee4d00 100755 (executable)
@@ -2549,7 +2549,7 @@ def deploy_daemon(ctx, fsid, daemon_type, daemon_id, c, uid, gid,
         else:
             if c:
                 deploy_daemon_units(ctx, fsid, uid, gid, daemon_type, daemon_id,
-                                    c, osd_fsid=osd_fsid)
+                                    c, osd_fsid=osd_fsid, ports=ports)
             else:
                 raise RuntimeError('attempting to deploy a daemon without a container image')
 
@@ -2613,6 +2613,7 @@ def deploy_daemon_units(
     enable: bool = True,
     start: bool = True,
     osd_fsid: Optional[str] = None,
+    ports: Optional[List[int]] = None,
 ) -> None:
     # cmd
     data_dir = get_data_dir(fsid, ctx.data_dir, daemon_type, daemon_id)
@@ -2674,6 +2675,8 @@ def deploy_daemon_units(
             'memory_request': int(ctx.memory_request) if ctx.memory_request else None,
             'memory_limit': int(ctx.memory_limit) if ctx.memory_limit else None,
         })
+        if not meta.get('ports'):
+            meta['ports'] = ports
         metaf.write(json.dumps(meta, indent=4) + '\n')
 
         os.fchmod(f.fileno(), 0o600)