From d6156ede8b2d26b76403be39b62106ec2c4fb3b7 Mon Sep 17 00:00:00 2001 From: Tatjana Dehler Date: Wed, 14 Sep 2022 16:36:16 +0200 Subject: [PATCH] cephadm: consider stdout to get container version Fixes: https://tracker.ceph.com/issues/57558 Signed-off-by: Tatjana Dehler --- src/cephadm/cephadm.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/cephadm/cephadm.py b/src/cephadm/cephadm.py index 25c18553ab176..5a56544ac0064 100755 --- a/src/cephadm/cephadm.py +++ b/src/cephadm/cephadm.py @@ -631,10 +631,11 @@ class Monitoring(object): cmd = daemon_type.replace('-', '_') code = -1 err = '' + out = '' version = '' if daemon_type == 'alertmanager': for cmd in ['alertmanager', 'prometheus-alertmanager']: - _, err, code = call(ctx, [ + out, err, code = call(ctx, [ ctx.container_engine.path, 'exec', container_id, cmd, '--version' ], verbosity=CallVerbosity.QUIET) @@ -642,12 +643,14 @@ class Monitoring(object): break cmd = 'alertmanager' # reset cmd for version extraction else: - _, err, code = call(ctx, [ + out, err, code = call(ctx, [ ctx.container_engine.path, 'exec', container_id, cmd, '--version' ], verbosity=CallVerbosity.QUIET) - if code == 0 and \ - err.startswith('%s, version ' % cmd): - version = err.split(' ')[2] + if code == 0: + if err.startswith('%s, version ' % cmd): + version = err.split(' ')[2] + elif out.startswith('%s, version ' % cmd): + version = out.split(' ')[2] return version ################################## -- 2.39.5