Blame SOURCES/sos-bz1874295-osp-ironic-inspector-configs.patch

bffc8a
From 4e46e0c8db3e2ecea7279ae7a781ae2e22a81b69 Mon Sep 17 00:00:00 2001
bffc8a
From: David Vallee Delisle <dvd@redhat.com>
bffc8a
Date: Mon, 31 Aug 2020 18:58:42 -0400
bffc8a
Subject: [PATCH] [openstack_ironic] Missing ironic-inspector configs
bffc8a
bffc8a
We're missing the ironic-inspector configurations, probably because they
bffc8a
were in the RedHatPlugin class, at the bottom of the file and they were
bffc8a
probably missed when updating this plugin. Moving them at the top with
bffc8a
the other `add_copy_spec` will help tracking them in case something
bffc8a
change again.
bffc8a
bffc8a
Revamping also the way we grab logs to check if we're in a container
bffc8a
first.
bffc8a
bffc8a
Resolves: #2223
bffc8a
bffc8a
Signed-off-by: David Vallee Delisle <dvd@redhat.com>
bffc8a
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
bffc8a
---
bffc8a
 sos/report/plugins/openstack_ironic.py | 121 +++++++++++++++++--------
bffc8a
 1 file changed, 82 insertions(+), 39 deletions(-)
bffc8a
bffc8a
diff --git a/sos/report/plugins/openstack_ironic.py b/sos/report/plugins/openstack_ironic.py
bffc8a
index 314d2a58..57060a27 100644
bffc8a
--- a/sos/report/plugins/openstack_ironic.py
bffc8a
+++ b/sos/report/plugins/openstack_ironic.py
bffc8a
@@ -20,41 +20,95 @@ class OpenStackIronic(Plugin):
bffc8a
     profiles = ('openstack', 'openstack_undercloud')
bffc8a
 
bffc8a
     var_puppet_gen = "/var/lib/config-data/puppet-generated/ironic"
bffc8a
+    ins_puppet_gen = var_puppet_gen + "_inspector"
bffc8a
 
bffc8a
     def setup(self):
