From 3cb522d3a682365dae5d8745056f4671bdd5e41b Mon Sep 17 00:00:00 2001 From: Michal Reznik Date: Fri, 3 May 2024 13:47:49 +0200 Subject: [PATCH] Add additional KB resources add aditional KB resources in a form of ExternalLink or error details as requested by support --- .../libraries/checkbootavailspace.py | 4 ++++ .../common/actors/checkcifs/libraries/checkcifs.py | 5 +++++ .../libraries/checkdddd.py | 10 ++++++++++ .../common/actors/checkmemory/libraries/checkmemory.py | 5 +++++ repos/system_upgrade/common/actors/checknfs/actor.py | 4 ++++ .../common/actors/checkrootsymlinks/actor.py | 5 +++++ .../libraries/checkyumpluginsenabled.py | 4 ++++ .../libraries/checkinstalledkernels.py | 5 +++++ .../missinggpgkeysinhibitor/libraries/missinggpgkey.py | 5 ++++- .../common/actors/opensshpermitrootlogincheck/actor.py | 5 +++++ .../common/actors/persistentnetnamesdisable/actor.py | 5 +++++ .../targetuserspacecreator/libraries/userspacegen.py | 9 +++++++++ .../actors/verifydialogs/libraries/verifydialogs.py | 5 +++++ repos/system_upgrade/common/libraries/rhsm.py | 3 ++- .../system_upgrade/el7toel8/actors/checkbtrfs/actor.py | 4 ++++ .../actors/checkhacluster/libraries/checkhacluster.py | 4 ++++ .../el7toel8/actors/checkremovedpammodules/actor.py | 4 ++++ .../libraries/checkinstalleddevelkernels.py | 4 ++++ .../libraries/satellite_upgrade_check.py | 5 +++++ .../actors/checkifcfg/libraries/checkifcfg_ifcfg.py | 5 +++++ .../actors/firewalldcheckallowzonedrifting/actor.py | 5 +++++ 21 files changed, 103 insertions(+), 2 deletions(-) diff --git a/repos/system_upgrade/common/actors/checkbootavailspace/libraries/checkbootavailspace.py b/repos/system_upgrade/common/actors/checkbootavailspace/libraries/checkbootavailspace.py index 7380f335f1..0cc4cf7d60 100644 --- a/repos/system_upgrade/common/actors/checkbootavailspace/libraries/checkbootavailspace.py +++ b/repos/system_upgrade/common/actors/checkbootavailspace/libraries/checkbootavailspace.py @@ -32,6 +32,10 @@ def inhibit_upgrade(avail_bytes): '/boot needs additional {0} MiB to be able to accommodate the upgrade initramfs and new kernel.'.format( additional_mib_needed) ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/298263', + title='Why does kernel cannot be upgraded due to insufficient space in /boot ?' + ), reporting.Severity(reporting.Severity.HIGH), reporting.Groups([reporting.Groups.FILESYSTEM]), reporting.Groups([reporting.Groups.INHIBITOR]), diff --git a/repos/system_upgrade/common/actors/checkcifs/libraries/checkcifs.py b/repos/system_upgrade/common/actors/checkcifs/libraries/checkcifs.py index b3ae146fa0..fc26ea7002 100644 --- a/repos/system_upgrade/common/actors/checkcifs/libraries/checkcifs.py +++ b/repos/system_upgrade/common/actors/checkcifs/libraries/checkcifs.py @@ -18,6 +18,11 @@ def checkcifs(storage_info): reporting.Groups.NETWORK ]), reporting.Remediation(hint='Comment out CIFS entries to proceed with the upgrade.'), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/6964304', + title='Leapp upgrade failed with error ' + '"Inhibitor: Use of CIFS detected. Upgrade cannot proceed"' + ), reporting.Groups([reporting.Groups.INHIBITOR]), reporting.RelatedResource('file', '/etc/fstab') ]) diff --git a/repos/system_upgrade/common/actors/checkdetecteddevicesanddrivers/libraries/checkdddd.py b/repos/system_upgrade/common/actors/checkdetecteddevicesanddrivers/libraries/checkdddd.py index df431c0e63..defe3f9a3f 100644 --- a/repos/system_upgrade/common/actors/checkdetecteddevicesanddrivers/libraries/checkdddd.py +++ b/repos/system_upgrade/common/actors/checkdetecteddevicesanddrivers/libraries/checkdddd.py @@ -35,6 +35,16 @@ def create_inhibitors(inhibiting_entries): source=get_source_major_version(), ) ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/6971716', + title='Leapp preupgrade getting "Inhibitor: Detected loaded kernel drivers which have been ' + 'removed in RHEL 8. Upgrade cannot proceed." ' + ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/5436131', + title='Leapp upgrade fail with error "Inhibitor: Detected loaded kernel drivers which ' + 'have been removed in RHEL 8. Upgrade cannot proceed."' + ), reporting.Audience('sysadmin'), reporting.Groups([reporting.Groups.KERNEL, reporting.Groups.DRIVERS]), reporting.Severity(reporting.Severity.HIGH), diff --git a/repos/system_upgrade/common/actors/checkmemory/libraries/checkmemory.py b/repos/system_upgrade/common/actors/checkmemory/libraries/checkmemory.py index 2501227339..808c966266 100644 --- a/repos/system_upgrade/common/actors/checkmemory/libraries/checkmemory.py +++ b/repos/system_upgrade/common/actors/checkmemory/libraries/checkmemory.py @@ -42,6 +42,11 @@ def process(): reporting.Summary(summary), reporting.Severity(reporting.Severity.HIGH), reporting.Groups([reporting.Groups.SANITY, reporting.Groups.INHIBITOR]), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7014179', + title='Leapp upgrade fail with error"Minimum memory requirements ' + 'for RHEL 8 are not met"Upgrade cannot proceed' + ), reporting.ExternalLink( url='https://access.redhat.com/articles/rhel-limits', title='Red Hat Enterprise Linux Technology Capabilities and Limits' diff --git a/repos/system_upgrade/common/actors/checknfs/actor.py b/repos/system_upgrade/common/actors/checknfs/actor.py index 208c5dd9b5..94c5e60673 100644 --- a/repos/system_upgrade/common/actors/checknfs/actor.py +++ b/repos/system_upgrade/common/actors/checknfs/actor.py @@ -61,6 +61,10 @@ def _is_nfs(a_type): reporting.Groups.NETWORK ]), reporting.Remediation(hint='Disable NFS temporarily for the upgrade if possible.'), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/6964006', + title='Why does leapp upgrade fail on detecting NFS during upgrade?' + ), reporting.Groups([reporting.Groups.INHIBITOR]), ] + fstab_related_resource ) diff --git a/repos/system_upgrade/common/actors/checkrootsymlinks/actor.py b/repos/system_upgrade/common/actors/checkrootsymlinks/actor.py index 2769b7c13f..c35272b297 100644 --- a/repos/system_upgrade/common/actors/checkrootsymlinks/actor.py +++ b/repos/system_upgrade/common/actors/checkrootsymlinks/actor.py @@ -37,6 +37,11 @@ def process(self): 'point to absolute paths.\n' 'Please change these links to relative ones.' ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/6989732', + title='leapp upgrade stops with Inhibitor "Upgrade requires links in root ' + 'directory to be relative"' + ), reporting.Severity(reporting.Severity.HIGH), reporting.Groups([reporting.Groups.INHIBITOR])] diff --git a/repos/system_upgrade/common/actors/checkyumpluginsenabled/libraries/checkyumpluginsenabled.py b/repos/system_upgrade/common/actors/checkyumpluginsenabled/libraries/checkyumpluginsenabled.py index 48f38d0a98..5522af9c25 100644 --- a/repos/system_upgrade/common/actors/checkyumpluginsenabled/libraries/checkyumpluginsenabled.py +++ b/repos/system_upgrade/common/actors/checkyumpluginsenabled/libraries/checkyumpluginsenabled.py @@ -63,6 +63,10 @@ def check_required_yum_plugins_enabled(pkg_manager_info): # Provide all commands as one due to problems with satellites commands=[['bash', '-c', '"{0}"'.format('; '.join(remediation_commands))]] ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7028063', + title='Why is Leapp preupgrade generating "Inhibitor: Required YUM plugins are not being loaded."' + ), reporting.RelatedResource('file', pkg_manager_config_path), reporting.RelatedResource('file', subscription_manager_plugin_conf), reporting.RelatedResource('file', product_id_plugin_conf), diff --git a/repos/system_upgrade/common/actors/kernel/checkinstalledkernels/libraries/checkinstalledkernels.py b/repos/system_upgrade/common/actors/kernel/checkinstalledkernels/libraries/checkinstalledkernels.py index 95882d290e..4573354b33 100644 --- a/repos/system_upgrade/common/actors/kernel/checkinstalledkernels/libraries/checkinstalledkernels.py +++ b/repos/system_upgrade/common/actors/kernel/checkinstalledkernels/libraries/checkinstalledkernels.py @@ -103,5 +103,10 @@ def process(): reporting.Groups([reporting.Groups.KERNEL, reporting.Groups.BOOT]), reporting.Groups([reporting.Groups.INHIBITOR]), reporting.Remediation(hint=remediation), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7014134', + title='Leapp upgrade fail with error "Inhibitor:Newest installed kernel ' + 'not in use" Upgrade cannot proceed' + ), reporting.RelatedResource('package', 'kernel') ]) diff --git a/repos/system_upgrade/common/actors/missinggpgkeysinhibitor/libraries/missinggpgkey.py b/repos/system_upgrade/common/actors/missinggpgkeysinhibitor/libraries/missinggpgkey.py index 9a806ca297..4b93e741b7 100644 --- a/repos/system_upgrade/common/actors/missinggpgkeysinhibitor/libraries/missinggpgkey.py +++ b/repos/system_upgrade/common/actors/missinggpgkeysinhibitor/libraries/missinggpgkey.py @@ -65,7 +65,10 @@ def _consume_data(): used_target_repos = next(api.consume(UsedTargetRepositories)).repos except StopIteration: raise StopActorExecutionError( - 'Could not check for valid GPG keys', details={'details': 'No UsedTargetRepositories facts'} + 'Could not check for valid GPG keys', details={ + 'details': 'No UsedTargetRepositories facts', + 'link': 'https://access.redhat.com/solutions/7061850' + } ) try: diff --git a/repos/system_upgrade/common/actors/opensshpermitrootlogincheck/actor.py b/repos/system_upgrade/common/actors/opensshpermitrootlogincheck/actor.py index 2ac4ec8f24..7a49622f4f 100644 --- a/repos/system_upgrade/common/actors/opensshpermitrootlogincheck/actor.py +++ b/repos/system_upgrade/common/actors/opensshpermitrootlogincheck/actor.py @@ -135,6 +135,11 @@ def process8to9(self, config): 'sshd_config next to the "PermitRootLogin yes" directive ' 'to prevent rpm replacing it during the upgrade.' ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7003083', + title='Why Leapp Preupgrade for RHEL 8 to 9 getting ' + '"Possible problems with remote login using root account" ?' + ), reporting.Groups([reporting.Groups.INHIBITOR]) ] + COMMON_RESOURCES) # If the configuration is modified and contains any directive allowing diff --git a/repos/system_upgrade/common/actors/persistentnetnamesdisable/actor.py b/repos/system_upgrade/common/actors/persistentnetnamesdisable/actor.py index 0e13c13907..1f7f1413c7 100644 --- a/repos/system_upgrade/common/actors/persistentnetnamesdisable/actor.py +++ b/repos/system_upgrade/common/actors/persistentnetnamesdisable/actor.py @@ -50,6 +50,11 @@ def process(self): title='How to perform an in-place upgrade to RHEL 8 when using kernel NIC names on RHEL 7', url='https://access.redhat.com/solutions/4067471' ), + reporting.ExternalLink( + title='RHEL 8 to RHEL 9: inplace upgrade fails at ' + '"Network configuration for unsupported device types detected"', + url='https://access.redhat.com/solutions/7009239' + ), reporting.Remediation( hint='Rename all ethX network interfaces following the attached KB solution article.' ), diff --git a/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py b/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py index d60bc75f19..dc93c9a03b 100644 --- a/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py +++ b/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py @@ -828,6 +828,10 @@ def _get_rhsm_available_repoids(context): ' to set up Satellite and the system properly.' ).format(target_major_version)), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/5392811', + title='RHEL 7 to RHEL 8 LEAPP Upgrade Failing When Using Red Hat Satellite' + ), reporting.ExternalLink( # https://red.ht/preparing-for-upgrade-to-rhel8 # https://red.ht/preparing-for-upgrade-to-rhel9 @@ -1007,6 +1011,11 @@ def gather_target_repositories(context, indata): # https://red.ht/preparing-for-upgrade-to-rhel10 url='https://red.ht/preparing-for-upgrade-to-rhel{}'.format(target_major_version), title='Preparing for the upgrade'), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7001181', + title='LEAPP Upgrade Failing from RHEL 7 to RHEL 8 when system is ' + 'registered to custromer portal' + ), reporting.RelatedResource("file", "/etc/leapp/files/repomap.json"), reporting.RelatedResource("file", "/etc/yum.repos.d/") ]) diff --git a/repos/system_upgrade/common/actors/verifydialogs/libraries/verifydialogs.py b/repos/system_upgrade/common/actors/verifydialogs/libraries/verifydialogs.py index a6dbe6eb92..a79079b15b 100644 --- a/repos/system_upgrade/common/actors/verifydialogs/libraries/verifydialogs.py +++ b/repos/system_upgrade/common/actors/verifydialogs/libraries/verifydialogs.py @@ -20,5 +20,10 @@ def check_dialogs(inhibit_if_no_userchoice=True): reporting.Summary(summary.format('\n'.join(sections))), reporting.Groups([reporting.Groups.INHIBITOR] if inhibit_if_no_userchoice else []), reporting.Remediation(hint=dialogs_remediation, commands=cmd_remediation), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7035321', + title='Leapp upgrade fail with error "Inhibitor: Missing required answers ' + 'in the answer file."' + ), reporting.Key(dialog.key)] reporting.create_report(report_data + dialog_resources) diff --git a/repos/system_upgrade/common/libraries/rhsm.py b/repos/system_upgrade/common/libraries/rhsm.py index eb388829e2..74f6aeb1f3 100644 --- a/repos/system_upgrade/common/libraries/rhsm.py +++ b/repos/system_upgrade/common/libraries/rhsm.py @@ -85,7 +85,8 @@ def _handle_rhsm_exceptions(hint=None): details={ 'details': str(e), 'stderr': e.stderr, - 'hint': hint or _def_hint + 'hint': hint or _def_hint, + 'link': 'https://access.redhat.com/solutions/6138372' } ) diff --git a/repos/system_upgrade/el7toel8/actors/checkbtrfs/actor.py b/repos/system_upgrade/el7toel8/actors/checkbtrfs/actor.py index c1b07f8dfd..a384895741 100644 --- a/repos/system_upgrade/el7toel8/actors/checkbtrfs/actor.py +++ b/repos/system_upgrade/el7toel8/actors/checkbtrfs/actor.py @@ -41,6 +41,10 @@ def process(self): title='How do I prevent a kernel module from loading automatically?', url='https://access.redhat.com/solutions/41278' ), + reporting.ExternalLink( + title='Leapp upgrade fail with error "Inhibitor: Btrfs has been removed from RHEL8"', + url='https://access.redhat.com/solutions/7020130' + ), reporting.Severity(reporting.Severity.HIGH), reporting.Groups([reporting.Groups.INHIBITOR]), reporting.Groups([reporting.Groups.FILESYSTEM]), diff --git a/repos/system_upgrade/el7toel8/actors/checkhacluster/libraries/checkhacluster.py b/repos/system_upgrade/el7toel8/actors/checkhacluster/libraries/checkhacluster.py index 870cf8a96e..115867d256 100644 --- a/repos/system_upgrade/el7toel8/actors/checkhacluster/libraries/checkhacluster.py +++ b/repos/system_upgrade/el7toel8/actors/checkhacluster/libraries/checkhacluster.py @@ -25,6 +25,10 @@ def inhibit(node_type): " to a RHEL High Availability or Resilient Storage Cluster" ), ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7049940', + title='Leapp upgrade from RHEL 7 to RHEL 8 fails for pacemaker cluster' + ), reporting.Remediation( hint=( "Destroy the existing HA cluster" diff --git a/repos/system_upgrade/el7toel8/actors/checkremovedpammodules/actor.py b/repos/system_upgrade/el7toel8/actors/checkremovedpammodules/actor.py index 503f6149c7..d2e9239843 100644 --- a/repos/system_upgrade/el7toel8/actors/checkremovedpammodules/actor.py +++ b/repos/system_upgrade/el7toel8/actors/checkremovedpammodules/actor.py @@ -59,6 +59,10 @@ def process(self): 'please remove the pam module(s) from all the files ' 'under /etc/pam.d/.'.format(', '.join(replacements)) ), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7004774', + title='Leapp preupgrade fails with: The pam_tally2 pam module(s) no longer available' + ), reporting.Severity(reporting.Severity.HIGH), reporting.Groups([reporting.Groups.INHIBITOR]), ] + [reporting.RelatedResource('pam', r) for r in replacements | found_modules]) diff --git a/repos/system_upgrade/el7toel8/actors/kernel/checkinstalleddevelkernels/checkinstalleddevelkernels/libraries/checkinstalleddevelkernels.py b/repos/system_upgrade/el7toel8/actors/kernel/checkinstalleddevelkernels/checkinstalleddevelkernels/libraries/checkinstalleddevelkernels.py index 0ff4489f97..fa49092cb1 100644 --- a/repos/system_upgrade/el7toel8/actors/kernel/checkinstalleddevelkernels/checkinstalleddevelkernels/libraries/checkinstalleddevelkernels.py +++ b/repos/system_upgrade/el7toel8/actors/kernel/checkinstalleddevelkernels/checkinstalleddevelkernels/libraries/checkinstalleddevelkernels.py @@ -38,5 +38,9 @@ def process(): reporting.Groups([reporting.Groups.KERNEL]), reporting.Groups([reporting.Groups.INHIBITOR]), reporting.Remediation(hint=hint, commands=commands), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/4723671', + title='leapp upgrade fails on kernel-devel packages' + ), reporting.RelatedResource('package', 'kernel-devel') ]) diff --git a/repos/system_upgrade/el7toel8/actors/satellite_upgrade_check/libraries/satellite_upgrade_check.py b/repos/system_upgrade/el7toel8/actors/satellite_upgrade_check/libraries/satellite_upgrade_check.py index 6954dd5001..82148ef3e0 100644 --- a/repos/system_upgrade/el7toel8/actors/satellite_upgrade_check/libraries/satellite_upgrade_check.py +++ b/repos/system_upgrade/el7toel8/actors/satellite_upgrade_check/libraries/satellite_upgrade_check.py @@ -53,6 +53,11 @@ def satellite_upgrade_check(facts): reporting.create_report([ reporting.Title(title), reporting.Summary(summary), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/6794671', + title='Leapp preupgrade of Red Hat Satellite 6 fails on ' + 'Old PostgreSQL data found in /var/lib/pgsql/data' + ), reporting.Severity(severity), reporting.Groups([]), reporting.Groups(flags) diff --git a/repos/system_upgrade/el8toel9/actors/checkifcfg/libraries/checkifcfg_ifcfg.py b/repos/system_upgrade/el8toel9/actors/checkifcfg/libraries/checkifcfg_ifcfg.py index 946841df1e..ed666350cf 100644 --- a/repos/system_upgrade/el8toel9/actors/checkifcfg/libraries/checkifcfg_ifcfg.py +++ b/repos/system_upgrade/el8toel9/actors/checkifcfg/libraries/checkifcfg_ifcfg.py @@ -88,6 +88,11 @@ def process(): reporting.Title(title), reporting.Summary(summary), reporting.Remediation(hint=remediation), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/7009239', + title='RHEL 8 to RHEL 9: inplace upgrade fails at ' + '"Network configuration for unsupported device types detected"' + ), reporting.Severity(reporting.Severity.HIGH), reporting.Groups([reporting.Groups.NETWORK, reporting.Groups.SERVICES]), reporting.Groups([reporting.Groups.INHIBITOR]), diff --git a/repos/system_upgrade/el8toel9/actors/firewalldcheckallowzonedrifting/actor.py b/repos/system_upgrade/el8toel9/actors/firewalldcheckallowzonedrifting/actor.py index b7eb580652..0002f6aa46 100644 --- a/repos/system_upgrade/el8toel9/actors/firewalldcheckallowzonedrifting/actor.py +++ b/repos/system_upgrade/el8toel9/actors/firewalldcheckallowzonedrifting/actor.py @@ -44,6 +44,11 @@ def process(self): reporting.ExternalLink( url='https://access.redhat.com/articles/4855631', title='Changes in firewalld related to Zone Drifting'), + reporting.ExternalLink( + url='https://access.redhat.com/solutions/6969130', + title='Leapp Preupgrade check fails with error - ' + '"Inhibitor: Firewalld Configuration AllowZoneDrifting Is Unsupported".' + ), reporting.Remediation( hint='Set AllowZoneDrifting=no in /etc/firewalld/firewalld.conf', commands=[['sed', '-i', 's/^AllowZoneDrifting=.*/AllowZoneDrifting=no/',