Update to 4.9.2

Resolves: RHEL-101721
Resolves: RHEL-101722

Signed-off-by: Jan Jansky <jjansky@redhat.com>
This commit is contained in:
Jan Jansky 2025-07-03 16:42:28 +02:00
parent 689ad3675d
commit 4e9d177688
6 changed files with 9 additions and 187 deletions

1
.gitignore vendored
View File

@ -32,3 +32,4 @@ sos-2.2.tar.gz
/sos-4.8.2.tar.gz
/sos-4.9.1.tar.gz
/sos-audit-0.3-1.tgz
/sos-4.9.2.tar.gz

View File

@ -1,37 +0,0 @@
From 1d449044caf2224da5e55d0de51459137feb0807 Mon Sep 17 00:00:00 2001
From: Pavel Moravec <pmoravec@redhat.com>
Date: Sun, 25 May 2025 11:46:34 +0200
Subject: [PATCH] [cleaner] Use "hostname -f" in HostnamePrepper
HostnamePrepper should always be fed by FQDN to ensure domain names are
recognized properly.
This is important esp. when:
- /etc/hosts is empty
- "hostname" contains shortname only
- "hostname -f" contains FQDN
Resolves: #4022
Closes: #4026
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
---
sos/cleaner/preppers/hostname.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sos/cleaner/preppers/hostname.py b/sos/cleaner/preppers/hostname.py
index 0812597e..b20f5679 100644
--- a/sos/cleaner/preppers/hostname.py
+++ b/sos/cleaner/preppers/hostname.py
@@ -29,7 +29,7 @@ class HostnamePrepper(SoSPrepper):
items = []
_file = 'hostname'
if archive.is_sos:
- _file = 'sos_commands/host/hostname'
+ _file = 'sos_commands/host/hostname_-f'
elif archive.is_insights:
_file = 'data/insights_commands/hostname_-f'
--
2.49.0

View File

@ -1,30 +0,0 @@
From c41fca3daed8b515c4022ab02232acab8b1ec4c4 Mon Sep 17 00:00:00 2001
From: Pavel Moravec <pmoravec@redhat.com>
Date: Tue, 20 May 2025 13:18:26 +0200
Subject: [PATCH] [dnf] Scrub passwords in repository URIs
Closes: #4018
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
---
sos/report/plugins/dnf.py | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/sos/report/plugins/dnf.py b/sos/report/plugins/dnf.py
index 4a1e52b9..69224955 100644
--- a/sos/report/plugins/dnf.py
+++ b/sos/report/plugins/dnf.py
@@ -150,4 +150,10 @@ class DNFPlugin(Plugin, RedHatPlugin):
#
self.do_file_sub("/etc/dnf/dnf.conf", regexp, repl)
+ # Scrub credentials in http URIs
+ self.do_paths_http_sub([
+ '/etc/yum.repos.d/*',
+ '/var/log/dnf.*',
+ ])
+
# vim: set et ts=4 sw=4 :
--
2.49.0

View File