bffc8a
-        self.conf_list = [
bffc8a
-            "/etc/ironic/*",
bffc8a
-            self.var_puppet_gen + "/etc/ironic/*",
bffc8a
-            self.var_puppet_gen + "_api/etc/ironic/*"
bffc8a
-        ]
bffc8a
-        self.add_copy_spec([
bffc8a
-            "/etc/ironic/",
bffc8a
-            self.var_puppet_gen + "/etc/xinetd.conf",
bffc8a
-            self.var_puppet_gen + "/etc/xinetd.d/",
bffc8a
-            self.var_puppet_gen + "/etc/ironic/",
bffc8a
-            self.var_puppet_gen + "/etc/httpd/conf/",
bffc8a
-            self.var_puppet_gen + "/etc/httpd/conf.d/",
bffc8a
-            self.var_puppet_gen + "/etc/httpd/conf.modules.d/*.conf",
bffc8a
-            self.var_puppet_gen + "/etc/my.cnf.d/tripleo.cnf",
bffc8a
-            self.var_puppet_gen + "_api/etc/ironic/",
bffc8a
-            self.var_puppet_gen + "_api/etc/httpd/conf/",
bffc8a
-            self.var_puppet_gen + "_api/etc/httpd/conf.d/",
bffc8a
-            self.var_puppet_gen + "_api/etc/httpd/conf.modules.d/*.conf",
bffc8a
-            self.var_puppet_gen + "_api/etc/my.cnf.d/tripleo.cnf"
bffc8a
-        ])
bffc8a
-
bffc8a
-        if self.get_option("all_logs"):
bffc8a
+
bffc8a
+        in_container = self.container_exists('.*ironic_api')
bffc8a
+
bffc8a
+        if in_container:
bffc8a
+            self.conf_list = [
bffc8a
+                self.var_puppet_gen + "/etc/ironic/*",
bffc8a
+                self.var_puppet_gen + "/etc/ironic-inspector/*",
bffc8a
+                self.var_puppet_gen + "_api/etc/ironic/*",
bffc8a
+                self.ins_puppet_gen + "/etc/ironic-inspector/*",
bffc8a
+                self.ins_puppet_gen + "/var/lib/httpboot/inspector.ipxe"
bffc8a
+            ]
bffc8a
             self.add_copy_spec([
bffc8a
-                "/var/log/ironic/",
bffc8a
+                "/var/lib/ironic-inspector/",
bffc8a
+                "/var/log/containers/ironic-inspector/ramdisk/",
bffc8a
+                self.var_puppet_gen + "/etc/xinetd.conf",
bffc8a
+                self.var_puppet_gen + "/etc/xinetd.d/",
bffc8a
+                self.var_puppet_gen + "/etc/ironic/",
bffc8a
+                self.var_puppet_gen + "/etc/ironic-inspector/",
bffc8a
+                self.var_puppet_gen + "/etc/httpd/conf/",
bffc8a
+                self.var_puppet_gen + "/etc/httpd/conf.d/",
bffc8a
+                self.var_puppet_gen + "/etc/httpd/conf.modules.d/*.conf",
bffc8a
+                self.var_puppet_gen + "/etc/my.cnf.d/tripleo.cnf",
bffc8a
+                self.var_puppet_gen + "_api/etc/ironic/",
bffc8a
+                self.var_puppet_gen + "_api/etc/httpd/conf/",
bffc8a
+                self.var_puppet_gen + "_api/etc/httpd/conf.d/",
bffc8a
+                self.var_puppet_gen + "_api/etc/httpd/conf.modules.d/*.conf",
bffc8a
+                self.var_puppet_gen + "_api/etc/my.cnf.d/tripleo.cnf",
bffc8a
+                self.ins_puppet_gen + "/etc/ironic-inspector/*",
bffc8a
+                self.ins_puppet_gen + "/var/lib/httpboot/inspector.ipxe"
bffc8a
             ])
bffc8a
+
bffc8a
+            if self.get_option("all_logs"):
bffc8a
+                self.add_copy_spec([
bffc8a
+                    "/var/log/containers/ironic/",
bffc8a
+                    "/var/log/containers/ironic-inspector/"
bffc8a
+                ])
bffc8a
+            else:
bffc8a
+                self.add_copy_spec([
bffc8a
+                    "/var/log/containers/ironic/*.log",
bffc8a
+                    "/var/log/containers/ironic-inspector/*.log",
bffc8a
+                ])
bffc8a
+
bffc8a
+            for path in ['/var/lib/ironic', '/httpboot', '/tftpboot',
bffc8a
+                         self.ins_puppet_gen + '/var/lib/httpboot/',
bffc8a
+                         self.ins_puppet_gen + '/var/lib/tftpboot/']:
bffc8a
+                self.add_cmd_output('ls -laRt %s' % path)
bffc8a
+                self.add_cmd_output('ls -laRt %s' %
bffc8a
+                                    (self.var_puppet_gen + path))
bffc8a
+
bffc8a
+            # Let's get the packages from the containers, always helpful when
bffc8a
+            # troubleshooting.
bffc8a
+            for container_name in ['ironic_inspector_dnsmasq',
bffc8a
+                                   'ironic_inspector', 'ironic_pxe_http',
bffc8a
+                                   'ironic_pxe_tftp', 'ironic_neutron_agent',
bffc8a
+                                   'ironic_conductor', 'ironic_api']:
bffc8a
+                if self.container_exists('.*' + container_name):
bffc8a
+                    self.add_cmd_output(self.fmt_container_cmd(container_name,
bffc8a
+                                                               'rpm -qa'))
bffc8a
+
bffc8a
         else:
