Bug 2223902

Summary: Dependency error due to modular filtering even with "Default Organization View" on host registered to Satellite.
Product: Red Hat Satellite Reporter: Akshay Kapse <akapse>
Component: RepositoriesAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED WORKSFORME QA Contact: Satellite QE Team <sat-qe-bz-list>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.14.0CC: iballou, jlenz, rlavi
Target Milestone: 6.14.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-07-31 19:17:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Akshay Kapse 2023-07-19 08:42:59 UTC
Description of problem:
- Unable to install katello-host-tools-tracer as dependency packages gets filtered out by modular filtering.


Version-Release number of selected component (if applicable):
Satellite 6.14

How reproducible:
100%


Steps to Reproduce:
1. Register host and keep it in "Default Organization View":
# subscription-manager identity
system identity: 5cd017b9-2c55-4d45-9814-9e2751953432
name: hostname
org name: RedHat
org ID: RedHat
environment name: Library


2. Check enabled repositories:
# yum repolist
Updating Subscription Management repositories.
repo id                                                                        repo name
rhel-8-for-x86_64-appstream-rpms                                               Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
rhel-8-for-x86_64-baseos-rpms                                                  Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
satellite-client-6-for-rhel-8-x86_64-rpms                                      Red Hat Satellite Client 6 for RHEL 8 x86_64 (RPMs)

3. Try to install katello-host-tools-tracer package:
#  yum install katello-host-tools-tracer
Updating Subscription Management repositories.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)                                                                                      73 kB/s | 4.5 kB     00:00    
Red Hat Satellite Client 6 for RHEL 8 x86_64 (RPMs)                                                                                           62 kB/s | 3.8 kB     00:00    
Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)                                                                                         73 kB/s | 4.1 kB     00:00    
Error: 
 Problem: package katello-host-tools-tracer-4.2.3-3.el8sat.noarch requires python3-tracer, but none of the providers can be installed
  - package python3-tracer-0.7.5-2.el8.noarch requires python3-psutil, but none of the providers can be installed
  - cannot install the best candidate for the job
  - package python3-psutil-5.4.3-10.el8.x86_64 is filtered out by modular filtering
  - package python3-psutil-5.4.3-11.el8.x86_64 is filtered out by modular filtering
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)


4) Verify package count on Satellite (repository recently synced):
# hammer repository info --id 12
Id:                 12
Name:               Red Hat Satellite Client 6 for RHEL 8 x86_64 RPMs
Label:              Red_Hat_Satellite_Client_6_for_RHEL_8_x86_64_RPMs
Description:        
Organization:       RedHat
Red Hat Repository: yes
Content Type:       yum
Content Label:      satellite-client-6-for-rhel-8-x86_64-rpms
Mirroring Policy:   Complete Mirroring
Url:                https://cdn.redhat.com/content/dist/layered/rhel8/x86_64/sat-client/6/os
Publish Via HTTP:   no
Published At:       https://Satellite-hostname/pulp/content/RedHat/Library/content/dist/layered/rhel8/x86_64/sat-client/6/os/
Relative Path:      RedHat/Library/content/dist/layered/rhel8/x86_64/sat-client/6/os
Download Policy:    on_demand
HTTP Proxy:         
    HTTP Proxy Policy: global_default_http_proxy
Product:            
    Id:   22
    Name: Red Hat Enterprise Linux for x86_64
GPG Key:            

Sync:               
    Status:         Success
    Last Sync Date: 2 minutes
Created:            2023/07/17 15:55:33
Updated:            2023/07/17 15:55:33
Content Counts:     
    Packages:       21


5) Observe package difference on host:
Repo-id            : satellite-client-6-for-rhel-8-x86_64-rpms
Repo-name          : Red Hat Satellite Client 6 for RHEL 8 x86_64 (RPMs)
Repo-pkgs          : 21
Repo-available-pkgs: 19
Repo-size          : 37 M
Repo-baseurl       : https://Satellite-hostname/pulp/content/RedHat/Library/content/dist/layered/rhel8/x86_64/sat-client/6/os
Repo-filename      : /etc/yum.repos.d/redhat.repo


Actual results:
Dependency error due to modular filtering even without any filters.

Expected results:
Able to install package with no modular filtering when no filter applied atleast for 'katello-host-tools-tracer' which is one of the important package to get tracer information about host.

Comment 1 Ian Ballou 2023-07-21 14:50:31 UTC
We should reproduce this on a development box to be sure, but it might end up being a packaging issue instead.

Unless this was also tested via direct connection to the CDN?

Comment 2 Ian Ballou 2023-07-21 21:35:36 UTC
Akshay, I wasn't able to reproduce this with a RHEL 8 client and Satellite 6.14.  Can you share your reproducing RHEL 8 host's dnf module list --enabled ? I'm guessing that some enabled module stream truly was filtering out the dependency you needed.

Here's mine, for example:

[root@rhel8 ~]# dnf module list --enabled
Updating Subscription Management repositories.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)                                                                                                       73 kB/s | 4.5 kB     00:00    
Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)                                                                                                          70 kB/s | 4.1 kB     00:00    
Red Hat Satellite Client 6 for RHEL 8 x86_64 (RPMs)                                                                                                            60 kB/s | 3.8 kB     00:00    
@modulefailsafe
Name                 Stream        Profiles Summary                                                                                                                                           
satellite-utils      el8 [e]                Satellite Utils module                                                                                                                            

Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                 Stream        Profiles Summary                                                                                                                                           
container-tools      rhel8 [d][e]  common [ Most recent (rolling) versions of podman, buildah, skopeo, runc, conmon, runc, conmon, CRIU, Udica, etc as well as dependencies such as container-
                                   d]       selinux built and tested together, and updated as frequently as every 12 weeks.
javapackages-runtime 201801 [d][e] common [ Basic runtime utilities to support Java applications                                                                                              
                                   d]       
nodejs               14 [e]        common [ Javascript runtime                                                                                                                                
                                   d], deve 
                                   lopment, 
                                    minimal 
                                   , s2i    
perl                 5.26 [d][e]   common [ Practical Extraction and Report Language                                                                                                          
                                   d], mini 
                                   mal      
perl-IO-Socket-SSL   2.066 [d][e]  common [ Perl library for transparent TLS                                                                                                                  
                                   d]       
perl-libwww-perl     6.34 [d][e]   common [ A Perl interface to the World-Wide Web                                                                                                            
                                   d]       
postgresql           12 [e]        client,  PostgreSQL server and client module                                                                                                               
                                   server [ 
                                   d]       
python36             3.6 [d][e]    build, c Python programming language, version 3.6                                                                                                          
                                   ommon [d 
                                   ]        
python39             3.9 [d][e]    build, c Python programming language, version 3.9                                                                                                          
                                   ommon [d 
                                   ]        
ruby                 2.7 [e]       common [ An interpreter of object-oriented scripting language                                                                                              
                                   d]       
virt                 rhel [d][e]   common [ Virtualization module                                                                                                                             
                                   d]       

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Comment 3 Akshay Kapse 2023-07-24 00:28:56 UTC
Hello Ian,

From my RHEL8 host:

# dnf module list --enabled
Updating Subscription Management repositories.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)                                                                                      70 kB/s | 4.5 kB     00:00    
Red Hat Satellite Client 6 for RHEL 8 x86_64 (RPMs)                                                                                           52 kB/s | 3.8 kB     00:00    
Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)                                                                                         63 kB/s | 4.1 kB     00:00    
@modulefailsafe
Name                 Stream        Profiles Summary                                                                                                                          
foreman              el8 [e]       installe Foreman module                                                                                                                   
                                   r        
satellite            el8 [e]                Satellite module                                                                                                                 

Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                 Stream        Profiles Summary                                                                                                                          
ant                  1.10 [d][e]   common [ Java build tool                                                                                                                  
                                   d]       
container-tools      rhel8 [d][e]  common [ Most recent (rolling) versions of podman, buildah, skopeo, runc, conmon, runc, conmon, CRIU, Udica, etc as well as dependencies s
                                   d]       uch as container-selinux built and tested together, and updated as frequently as every 12 weeks.
javapackages-runtime 201801 [d][e] common [ Basic runtime utilities to support Java applications                                                                             
                                   d]       
maven                3.5 [d][e]    common [ Java project management and project comprehension tool                                                                           
                                   d]       
nodejs               14 [e]        common [ Javascript runtime                                                                                                               
                                   d], deve 
                                   lopment, 
                                    minimal 
                                   , s2i    
perl                 5.26 [d][e]   common [ Practical Extraction and Report Language                                                                                         
                                   d], mini 
                                   mal      
perl-IO-Socket-SSL   2.066 [d][e]  common [ Perl library for transparent TLS                                                                                                 
                                   d]       
perl-libwww-perl     6.34 [d][e]   common [ A Perl interface to the World-Wide Web                                                                                           
                                   d]       
pki-core             10.6 [e]               PKI Core module for PKI 10.6 or later                                                                                            
pki-deps             10.6 [e]               PKI Dependencies module for PKI 10.6 or later                                                                                    
postgresql           12 [e]        client,  PostgreSQL server and client module                                                                                              
                                   server [ 
                                   d]       
python36             3.6 [d][e]    build, c Python programming language, version 3.6                                                                                         
                                   ommon [d 
                                   ]        
python38             3.8 [d][e]    build, c Python programming language, version 3.8                                                                                         
                                   ommon [d 
                                   ]        
ruby                 2.7 [e]       common [ An interpreter of object-oriented scripting language                                                                             
                                   d]       
virt                 rhel [d][e]   common [ Virtualization module                                                                                                            
                                   d]       

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Comment 4 Ian Ballou 2023-07-31 19:17:37 UTC
The error from yum here is coming from the RHEL client rather than the Satellite. The "modular filtering" it mentions is not in reference to content view filters in Satellite, but the module streams enabled on your machine itself. Some module stream was disallowing python3-psutil.

Since I am able to install Tracer using the regular RHEL 8 repositories sourced from a Satellite instance, I'm closing this BZ out.