@ -1,111 +0,0 @@
From 369e65acafa70a6d7a9751802395bddaaeafd141 Mon Sep 17 00:00:00 2001
From: Jose Castillo <jcastillo@redhat.com>
Date: Wed, 21 May 2025 10:10:41 +0100
Subject: [PATCH] [policy] Re-add logic to request case-id if not present
This commit re-adds the logic to ask for case-id if
the user hasn't specified it in the command line
explicitly.
Related: RHEL-92071
Signed-off-by: Jose Castillo <jcastillo@redhat.com>
---
sos/policies/distros/__init__.py | 18 ++++++++++++++++--
sos/upload/__init__.py | 3 +++
sos/upload/targets/redhat.py | 22 ++--------------------
3 files changed, 21 insertions(+), 22 deletions(-)
diff --git a/sos/policies/distros/__init__.py b/sos/policies/distros/__init__.py
index 06327a6b..7004fdbd 100644
--- a/sos/policies/distros/__init__.py
+++ b/sos/policies/distros/__init__.py
@@ -13,6 +13,7 @@
import os
import re
+from sos import _sos as _
from sos.policies import Policy
from sos.policies.init_systems import InitSystem
from sos.policies.init_systems.systemd import SystemdInit
@@ -300,8 +301,21 @@ class LinuxPolicy(Policy):
if cmdline_opts.low_priority:
self._configure_low_priority()
- if cmdline_opts.case_id:
- self.case_id = cmdline_opts.case_id
+ # set or query for case id
+ self.case_id = self.prompt_for_case_id(cmdline_opts)
+
+ def prompt_for_case_id(self, cmdline_opts):
+ if not cmdline_opts.batch and not \
+ cmdline_opts.quiet:
+ if not cmdline_opts.case_id:
+ cmdline_opts.case_id = input(
+ _("Optionally, please enter the case id that you are "
+ "generating this report for: ")
+ )
+ self.case_id = cmdline_opts.case_id if \
+ cmdline_opts.case_id else ""
+
+ return self.case_id
def _configure_low_priority(self):
"""Used to constrain sos to a 'low priority' execution, potentially
diff --git a/sos/upload/__init__.py b/sos/upload/__init__.py
index 97872f69..7be33f65 100644
--- a/sos/upload/__init__.py
+++ b/sos/upload/__init__.py
@@ -282,6 +282,9 @@ this utility.
if self.from_cmdline:
self.intro()
self.archive = self.opts.upload_file
+ self.caseid = self.policy.prompt_for_case_id(
+ cmdline_opts=self.opts
+ )
cmdline_target = self.opts.upload_target
if cmdline_target and cmdline_target != 'local':
self.upload_target = self.upload_targets[cmdline_target]
diff --git a/sos/upload/targets/redhat.py b/sos/upload/targets/redhat.py
index b3e8e3c5..d5262af0 100644
--- a/sos/upload/targets/redhat.py
+++ b/sos/upload/targets/redhat.py
@@ -52,25 +52,6 @@ class RHELUploadTarget(UploadTarget):
self.upload_directory = self.commons['cmdlineopts'].upload_directory
- def prompt_for_case_id(self):
- caseid = self.commons['cmdlineopts'].case_id if \
- self.commons['cmdlineopts'].case_id else ""
-
- # set or query for case id
- if not self.commons['cmdlineopts'].batch and not \
- self.commons['cmdlineopts'].quiet:
- if caseid:
- self.commons['cmdlineopts'].case_id = caseid
- else:
- self.commons['cmdlineopts'].case_id = input(
- _("Optionally, please enter the case id that you are "
- "generating this report for: ")
- )
- if self.commons['cmdlineopts'].case_id:
- self.case_id = self.commons['cmdlineopts'].case_id
-
- return self.case_id
-
def prompt_for_upload_user(self):
if self.commons['cmdlineopts'].upload_user:
self.ui_log.info(
@@ -101,7 +82,8 @@ class RHELUploadTarget(UploadTarget):
if self.commons['cmdlineopts'].upload_protocol == 'sftp':
return self.RH_SFTP_HOST
if not self.commons['cmdlineopts'].case_id and not\
- self.prompt_for_case_id():
+ self.commons['policy'].prompt_for_case_id(
+ self.commons['cmdlineopts']):
return self.RH_SFTP_HOST
except Exception as e:
--
2.49.0

View File

@ -4,8 +4,8 @@
Summary: A set of tools to gather troubleshooting information from a system
Name: sos
Version: 4.9.1
Release: 2%{?dist}
Version: 4.9.2
Release: 1%{?dist}
Group: Applications/System
Source0: https://github.com/sosreport/sos/archive/%{version}/sos-%{version}.tar.gz
Source1: sos-audit-%{auditversion}.tgz
@ -22,9 +22,6 @@ Recommends: python3-pexpect
Recommends: python3-pyyaml
Conflicts: vdsm < 4.40
Obsoletes: sos-collector <= 1.9
Patch1: sos-cleaner-Use-hostname-f-in-HostnamePrepper.patch
Patch2: sos-dnf-Scrub-passwords-in-repository-URIs.patch
Patch3: sos-policy-Re-add-logic-to-request-case-id-if-not-presen.patch
%description
Sos is a set of tools that gathers information about system
@ -35,9 +32,6 @@ support technicians and developers.
%prep
%setup -qn %{name}-%{version}
%setup -T -D -a1 -q
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 3 -p1
%build
%py3_build
@ -109,6 +103,11 @@ of the system. Currently storage and filesystem commands are audited.
%changelog
* Fri Jul 04 2025 Jan Jansky <jjansky@redhat.com> = 4.9.2-1
- Update to 4.9.2
Resolves: RHEL-101721
Resolves: RHEL-101722
* Fri May 30 2025 Jan Jansky <jjansky@redhat.com> = 4.9.1-2
- Update to 4.9.1-2 in RHEL 10
Resolves: RHEL-86667

View File

@ -1,2 +1,2 @@
SHA512 (sos-4.9.1.tar.gz) = 21b51f50f376689c19dae112ab0fe8a0e56dcef83bcfcf7e23f78033b1f87d4f7568a68948019f15bb546325f4b872b8ffae7e8f137896c5be22586c0eb5c85d
SHA512 (sos-4.9.2.tar.gz) = 9e2269ae0fd4eb93c468a5bf86df05482d5b21a2d70be2377cd380e0637026da4b73f2036eb8f60ab9f644ccbc0f591818477ac1ba0e96943e219f68ac2da910
SHA512 (sos-audit-0.3-1.tgz) = 24c7bfec7e47a082ca1f2a96c5ad455c692d81dcc4339877de5bd324719609d91bc0ef6ddb95485fb75b81f90f8a7cc58370ada6f626c275bab36e9e2a409330