]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cephadm: `cephadm ls` broken for SUSE downstream alertmanager container
authorPatrick Seidensal <pseidensal@suse.com>
Fri, 26 Feb 2021 16:27:17 +0000 (17:27 +0100)
committerSebastian Wagner <sebastian.wagner@suse.com>
Tue, 9 Mar 2021 14:29:32 +0000 (15:29 +0100)
Fixes: https://tracker.ceph.com/issues/49506
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
(cherry picked from commit 8f0dae05fb0c50fbfc0db952ecbfda3900a8a10c)

src/cephadm/cephadm

index 3a90939cf919247c6904ba1f2da4948c5c670208..e7575fd71f02d6cf8398b05d3397f20c3164fdb4 100755 (executable)
@@ -4645,9 +4645,19 @@ def list_daemons(ctx, detail=True, legacy_dir=None):
                                                      'alertmanager',
                                                      'node-exporter']:
                                     cmd = daemon_type.replace('-', '_')
-                                    out, err, code = call(ctx,
-                                        [container_path, 'exec', container_id,
-                                         cmd, '--version'])
+                                    if daemon_type == 'alertmanager':
+                                        for cmd in ['alertmanager', 'prometheus-alertmanager']:
+                                            out, err, code = call(ctx, [
+                                                    container_path, 'exec', container_id, cmd,
+                                                    '--version'
+                                                ], verbosity=CallVerbosity.SILENT)
+                                            if code == 0:
+                                                break
+                                        cmd = 'alertmanager'  # reset cmd for version extraction
+                                    else:
+                                        out, err, code = call(ctx, [
+                                            container_path, 'exec', container_id, cmd, '--version'
+                                        ])
                                     if not code and \
                                        err.startswith('%s, version ' % cmd):
                                         version = err.split(' ')[2]