%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %global auditversion 0.3 Summary: A set of tools to gather troubleshooting information from a system Name: sos Version: 4.2 Release: 15%{?dist}.alma Group: Applications/System Source0: https://github.com/sosreport/sos/archive/%{version}/sos-%{version}.tar.gz Source1: sos-audit-%{auditversion}.tgz License: GPLv2+ BuildArch: noarch Url: https://github.com/sosreport/sos BuildRequires: python3-devel BuildRequires: gettext Requires: libxml2-python3 Requires: bzip2 Requires: xz Conflicts: vdsm < 4.40 Obsoletes: sos-collector Recommends: python3-pexpect Recommends: python3-requests Patch1: sos-bz2011413-cpuX-individual-sizelimits.patch Patch2: sos-bz1998521-unpackaged-recursive-symlink.patch Patch3: sos-bz1998433-opacapture-under-allow-system-changes.patch Patch4: sos-bz2002145-kernel-psi.patch Patch5: sos-bz2001096-iptables-save-under-nf_tables-kmod.patch Patch6: sos-bz1873185-estimate-only-option.patch Patch7: sos-bz2005195-iptables-based-on-ntf.patch Patch8: sos-bz2011506-foreman-puma-status.patch Patch9: sos-bz2012856-dryrun-uncaught-exception.patch Patch10: sos-bz2004929-openvswitch-offline-analysis.patch Patch11: sos-bz2012857-plugin-timeout-unhandled-exception.patch Patch12: sos-bz2018033-plugin-timeouts-proper-handling.patch Patch13: sos-bz2020777-filter-namespace-per-pattern.patch Patch14: sos-bz2023867-cleaner-hostnames-improvements.patch Patch15: sos-bz2025610-RHTS-api-change.patch Patch16: sos-bz2025403-nvidia-GPU-info.patch Patch17: sos-bz2030741-rhui-logs.patch Patch18: sos-bz2036697-ocp-backports.patch Patch19: sos-bz2043102-foreman-tasks-msgpack.patch Patch20: sos-bz2041488-virsh-in-foreground.patch Patch21: sos-bz2042966-ovn-proper-package-enablement.patch Patch22: sos-bz2054882-plugopt-logging-effective-opts.patch Patch23: sos-bz2055547-honour-plugins-timeout-hardcoded.patch # almalinux Patch1000: sos-almalinux-branding.patch %description Sos is a set of tools that gathers information about system hardware and configuration. The information can then be used for diagnostic purposes and debugging. Sos is commonly used to help support technicians and developers. %prep %setup -qn %{name}-%{version} %setup -T -D -a1 -q %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 %patch21 -p1 %patch22 -p1 %patch23 -p1 # almalinux %patch1000 -p1 %build %py3_build %install %py3_install '--install-scripts=%{_sbindir}' install -Dm644 %{name}.conf %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf %find_lang %{name} || echo 0 cd %{name}-audit-%{auditversion} DESTDIR=%{buildroot} ./install.sh cd .. mkdir -p %{buildroot}%{_sysconfdir}/sos/{cleaner,presets.d,extras.d,groups.d} %files -f %{name}.lang %{_sbindir}/sosreport %{_sbindir}/sos %{_sbindir}/sos-collector %dir /etc/sos/presets.d %dir /etc/sos/extras.d %dir /etc/sos/groups.d %{python3_sitelib}/* %{_mandir}/man1/sosreport.1.gz %{_mandir}/man1/sos-clean.1.gz %{_mandir}/man1/sos-collect.1.gz %{_mandir}/man1/sos-collector.1.gz %{_mandir}/man1/sos-mask.1.gz %{_mandir}/man1/sos-report.1.gz %{_mandir}/man1/sos.1.gz %{_mandir}/man5/sos.conf.5.gz %doc AUTHORS README.md %license LICENSE %config(noreplace) %{_sysconfdir}/sos/sos.conf %config(noreplace) %{_sysconfdir}/sos/cleaner %config /usr/config/sos.conf %package audit Summary: Audit use of some commands for support purposes License: GPLv2+ Group: Application/System %description audit Sos-audit provides configuration files for the Linux Auditing System to track the use of some commands capable of changing the configuration of the system. Currently storage and filesystem commands are audited. %post audit %{_sbindir}/sos-audit.sh %files audit %defattr(755,root,root,-) %{_sbindir}/sos-audit.sh %defattr(644,root,root,-) %config(noreplace) %{_sysconfdir}/sos/sos-audit.conf %defattr(444,root,root,-) %{_prefix}/lib/sos/audit/* %{_mandir}/man5/sos-audit.conf.5.gz %{_mandir}/man8/sos-audit.sh.8.gz %ghost /etc/audit/rules.d/40-sos-filesystem.rules %ghost /etc/audit/rules.d/40-sos-storage.rules %changelog * Fri Apr 01 2022 Eduard Abdullin - 4.2-15.alma - AlmaLinux changes * Wed Feb 23 2022 Pavel Moravec = 4.2-15 - [sosnode] Handle downstream versioning for runtime option Resolves: bz2036697 - [options] Fix logging on plugopts in effective sos command Resolves: bz2054882 - [report] Honor plugins' hardcoded plugin_timeout Resolves: bz2055547 - [policies] Set fallback to None sysroot, don't chroot to '/' Resolves: bz1873185 - [ovn_central] Rename container responsable of Red Hat Resolves: bz2042966 * Wed Jan 26 2022 Pavel Moravec = 4.2-13 - [virsh] Catch parsing exception Resolves: bz2041488 * Tue Jan 25 2022 Pavel Moravec = 4.2-12 - [foreman] Use psql-msgpack-decode wrapper for dynflow >= 1.6 Resolves: bz2043102 - [virsh] Call virsh commands in the foreground / with a TTY Resolves: bz2041488 - [ovn_central] Account for Red Hat ovn package naming Resolves: bz2042966 - [clean,parsers] Build regex lists for static items only once Resolves: bz2036697 * Mon Jan 10 2022 Pavel Moravec = 4.2-11 - [report] Add journal logs for NetworkManager plugin Resolves: bz2036697 * Fri Jan 07 2022 Pavel Moravec = 4.2-9 - add oc transport, backport various PRs for OCP Resolves: bz2036697 - [report] Provide better warning about estimate-mode Resolves: bz1873185 - [hostname] Fix loading and detection of long base domains Resolves: bz2023867 * Sun Dec 19 2021 Pavel Moravec = 4.2-8 - [rhui] New log folder Resolves: bz2030741 - nvidia]:Patch to update nvidia plugin for GPU info Resolves: bz2025403 - [hostname] Fix edge case for new hosts in a known subdomain Resolves: bz2023867 * Wed Dec 08 2021 Pavel Moravec = 4.2-7 - [hostname] Simplify case matching for domains Resolves: bz2023867 * Tue Nov 30 2021 Pavel Moravec = 4.2-6 - [redhat] Fix broken URI to upload to customer portal Resolves: bz2025610 * Mon Nov 22 2021 Pavel Moravec = 4.2-5 - [clean,hostname_parser] Source /etc/hosts for obfuscation Resolves: bz2023867 - [clean, hostname] Fix unintentionally case sensitive Resolves: bz2023863 - [redhat] update SFTP API version to v2 Resolves: bz2025610 * Tue Nov 16 2021 Pavel Moravec = 4.2-4 - [report] Calculate sizes of dirs, symlinks and manifest in Resolves: bz1873185 - [report] shutdown threads for timeouted plugins Resolves: bz2012857 - [report] fix filter_namespace per pattern Resolves: bz2020777 - Ensure specific plugin timeouts are only set Resolves: bz2018033 * Wed Nov 03 2021 Pavel Moravec = 4.2-2 - [firewall_tables] call iptables -t based on nft Resolves: bz2005195 - [report] Count with sos_logs and sos_reports in Resolves: bz1873185 - [foreman] Collect puma status and stats Resolves: bz2011506 - [report] Overwrite pred=None before refering predicate Resolves: bz2012856 - [openvswitch] add commands for offline analysis Resolves: bz2004929 * Wed Oct 06 2021 Pavel Moravec = 4.2-1 - Rebase on upstream 4.2 Resolves: bz1998133 - [report] Implement --estimate-only Resolves: bz1873185 - [omnipath_client] Opacapture to run only with allow changes Resolves: bz1998433 - [unpackaged] deal with recursive loop of symlinks properly Resolves: bz1998521 - [networking] prevent iptables-save commands to load nf_tables Resolves: bz2001096 - [kernel] Capture Pressure Stall Information Resolves: bz2002145 - [processor] Apply sizelimit to /sys/devices/system/cpu/cpuX Resolves: bz2011413 * Wed Aug 11 2021 Pavel Moravec = 4.1-5 - [report,collect] unify --map-file arguments Resolves: bz1923938 - [rhui] add new plugin for RHUI 4 Resolves: bz1665947 - [username parser] Load usernames from `last` for LDAP users Resolves: bz1985037 * Mon Jul 26 2021 Pavel Moravec = 4.1-4 - [options] allow variant option names in config file Resolves: bz1923938 - [plugins] Set default predicate instead of None Resolves: bz1985986 - [MigrationResults] collect info about conversions Resolves: bz1959598 * Mon Jun 21 2021 Pavel Moravec = 4.1-3 - [gluster] collect public keys from the right dir Resolves: bz1925419 - [cleaner] Only skip packaging-based files for the IP parse Resolves: bz1964499 - [networking] collect also tc filter show ingress Resolves: bz1886711 - [archive] skip copying SELinux context for /proc and /sys Resolves: bz1965001 - [sssd] sssd plugin when sssd-common Resolves: bz1967613 - Various OCP/cluster/cleanup enhancements Resolves: bz1973675 * Tue May 18 2021 Pavel Moravec = 4.1-2 - Load maps from all archives before obfuscation Resolves: bz1930181 - Multiple fixes in man pages Resolves: bz1935603 - [ds] Mask password and encryption keys in ldif files Resolves: bz1937298 - [report] add --cmd-timeout option Resolves: bz1937418 - [cups] Add gathering cups-browsed logs Resolves: bz1939963 - [sssd] Collect memory cache / individual logfiles Resolves: bz1940502 - Collect ibmvNIC dynamic_debugs Resolves: bz1942276 - [pulpcore] add plugin for pulp-3 Resolves: bz1956673 - [saphana] remove redundant unused argument of get_inst_info Resolves: bz1959413 - [networking] Add nstat command support Resolves: bz1961458 - [snapper] add a new plugin Resolves: bz1961229 * Mon Apr 26 2021 Pavel Moravec = 4.1-1 - Rebase on upstream 4.1 Resolves: bz1928679 * Tue Feb 16 2021 Pavel Moravec = 4.0-8 - Automatically create directory for sos-cleaner default_mapping Resolves: bz1923937 * Fri Jan 29 2021 Pavel Moravec = 4.0-7 - [kdump] Gather the file kexec-dmesg.log Resolves: bz1887402 - [Policy] Handle additional FTP authentication issues Resolves: bz1916729 * Thu Jan 21 2021 Pavel Moravec = 4.0-6 - [networking] Collect 'ethtool -e ' conditionally only Resolves: bz1917196 * Wed Jan 06 2021 Pavel Moravec = 4.0-5 - [component] honour plugopts from config file Resolves: bz1912889 - [collector] declare sysroot for each component Resolves: bz1912821 - [plugins] Dont stop collecting by empty specfile when sizelimit=0 Resolves: bz1912910 * Mon Jan 04 2021 Pavel Moravec = 4.0-4 - [component] Use sysroot from Policy when opts doesn't specify it Resolves: bz1881118 * Mon Dec 14 2020 Pavel Moravec = 4.0-3 - [ovirt] collect /etc/pki/ovirt-engine/.truststore Resolves: bz1848095 - [collector] allow overriding plain --cluster-type Resolves: bz1895316 - [component] Add log verbosity from presets Resolves: bz1904045 - [options] Fix --log-size=0 being ignored and unreported Resolves: bz1905657 - [report] collect broken symlinks Resolves: bz1906598 * Thu Oct 29 2020 Pavel Moravec = 4.0-2 - [cleaner] more streamlined sanitize_item method Resolves: bz1827801 - [openstack_ironic] Missing ironic-inspector configs Resolves: bz1874295 - Add support to collect hardware component logs Resolves: bz1880372 - [crio] collect /etc/crio/crio.conf.d/ Resolves: bz1881118 - [policy] Handle additional failure conditions for FTP uploads Resolves: bz1882368 - [filesys] never collect content of /proc/fs/panfs Resolves: bz1886782 - [kdump] Collect new kdump logfiles Resolves: bz1887390 - [stratis] Collect key list and report engine Resolves: bz1888012 - return tmp-dir with absolute path Resolves: bz1891562 * Tue Oct 13 2020 Pavel Moravec = 4.0-1 - Rebase on upstream 4.0 Resolves: bz1827801