bffc8a
+            self.conf_list = [
bffc8a
+                "/etc/ironic/*",
bffc8a
+                "/etc/ironic-inspector/*",
bffc8a
+            ]
bffc8a
             self.add_copy_spec([
bffc8a
-                "/var/log/ironic/*.log",
bffc8a
+                "/etc/ironic/",
bffc8a
+                "/etc/ironic-inspector/",
bffc8a
+                "/var/lib/ironic-inspector/",
bffc8a
+                "/var/log/ironic-inspector/ramdisk/",
bffc8a
+                "/etc/my.cnf.d/tripleo.cnf",
bffc8a
+                "/var/lib/httpboot/inspector.ipxe"
bffc8a
             ])
bffc8a
 
bffc8a
-        for path in ['/var/lib/ironic', '/httpboot', '/tftpboot']:
bffc8a
-            self.add_cmd_output('ls -laRt %s' % path)
bffc8a
-            self.add_cmd_output('ls -laRt %s' % (self.var_puppet_gen + path))
bffc8a
+            if self.get_option("all_logs"):
bffc8a
+                self.add_copy_spec([
bffc8a
+                    "/var/log/ironic/",
bffc8a
+                    "/var/log/ironic-inspector/",
bffc8a
+                ])
bffc8a
+            else:
bffc8a
+                self.add_copy_spec([
bffc8a
+                    "/var/log/ironic/*.log",
bffc8a
+                    "/var/log/ironic-inspector/*.log",
bffc8a
+                ])
bffc8a
+
bffc8a
+            for path in ['/var/lib/ironic', '/httpboot', '/tftpboot']:
bffc8a
+                self.add_cmd_output('ls -laRt %s' % path)
bffc8a
 
bffc8a
         vars_all = [p in os.environ for p in [
bffc8a
                     'OS_USERNAME', 'OS_PASSWORD']]
bffc8a
@@ -136,6 +190,7 @@ class RedHatIronic(OpenStackIronic, RedHatPlugin):
bffc8a
     def setup(self):
bffc8a
         super(RedHatIronic, self).setup()
bffc8a
 
bffc8a
+        # ironic-discoverd was renamed to ironic-inspector in Liberty
bffc8a
         # is the optional ironic-discoverd service installed?
bffc8a
         if any([self.is_installed(p) for p in self.discoverd_packages]):
bffc8a
             self.conf_list.append('/etc/ironic-discoverd/*')
bffc8a
@@ -146,18 +201,6 @@ class RedHatIronic(OpenStackIronic, RedHatPlugin):
bffc8a
             self.add_journal(units="openstack-ironic-discoverd")
bffc8a
             self.add_journal(units="openstack-ironic-discoverd-dnsmasq")
bffc8a
 
bffc8a
-        # ironic-discoverd was renamed to ironic-inspector in Liberty
bffc8a
-        self.conf_list.append('/etc/ironic-inspector/*')
bffc8a
-        self.conf_list.append(self.var_puppet_gen + '/etc/ironic-inspector/*')
bffc8a
-        self.add_copy_spec('/etc/ironic-inspector/')
bffc8a
-        self.add_copy_spec(self.var_puppet_gen + '/etc/ironic-inspector/')
bffc8a
-        self.add_copy_spec('/var/lib/ironic-inspector/')
bffc8a
-        if self.get_option("all_logs"):
bffc8a
-            self.add_copy_spec('/var/log/ironic-inspector/')
bffc8a
-        else:
bffc8a
-            self.add_copy_spec('/var/log/ironic-inspector/*.log')
bffc8a
-            self.add_copy_spec('/var/log/ironic-inspector/ramdisk/')
bffc8a
-
bffc8a
         self.add_journal(units="openstack-ironic-inspector-dnsmasq")
bffc8a
 
bffc8a
         if self.osc_available:
bffc8a
-- 
bffc8a
2.26.2
bffc8a