Bug 1412200 - Upgrade of util-linux breaks dependency of spacewalk-dobby
Summary: Upgrade of util-linux breaks dependency of spacewalk-dobby
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Spacewalk
Classification: Community
Component: Installation
Version: 2.6
Hardware: Unspecified
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Michael Mráka
QA Contact: Red Hat Satellite QA List
URL:
Whiteboard:
Depends On:
Blocks: space210
TreeView+ depends on / blocked
 
Reported: 2017-01-11 14:11 UTC by bernhard.lichtinger
Modified: 2020-03-19 12:16 UTC (History)
2 users (show)

Fixed In Version: spacewalk-web-2.10.1-1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-03-19 12:16:29 UTC
Embargoed:


Attachments (Terms of Use)

Description bernhard.lichtinger 2017-01-11 14:11:41 UTC
Description of problem:
With RHEL/CentOS 7.3 util-linux will be upgraded from util-linux-2.23.2-26.el7_2.3.x86_64 to util-linux-2.23.2-33.el7.x86_64. But this breaks the dependency of spacewalk-dobby.

Version-Release number of selected component (if applicable):
util-linux-2.23.2-26.el7_2.3.x86_64
util-linux-2.23.2-33.el7.x86_64
spacewalk-dobby-2.6.6-1.el7.noarch

How reproducible:
Everytime I run "yum upgrade"

Steps to Reproduce:
1. run "yum upgrade" on EL 7.2 to get EL 7.3

Actual results:
--> Processing Dependency: /sbin/runuser for package: spacewalk-dobby-2.6.6-1.el7.noarch
--> Finished Dependency Resolution
Error: Package: spacewalk-dobby-2.6.6-1.el7.noarch (spacewalk)
           Requires: /sbin/runuser
           Removing: util-linux-2.23.2-26.el7_2.3.x86_64 (@updates)
               Not found
           Updated By: util-linux-2.23.2-33.el7.x86_64 (base)
               Not found

Expected results:
yum upgrade without conflicts.

Additional info:
The old version has the binary runuser in  /sbin/runuser and in /usr/sbin/runuser. The new version only in /usr/sbin/runuser.
But spacewalk-dobby wants a /sbin/runuser.

Comment 1 bernhard.lichtinger 2017-01-11 16:20:44 UTC
I made a mistake, /sbin/runuser is there with both versions of util-linux.

And I found a solution for the dependency problem:

First update only spacewalk-dobby:
yum update spacewalk-dobby

Then update the rest:
yum update

Comment 2 Matt Heller 2018-01-29 18:54:18 UTC
I hit this same problem but the solution of first updating spacewalk-dobby by itself did not work for me. 

[packages versions spacewalk-dobby.noarch 2.7.6-1.el7 and util-linux.x86_64 2.23.2-43.el7_4.2 in my case]

It seems that the real fix is to either 
 a) change spacewalk-dobby's rpm .spec file to require /usr/sbin/runuser rather than /sbin/runuser (an aside: it looks like the rpm software in RHEL/CentOS 7 is not new enough to support a boolean OR in the "Requires:" field.)
 b) add /sbin/runuser to the "Provides:" section of until-linux's rpm .spec file to declare that it does in fact provide /sbin/runuser via a symbolic link

The workaround that did work for me is to create and install a compatibility shim package:

[root@ ~]# cat runuser-location-compat-dummy.spec
Name:           runuser-location-compat-dummy
Version:        1.0.0
Release:        1%{?dist}
Summary:        Compatibility shim, provides /sbin/runuser 
Group:          dummy
License:        GPL
Requires:       /usr/sbin/runuser
Provides:       /sbin/runuser

%description
Compatibility shim, the util-linux package provides the runuser
command but at /usr/sbin/runuser and the rpm .spec does not
explicitly say it also provides /sbin/runuser via symlinking.
Some packages (spacewalk-dobby) depend on "/sbin/runuser"

%files
[root@ ~]# rpmbuild -bb runuser-location-compat-dummy.spec    ^C
[root@ ~]# yum localinstall /root/rpmbuild/RPMS/x86_64/runuser-location-compat-dummy-1.0.0-1.el7.centos.x86_64.rpm
[root@ ~]# yum upgrade

Comment 3 Michael Mráka 2019-07-04 13:18:56 UTC
Fixed in spacewalk git by
commit 04bcd01867600415fe75f8e5c87343b81712b664
    1412200 - corrected sbin path on RHEL7

Comment 4 Michael Mráka 2020-03-19 12:16:29 UTC
Spacewalk 2.10 has been released.
https://github.com/spacewalkproject/spacewalk/wiki/ReleaseNotes210


Note You need to log in before you can comment on or make changes to this bug.