From a57ab6f50968921b26b87695e704f84a25101597 Mon Sep 17 00:00:00 2001 From: Sebastian Wagner Date: Wed, 14 Jul 2021 15:15:50 +0200 Subject: [PATCH] cephadm: exec: also search for old cname Signed-off-by: Sebastian Wagner --- src/cephadm/cephadm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/cephadm/cephadm b/src/cephadm/cephadm index 85d39dd44907b..cd42a32637d2c 100755 --- a/src/cephadm/cephadm +++ b/src/cephadm/cephadm @@ -2079,14 +2079,18 @@ def check_units(ctx, units, enabler=None): def is_container_running(ctx: CephadmContext, c: 'CephContainer') -> bool: + return bool(get_running_container_name(ctx, c)) + + +def get_running_container_name(ctx: CephadmContext, c: 'CephContainer') -> Optional[str]: for name in [c.cname, c.old_cname]: out, err, ret = call(ctx, [ ctx.container_engine.path, 'container', 'inspect', '--format', '{{.State.Status}}', name ]) if out == 'running': - return True - return False + return name + return None def get_legacy_config_fsid(cluster, legacy_dir=None): @@ -3384,6 +3388,9 @@ class CephContainer: def exec_cmd(self, cmd): # type: (List[str]) -> List[str] + cname = get_running_container_name(self.ctx, self) + if not cname: + raise Error('unable to find container "{}"'.format(self.cname)) return [ str(self.ctx.container_engine.path), 'exec', -- 2.39.5