Why does installing leapp in a Satellite 6.11 running on RHEL 7 fail with package dependency issues?
Environment
- Red Hat Satellite 6.11 running on RHEL 7.
- In-place upgrade of the Satellite from RHEL 7 to RHEL 8.
Issue
-
The Satellite 6.11 Upgrading and Updating Red Hat Satellite guide instructs in its Chapter 4. Upgrading Satellite or Capsule to Red Hat Enterprise Linux 8 In-Place Using Leapp to enable repository
rhel-7-server-extras-rpmsand to installleapprunning command "satellite-maintain packages install leapp leapp-repository". -
Why does the installation of
leappfail with unsatisfied package dependencies?
# satellite-maintain packages install leapp leapp-repository
Running install packages in unlocked session
================================================================================
Confirm installer run is allowed:
WARNING: This script runs satellite-installer after the yum execution
to ensure the Satellite is in a consistent state.
As a result some of your services may be restarted.
Do you want to proceed?, [y(yes), q(quit)] y
[OK]
--------------------------------------------------------------------------------
Unlock packages: [OK]
--------------------------------------------------------------------------------
Install packages: Loaded plugins: product-id, search-disabled-repos, subscription-manager
Package leapp-repository is obsoleted by leapp-upgrade-el7toel8, trying to install leapp-upgrade-el7toel8-0.18.0-3.el7_9.noarch instead
Resolving Dependencies
[...]
Error: Package: libdnf-0.22.5-2.el7_9.x86_64 (rhel-7-server-extras-rpms)
Requires: libsolvext.so.0()(64bit)
Available: libsolv-0.6.11-1.el7.x86_64 (rhel-7-server-rpms)
libsolvext.so.0()(64bit)
Available: libsolv-0.6.20-5.el7.x86_64 (rhel-7-server-rpms)
libsolvext.so.0()(64bit)
Available: libsolv-0.6.26-1.el7.x86_64 (rhel-7-server-rpms)
libsolvext.so.0()(64bit)
Available: libsolv-0.6.26-2.el7.x86_64 (rhel-7-server-rpms)
libsolvext.so.0()(64bit)
Available: libsolv-0.6.34-2.el7.x86_64 (rhel-7-server-rpms)
libsolvext.so.0()(64bit)
Available: libsolv-0.6.34-4.el7.x86_64 (rhel-7-server-rpms)
libsolvext.so.0()(64bit)
Installed: libsolv-0.7.22-1.el7pc.x86_64 (@rhel-7-server-satellite-6.11-rpms)
~libsolvext.so.1()(64bit)
[...]
**********************************************************************
Dependency resolving failed due to missing dependencies.
Some repositories on your system are disabled, but yum can enable them
and search for missing dependencies. This will require downloading
metadata for disabled repositories and may take some time and traffic.
**********************************************************************
[...]
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
[WARNING]
Failed executing yum --disableplugin=foreman-protector install leapp leapp-repository, exit status 1
--------------------------------------------------------------------------------
[...]
Scenario [install packages in unlocked session] failed.
The following steps ended up in warning state:
[packages-install]
The steps in warning state itself might not mean there is an error,
but it should be reviewed to ensure the behavior is expected
Resolution
Please ensure that all repositories required by Satellite 6.11 on RHEL 7 as well as the Extras repository required by leapp are enabled.
The following command will enable all required repositories including RHEL 7 Extras:
# subscription-manager repos --enable=rhel-7-server-rpms \
--enable=rhel-server-rhscl-7-rpms \
--enable=rhel-7-server-ansible-2.9-rpms \
--enable=rhel-7-server-satellite-6.11-rpms \
--enable=rhel-7-server-satellite-maintenance-6.11-rpms \
--enable=rhel-7-server-extras-rpms
For more KB articles/solutions related to Red Hat Satellite 6.x LEAPP Issues, please refer to the Consolidated Troubleshooting Article for Red Hat Satellite 6.x LEAPP Issues
Root Cause
Some or all of the repositories required by Red Hat Satellite 6.11 on RHEL 7 were not enabled.
The list of repositories required by Red Hat Satellite 6.11 on RHEL 7 is available in the Red Hat Satellite 6.11 Installing Satellite Server in a Connected Network Environment guide.
Additionally the RHEL 7 Extras repository (label rhel-7-server-extras-rpms) is required to install leapp.
Diagnostic Steps
Inspecting the list of enabled repositories reveals that some or all of the repositories required by Red Hat Satellite 6.11 on RHEL 7 were not enabled:
# yum -C repolist
Loaded plugins: foreman-protector, product-id, search-disabled-repos,
: subscription-manager
WARNING: Excluding 4326 packages due to foreman-protector.
Use foreman-maintain packages install/update <package>
to safely install packages without restrictions.
Use foreman-maintain upgrade run for full upgrade.
repo id repo name status
rhel-7-server-extras-rpms/x86_64 Red Hat Enterprise Linux 7 Server - 2+1459
rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server (R 201+33624
repolist: 203
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.