aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [archive] Fix get_archive_root after files reorderingPavel Moravec2024-04-241-1/+1
| | | | | | | | | | | Commit d5d8c21 reordered files in the archive, such that the first member is not the archive root directory further more. Let change the get_archive_root method accordingly to prevent self.archive_root being empty. Resolves: #3616 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [pylint] Fix deprecated warningsArif Ali2024-04-242-1/+2
| | | | | | | * W4903: deprecated-argument * W4902: deprecated-method Signed-off-by: Arif Ali <arif.ali@canonical.com>
* [pkg] Don't initialize _packages to empty setRenaud Métrich2024-04-221-2/+8
| | | | | | | | | | | | | | | | | | | | | | When initializing _packages, a distinction must be made between not having any package and not being initialized at all. Otherwise, if a package manager returns no package, the query command will execute hundreds of times. This can reproduce with 'flatpak' on RHEL when no package is returned: # flatpak list --> no output # strace -fttTvyy -s 128 -e execve -o sos.strace -- ./bin/sos report [...] Press ENTER to continue, or CTRL-C to quit. ^C # grep -c ' execve("/usr/sbin/flatpak"' sos.strace 350 Signed-off-by: Renaud Métrich <rmetrich@redhat.com>
* [Global] Resolve empty except alerts from CodeQLJake Hunsaker2024-04-2113-25/+36
| | | | | | | | | | | | | This commit resolves the remaining 'Empty except' alerts from CodeQL scanning. Most of these involve logging something during exception handling when we were previously simply `pass`ing. Others, either when logging is unavailable or it makes no sense to log something for, are resolved by placing comments within the except block as the CodeQL alerts should be suppressed if the 'empty except' (`pass`ing) has an explanatory note. Signed-off-by: Jake Hunsaker <jacob.r.hunsaker@gmail.com>
* [aap_receptor] Add receptor status outputThom Carlin2024-04-201-0/+1
| | | | Signed-off-by: Thom Carlin <tcarlin@redhat.com>
* [global] Update use of pipes with shlexJake Hunsaker2024-04-199-9/+9
| | | | | | | | | | | | `pipes` is deprecated and being removed from Python in 3.13. Our usage is exclusively `pipes.quote()`, which has actually been calling `shlex.quote()` behind the scenes for some time (at least since 3.6). Update our usage of `quote` to directly import from `shlex`. Resolves: #3310 Signed-off-by: Jake Hunsaker <jacob.r.hunsaker@gmail.com>
* [pylint] Convert all report plugins to f-stringsArif Ali2024-04-19143-783/+752
| | | | Signed-off-by: Arif Ali <arif.ali@canonical.com>
* [ceph] Add more microceph commandsPonnuvel Palaniyappan2024-04-191-5/+15
| | | | Signed-off-by: Ponnuvel Palaniyappan <pponnuvel@gmail.com>
* [kdump] Create AzureKDump classAadhar Agarwal2024-04-191-1/+46
| | | | | | | | | | | | This change collects kdump information for Azure Linux. With this change, we will check the 'path' variable in /etc/kdump.conf to check where information is being dumped. If get_vm_core is set to true, collect the latest vm core created in the last 24 hours that is <= 2GB Signed-off-by: Aadhar Agarwal <aadagarwal@microsoft.com>
* *[aap_receptor]** Add receptorctl work list outputThom Carlin2024-04-171-0/+2
| | | | Signed-off-by: Thom Carlin <tcarlin@redhat.com>
* **[aap_receptor]** Change receptorctl status output to jsonThom Carlin2024-04-161-0/+2
| | | | Signed-off-by: Thom Carlin <tcarlin@redhat.com>
* [avocado] Upgrade avocado to 103.X LTSArif Ali2024-04-154-28/+22
| | | | | | | | | | | | | | * Extra changes required due to module and function changes in new avocado * CentOS Stream is now seen as centos-stream in avocado instead of centos * Fine tune tox for stage tests Closes: #3588 Resolves: #3594 Co-authored-by: Jake Hunsaker <jacob.r.hunsaker@gmail.com> Signed-off-by: Arif Ali <arif.ali@canonical.com>
* [testing] Add most testing via tox.iniArif Ali2024-04-1236-164/+495
| | | | | | | | | | | | | | | | | Consolidate testing, so that things can be run from CLI, CI and various other means in a consistent way by using tox. * Updated all the flake8 tests in the tests folder. * Added pylint as a neutral test so that we can work on this in stages and have some collaboration on what we test and don't * The tox tests for unit, stageone, stagetwo testing makes is easier for users to know how to run tests, and not have to do things manually * Using tox for CI doesn't make sense, as that will create virtual envs and will disregard system/snap based python modules so may not work Signed-off-by: Arif Ali <arif.ali@canonical.com>
* [kafka] Add kafka pluginAlejandro Santoyo2024-04-111-0/+69
| | | | | | | | | | | Adding a plugin to collect: - Kafka logs and config files - basic installation info for debugging purposes Resolves: SET-96 Signed-off-by: Alejandro Santoyo <alejandro.santoyo@canonical.com>
* [cirrus] Run tests on latest daily builds for ubuntuArif Ali2024-04-0910-20/+71
| | | | | | | | | | | | Fix the issues reported by the tests on the new version of ubuntu Resolves: #3587 Closes: #3588 Related: SET-594,SET-595 Co-authored-by: David Negreira <david.negreira@canonical.com> Signed-off-by: Arif Ali <arif.ali@canonical.com> Signed-off-by: David Negreira <david.negreira@canonical.com>
* [AAP CONTROLLER] Add new presetRudnei Bertol Junior2024-04-092-1/+19
| | | | | | | | | | | Adds a new preset for `aap_controller`, or Ansible Automation Controller. This preset will set the `containers_common` plugin to collect output for the `awx` user. Related: #3561 Signed-off-by: Rudnei Bertol Junior <rudnei@redhat.com>
* [AAP EDA] Adding aap eda nginx log files to be collectedRudnei Bertol Junior2024-04-081-0/+2
| | | | | | | | | | Adding the line to collect the nginx log files for the AAP EDA sos report used for troubleshooting issues at Ansible Automation Platform Event Driven Controller Related: RH AAP-12898 Signed-off-by: Rudnei Bertol Junior <rudnei@redhat.com>
* [AAP RECEPTOR] Add a new AAP receptor plugin.Rudnei Bertol Junior2024-04-081-0/+53
| | | | | | | | | | Adding the file 'aap_receptor.py' for the sos report collects the files used for troubleshooting issues at Ansible Automation Platform Controller/Execution Nodes Related: RH AAP-19657 Signed-off-by: Rudnei Bertol Junior <rudnei@redhat.com>
* [build] Bump version to 4.7.1Pavel Moravec2024-04-084-4/+19
| | | | Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [kubernetes] k8s improvements for Charmed KubernetesShunde Zhang2024-04-031-51/+124
| | | | | | | | | | | Add more resources to output when kubernetes.all option is true. Remove openshift specific resources from base class. Output json format if kubernetes.all option is true. Export pod logs to an individual file for each container, so the plugin can export logs if there are multiple containers in a pod. Signed-off-by: Shunde Zhang <shunde.zhang@canonical.com>
* [samba] Capture wbinfo --online-statusJose Castillo2024-04-021-0/+1
| | | | | | | | | | | Capturing this command output can help find the domain status, specially in these cases where having multiple domains in the same forest/cross forest, or in cases where there is sssd and samba_winbind. This output complements that of 'net ads testjoin'. Related: RH: RHEL-30958 Signed-off-by: Jose Castillo <jcastillo@redhat.com>
* [telegraf] Add new telegraf pluginMarcin Wilk2024-03-261-0/+61
| | | | Signed-off-by: Marcin Wilk <marcin.wilk@canonical.com>
* [github] Add check for data obfuscationJose Castillo2024-03-251-1/+2
| | | | | | | | | This patch adds a new line to the github PR template so users can assess that they have obfuscated any password or similar from the code they are submitting. Signed-off-by: Jose Castillo <jcastillo@redhat.com>
* [ceph_common] Collect info on microceph snapPonnuvel Palaniyappan2024-03-251-0/+7
| | | | Signed-off-by: Ponnuvel Palaniyappan <pponnuvel@gmail.com>
* [kernel] Copy the kernel configAadhar Agarwal2024-03-221-2/+3
| | | | Signed-off-by: Aadhar Agarwal <aadagarwal@microsoft.com>
* [cifs] Capture missing files from /proc/fs/cifsJose Castillo2024-03-211-4/+6
| | | | | | | | | Added some missing files from /proc/fs/cifs and blacklist some files that we don't need to capture. Related: RH: RHEL-29707 Signed-off-by: Jose Castillo <jcastillo@redhat.com>
* [manpages] Add note about deprecation of options for RHELJose Castillo2024-03-201-0/+2
| | | | | | | | Add a note to the entries for --upload-user and --upload-pass clarifying that these options have been deprecated in RHEL systems. Signed-off-by: Jose Castillo <jcastillo@redhat.com>
* Implementing AAP Automation Controller PluginLucas Benedito2024-03-201-0/+88
| | | | | | | | | | | Adding the file 'aap_controller.py' for the sos report collects The files used for troubleshooting issues at Ansible Automation Platform Automation Controller Related: RH AAP-18409 Closes: #3561 Signed-off-by: Lucas Benedito <lbenedit@redhat.com>
* [Plugin,Policy] Make an AzurePlugin class, Update the vendor url,Aadhar Agarwal2024-03-202-1/+10
| | | | | | Update the check function Signed-off-by: Aadhar Agarwal <aadagarwal@microsoft.com>
* [global] Remove empty except warnings highlighted by CodeQLJake Hunsaker2024-03-195-11/+21
| | | | | | | | | | This commit is a first pass at addressing a number of the `Empty Except` warnings flagged by CodeQL. These are for try/except blocks whose except statement simply contains a `pass`, and to address these we add a log message in almost all cases. Where we don't log, there is an added comment for context as to why we're passing without further action. Signed-off-by: Jake Hunsaker <jacob.r.hunsaker@gmail.com>
* [process] ps output to collect also psr columnPavel Moravec2024-03-191-2/+2
| | | | | | | | Collect also processor ID assigned to the process (psr). Resolves: #3575 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [cleaner] Improve stripping raw MAC addressPavel Moravec2024-03-191-2/+2
| | | | | | | | | | | | | reduce_mac_match should strip all characters that cant appear in a MAC address string. Currently it forgets to strip e.g. from "mac:01:02:03:04:05" anything. We should strip at least the 'm'. Ideally whole "mac" but that would be programatically difficult to describe proper condition for that. Resolves: #3574 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [plugins] Fix Pylint and PEP8 issues - part4Ponnuvel Palaniyappan2024-03-1854-298/+301
| | | | | | | Continuation of #3530. Likewise excludes C0114, C0115, and C0209. Signed-off-by: Ponnuvel Palaniyappan <pponnuvel@gmail.com>
* [openstack_nova] Fixed the use of f-string reported by flake8Jorge Rodríguez2024-03-181-1/+1
| | | | Signed-off-by: Jorge Rodríguez <jorge.rodriguez@canonical.com>
* [openstack_nova] Added the collection of console.log from Nova instancesJorge Rodríguez2024-03-181-0/+1
| | | | | | when --all-logs is specified Signed-off-by: Jorge Rodríguez <jorge.rodriguez@canonical.com>
* [SCLPlugin] Drop SCLPlugin supportJake Hunsaker2024-03-177-137/+12
| | | | | | | | | | | | | SCL is not used in RHEL past RHEL 7, and sos has not directly supported RHEL 7 for some years now due to the switch to python3 that came along with sos-4.0. Drop SCLPlugin, as it will never be used in modern sos. Cleanup any references to it in existing plugins as well. Resolves: #3559 Signed-off-by: Jake Hunsaker <jacob.r.hunsaker@gmail.com>
* [openstack_keystone] Obfuscate OIDC client secretJose Castillo2024-03-161-2/+7
| | | | | | | | | | | | | | | | | | Obfuscate OIDC client secret inside /var/lib/config-data/puppet-generated/keystone/ etc/httpd/conf.d/10-keystone_wsgi.conf  The secret looks like this:   OIDCClientSecret "Password" And after obfuscation, it will look like this: OIDCClientSecret ********* Related: RH: RHEL-26720 Signed-off-by: Jose Castillo <jcastillo@redhat.com>
* [ceph/plugins] Add Microceph support for RGW and MDSPonnuvel Palaniyappan2024-03-164-69/+101
| | | | Signed-off-by: Ponnuvel Palaniyappan <pponnuvel@gmail.com>
* [aap_hub] Implementing AAP Automation Hub PluginLucas Benedito2024-03-131-0/+37
| | | | | | | | | | | Adding the file 'aap_hub.py' for the sos report collects the files used for troubleshooting issues at Ansible Automation Platform Automation Hub Related: RH AAP-19782 Closes: #3562 Signed-off-by: Lucas Benedito <lbenedit@redhat.com>
* [ceph] Ensure `all-logs` is enforced for Ceph pluginsAlejandro Santoyo2024-03-137-26/+106
| | | | | | | | | | | | Currently Ceph plugins do not take the `all-logs` flag into account which means that even if this flag is set compressed log files are not collected This patch fixes that. Resolves: SET-480 Signed-off-by: Alejandro Santoyo <alejandro.santoyo@canonical.com>
* [convert2rhel] Update copy spec to include * reportRodolfo Olivieri2024-03-121-1/+3
| | | | | | | | | | convert2rhel now generates a post-conversion report as well as the pre-conversion report. We want to be able to collect both reports during sosreport execution. To make sure we are not missing them (or any other future report we may introduce), the copy spec string was changed to use a `*` instead of the names of the reports. Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com>
* [pkg][debian] Add python version dependancyArif Ali2024-03-121-0/+1
| | | | | | | | | This will ensure that we have the right python version dependancy for deb packages. Resolves: SET-543 Signed-off-by: Arif Ali <arif.ali@canonical.com>
* [nginx] Implementing files exclusions from AAP for nginxLucas Benedito2024-03-121-0/+12
| | | | Signed-off-by: Lucas Benedito <lbenedit@redhat.com>
* [ceph_mon] Capture ceph health detail in plain textJose Castillo2024-03-121-0/+1
| | | | | | | | | | Currently we capture the output of 'ceph health detail' in json format only, but we need plain text output as well. Related: RH RHEL-27525 Signed-off-by: Jose Castillo <jcastillo@redhat.com>
* [tests] Add tests for cleaner's --skip-cleaning-filesPavel Moravec2024-03-111-3/+11
| | | | | | Closes: #3469 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [cleaner] Add option to skip cleaning filesPavel Moravec2024-03-1112-33/+67
| | | | | | | | | | | | | A new option --skip-cleaning-files / --skip-masking-files allows cleaner to skip cleaning files where the user is certain no sensitive information is present. The option supports globs / wildcards. Relevant: #3469 Closes: #3520 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [proxmox] Add new plugin for Proxmox Virtualization EnvironmentDrien Breton2024-03-091-0/+101
| | | | Signed-off-by: Drien Breton <drien.breton@orness.com>
* [cirrus] Run foreman tests on foreman_setup.sh changePavel Moravec2024-03-071-1/+1
| | | | | | | | | Automatically run foreman integration tests when their install script is updated. Relevant: #3555 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [tests] workaround puppet bug in foreman-installerPavel Moravec2024-03-071-0/+8
| | | | | | | | | | | A puppet regression in version 7.29.0 prevents foreman-installer to run. Let prevent installing the buggy puppet-agent-7.29.0* . Resolves: #3542 Closes: #3555 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [pacemaker] Use pep440 formatted version on comparisonPonnuvel Palaniyappan2024-03-075-32/+37
| | | | | | | | | | | | There are couple of instances (both on pacemaker) of `parse_version` being used to compare the package versions. In cases, notably on Ubuntu, where the version comform to PEP440, this fails. So we now convert those to PEP440 format before comparing. Fixes #3548. Signed-off-by: Ponnuvel Palaniyappan <pponnuvel@gmail.com>