Bug 2215974 - Use iproute instead of python3-ethtool
Summary: Use iproute instead of python3-ethtool
Keywords:
Status: VERIFIED
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: subscription-manager
Version: 9.3
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: 9.3
Assignee: mhorky
QA Contact: Red Hat subscription-manager QE Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-06-19 14:29 UTC by mhorky
Modified: 2023-08-04 14:05 UTC (History)
3 users (show)

Fixed In Version: subscription-manager-1.29.36-1.el9
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github candlepin subscription-manager pull 3284 0 None Merged ENT-5099: Collect network facts using 'ip' 2023-06-29 15:54:35 UTC
Red Hat Issue Tracker ENT-5099 0 None None None 2023-06-29 12:37:36 UTC
Red Hat Issue Tracker RHELPLAN-160206 0 None None None 2023-06-19 14:33:29 UTC

Description mhorky 2023-06-19 14:29:24 UTC
To get rid of tech debt and delegate some of internal logic to dedicated tool, subscription-manager replaces 'python3-ethtool' package with 'iproute' for network fact collection. This results in a change of dependencies in specfile and in new network collector.

While there may be behavioral changes (current tooling does not support network interface teaming, for example), the collected facts *should* be nearly the same.

Comment 2 John Sefler 2023-07-20 22:20:07 UTC
Pre-verification testing...
Before applying the fix for this Bugzilla...

[root@rhsm-auto93-client1 ~]# rpm -q subscription-manager
subscription-manager-1.29.35-1.el9.x86_64
[root@rhsm-auto93-client1 ~]# rpm -q subscription-manager --requires
/bin/sh
/bin/sh
/bin/sh
/bin/sh
/bin/sh
/usr/bin/python3
config(subscription-manager) = 1.29.35-1.el9
dmidecode
dnf >= 1.0.0
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.33)(64bit)
libc.so.6(GLIBC_2.34)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.8)(64bit)
libdnf-plugin-subscription-manager = 1.29.35
libglib-2.0.so.0()(64bit)
python(abi) = 3.9
python3-cloud-what = 1.29.35-1.el9
python3-dateutil
python3-dbus
python3-decorator
python3-dnf-plugins-core
python3-ethtool         <=========== NOTICE THE PRIOR REQUIRED DEPENDENCY
python3-gobject-base
python3-iniparse
python3-inotify
python3-librepo
python3-setuptools
python3-subscription-manager-rhsm = 1.29.35
python3.9dist(ethtool)
python3.9dist(iniparse)
python3.9dist(python-dateutil)
python3.9dist(setuptools)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1
rtld(GNU_HASH)
subscription-manager-rhsm-certificates
systemd
systemd
systemd
usermode
virt-what
[root@rhsm-auto93-client1 ~]# 
[root@rhsm-auto93-client1 ~]# subscription-manager facts | grep address | sort
dmi.bios.address: 0xe8000
lscpu.address_sizes: 46 bits physical, 57 bits virtual
net.interface.eth0.ipv4_address: 10.8.30.92
net.interface.eth0.ipv4_address_list: 10.8.30.92
net.interface.eth0.ipv6_address.global: 2620:52:0:800:2eab:a1f1:9233:6357
net.interface.eth0.ipv6_address.global_list: 2620:52:0:800:2eab:a1f1:9233:6357
net.interface.eth0.ipv6_address.link: fe80::a3cd:3097:1f73:f84d
net.interface.eth0.ipv6_address.link_list: fe80::a3cd:3097:1f73:f84d
net.interface.eth0.mac_address: 52:54:00:03:8e:1c
net.interface.lo.ipv4_address: 127.0.0.1
net.interface.lo.ipv4_address_list: 127.0.0.1
net.interface.lo.ipv6_address.host: ::1
net.interface.lo.ipv6_address.host_list: ::1
network.ipv4_address: 10.8.30.92
network.ipv6_address: fe80::a3cd:3097:1f73:f84d, 2620:52:0:800:2eab:a1f1:9233:6357
proc_cpuinfo.common.address_sizes: 46 bits physical, 57 bits virtual
[root@rhsm-auto93-client1 ~]# 

After applying the fix for this Bugzilla...

[root@rhsm-auto93-client1 ~]# rpm -q subscription-manager
subscription-manager-1.29.35+35.g614325532-1.git.0.160f2a4.x86_64
[root@rhsm-auto93-client1 ~]# rpm -q subscription-manager --changelog | grep 2215974
- 2215974: Collect network facts using 'ip' (mhorky)
[root@rhsm-auto93-client1 ~]# rpm -q subscription-manager --requires
/bin/sh
/bin/sh
/bin/sh
/bin/sh
/bin/sh
/usr/bin/python3
config(subscription-manager) = 1.29.35+35.g614325532-1.git.0.160f2a4
dmidecode
iproute     <============== NOTICE NEW DEPENDENCY iproute REPLACES python3-ethtool
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.33)(64bit)
libc.so.6(GLIBC_2.34)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.8)(64bit)
libdnf-plugin-subscription-manager = 1.29.35+35.g614325532
libglib-2.0.so.0()(64bit)
python(abi) = 3.9
python3-cloud-what = 1.29.35+35.g614325532-1.git.0.160f2a4
python3-dateutil
python3-dbus
python3-decorator
python3-dnf
python3-dnf-plugins-core
python3-gobject-base
python3-iniparse
python3-inotify
python3-librepo
python3-setuptools
python3-subscription-manager-rhsm = 1.29.35+35.g614325532
python3.9dist(iniparse)
python3.9dist(python-dateutil)
python3.9dist(setuptools)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1
rtld(GNU_HASH)
subscription-manager-rhsm-certificates
systemd
systemd
systemd
usermode
virt-what
[root@rhsm-auto93-client1 ~]# 
[root@rhsm-auto93-client1 ~]# subscription-manager facts | grep address | sort
dmi.bios.address: 0xe8000
lscpu.address_sizes: 46 bits physical, 57 bits virtual
net.interface.eth0.ipv4_address: 10.8.30.92
net.interface.eth0.ipv4_address_list: 10.8.30.92
net.interface.eth0.ipv6_address.global: 2620:52:0:800:2eab:a1f1:9233:6357
net.interface.eth0.ipv6_address.global_list: 2620:52:0:800:2eab:a1f1:9233:6357
net.interface.eth0.ipv6_address.link: fe80::a3cd:3097:1f73:f84d
net.interface.eth0.ipv6_address.link_list: fe80::a3cd:3097:1f73:f84d
net.interface.eth0.mac_address: 52:54:00:03:8e:1c
net.interface.lo.ipv4_address: 127.0.0.1
net.interface.lo.ipv4_address_list: 127.0.0.1
net.interface.lo.ipv6_address.host: ::1
net.interface.lo.ipv6_address.host_list: ::1
network.ipv4_address: 10.8.30.92
network.ipv6_address: 2620:52:0:800:2eab:a1f1:9233:6357, fe80::a3cd:3097:1f73:f84d
proc_cpuinfo.common.address_sizes: 46 bits physical, 57 bits virtual
[root@rhsm-auto93-client1 ~]# 


VERIFIED: The dependency on python3-ethtool has been replaced by iproute with no changes to any of the address facts.  The only minor difference occurs on the ordering of the comma delimited value for network.ipv6_address.  However, we have no preceding requirement for an expected order.


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