Compare commits

...

No commits in common. "c8s" and "c8" have entirely different histories.
c8s ... c8

10 changed files with 198 additions and 58 deletions

22
.gitignore vendored
View File

@ -1,20 +1,2 @@
/sos-4.2.tar.gz SOURCES/sos-4.9.1.tar.gz
/sos-audit-0.3.tgz SOURCES/sos-audit-0.3-1.tgz
/sos-4.3.tar.gz
/sos-4.4.tar.gz
/sos-4.5.0.tar.gz
/sos-4.5.1.tar.gz
/sos-4.5.3.tar.gz
/sos-4.5.4.tar.gz
/sos-4.5.6.tar.gz
/sos-4.6.0.tar.gz
/sos-4.6.1.tar.gz
/sos-4.7.0.tar.gz
/sos-4.7.1.tar.gz
/sos-4.7.2.tar.gz
/sos-4.8.0.tar.gz
/sos-4.8.1.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

2
.sos.metadata Normal file
View File

@ -0,0 +1,2 @@
9c7e8309a950a99ccd4f02268b7b842374f7da16 SOURCES/sos-4.9.1.tar.gz
00752b68ec5e1141192a9dab7d44377b8d637bf7 SOURCES/sos-audit-0.3-1.tgz

View File

@ -0,0 +1,37 @@
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

@ -0,0 +1,30 @@
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

@ -0,0 +1,111 @@
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

@ -23,19 +23,3 @@
res.append(ls[0]) res.append(ls[0])
except Exception as err: except Exception as err:
self.log_debug(f"Error parsing sos help: {err}") self.log_debug(f"Error parsing sos help: {err}")
--- a/sos/report/plugins/mongodb.py
+++ b/sos/report/plugins/mongodb.py
@@ -87,9 +87,11 @@
)
def setup(self):
- if get_juju_info := self.path_exists('/var/lib/juju/db'):
+ if self.path_exists('/var/lib/juju/db'):
+ get_juju_info = self.path_exists('/var/lib/juju/db')
self.db_folder = "/var/lib/juju/db"
- elif get_juju_info := self.path_exists('/var/snap/juju-db/curent/db'):
+ elif self.path_exists('/var/snap/juju-db/curent/db'):
+ get_juju_info = self.path_exists('/var/snap/juju-db/curent/db')
self.db_folder = "/var/snap/juju-db/current/db"
super().setup()

View File

@ -1,5 +1,5 @@
--- /dev/null 2025-04-03 01:35:45.132999852 +0200 --- /dev/null 2025-04-03 01:35:45.132999852 +0200
+++ sos-4.9.2/bin/sosreport 2025-04-15 13:54:04.924751581 +0200 +++ sos-4.9.1/bin/sosreport 2025-04-15 13:54:04.924751581 +0200
@@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
+#!/usr/bin/python3 +#!/usr/bin/python3
+msg = ("sosreport binary is deprecated, use 'sos report' instead") +msg = ("sosreport binary is deprecated, use 'sos report' instead")
@ -8,7 +8,7 @@
+# vim:ts=4 et sw=4 +# vim:ts=4 et sw=4
--- /dev/null 2025-04-03 01:35:45.132999852 +0200 --- /dev/null 2025-04-03 01:35:45.132999852 +0200
+++ sos-4.9.2/bin/sos-collector 2025-04-15 15:10:17.780281627 +0200 +++ sos-4.9.1/bin/sos-collector 2025-04-15 15:10:17.780281627 +0200
@@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
+#!/usr/bin/python3 +#!/usr/bin/python3
+msg = ("sos-collector binary is deprecated, use 'sos collector' instead") +msg = ("sos-collector binary is deprecated, use 'sos collector' instead")
@ -16,14 +16,14 @@
+ +
+# vim:ts=4 et sw=4 +# vim:ts=4 et sw=4
--- sos-4.9.2/setup.py 2025-04-15 15:17:21.938635468 +0200 --- sos-4.9.1/setup.py 2025-04-15 15:17:21.938635468 +0200
+++ sos-4.9.2/setup.py 2025-04-15 15:17:41.328198501 +0200 +++ sos-4.9.1/setup.py 2025-04-15 15:17:41.328198501 +0200
@@ -34,7 +34,7 @@ @@ -19,7 +19,7 @@
maintainer_email='jacob.r.hunsaker@gmail.com', maintainer_email='jacob.r.hunsaker@gmail.com',
url='https://github.com/sosreport/sos', url='https://github.com/sosreport/sos',
license="GPLv2+", license="GPLv2+",
- scripts=['bin/sos'], - scripts=['bin/sos'],
+ scripts=['bin/sos', 'bin/sosreport', 'bin/sos-collector'], + scripts=['bin/sos', 'bin/sosreport', 'bin/sos-collector'],
data_files=data_files, data_files=[
packages=find_packages(include=['sos', 'sos.*']) ('share/man/man1', ['man/en/sos-report.1', 'man/en/sos.1',
) 'man/en/sos-collect.1', 'man/en/sos-clean.1',

View File

@ -4,8 +4,8 @@
Summary: A set of tools to gather troubleshooting information from a system Summary: A set of tools to gather troubleshooting information from a system
Name: sos Name: sos
Version: 4.9.2 Version: 4.9.1
Release: 1%{?dist} Release: 2%{?dist}
Group: Applications/System Group: Applications/System
Source0: https://github.com/sosreport/sos/archive/%{version}/sos-%{version}.tar.gz Source0: https://github.com/sosreport/sos/archive/%{version}/sos-%{version}.tar.gz
Source1: sos-audit-%{auditversion}.tgz Source1: sos-audit-%{auditversion}.tgz
@ -24,6 +24,9 @@ Conflicts: vdsm < 4.40
Obsoletes: sos-collector Obsoletes: sos-collector
Patch1: sos-python36-walrus-operator.patch Patch1: sos-python36-walrus-operator.patch
Patch2: sosreport-binary.patch Patch2: sosreport-binary.patch
Patch3: sos-cleaner-Use-hostname-f-in-HostnamePrepper.patch
Patch4: sos-dnf-Scrub-passwords-in-repository-URIs.patch
Patch5: sos-policy-Re-add-logic-to-request-case-id-if-not-presen.patch
%description %description
Sos is a set of tools that gathers information about system Sos is a set of tools that gathers information about system
@ -36,6 +39,9 @@ support technicians and developers.
%setup -T -D -a1 -q %setup -T -D -a1 -q
%patch -P 1 -p1 %patch -P 1 -p1
%patch -P 2 -p1 %patch -P 2 -p1
%patch -P 3 -p1
%patch -P 4 -p1
%patch -P 5 -p1
%build %build
%py3_build %py3_build
@ -108,10 +114,6 @@ of the system. Currently storage and filesystem commands are audited.
%license LICENSE %license LICENSE
%changelog %changelog
* Fri Jul 04 2025 Jan Jansky <jjansky@redhat.com> = 4.9.2-1
- Update to 4.9.2 in RHEL 8
Resolves: RHEL-101716
* Fri May 30 2025 Jan Jansky <jjansky@redhat.com> = 4.9.1-2 * Fri May 30 2025 Jan Jansky <jjansky@redhat.com> = 4.9.1-2
- Update to 4.9.1-2 in RHEL 8 - Update to 4.9.1-2 in RHEL 8
Resolves: RHEL-86645 Resolves: RHEL-86645

View File

@ -1,6 +0,0 @@
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

View File

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