Bug 2127277 - Satellite should not enable EOL maven module
Summary: Satellite should not enable EOL maven module
Keywords:
Status: ASSIGNED
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Installer
Version: 6.12.0
Hardware: All
OS: Linux
high
high
Target Milestone: Unspecified
Assignee: Eric Helms
QA Contact: Lukas Pramuk
URL:
Whiteboard:
: 2226946 (view as bug list)
Depends On: 2230604 2226946
Blocks: 2070059
TreeView+ depends on / blocked
 
Reported: 2022-09-15 20:00 UTC by Adam Ibrahim
Modified: 2023-08-10 00:26 UTC (History)
22 users (show)

Fixed In Version: foreman-installer-3.7.0.2-1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-09-23 19:52:23 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker SAT-19022 0 None None None 2023-07-18 13:14:04 UTC

Description Adam Ibrahim 2022-09-15 20:00:01 UTC
Description of problem: A fresh installation of satellite 6.11 enables a maven module that has reached EOL. 


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


How reproducible:


Steps to Reproduce:
1. Install Fresh satellite 6.11 
2. check enabled maven module 


# yum module list maven
Updating Subscription Management repositories.
Last metadata expiration check: 0:13:27 ago on Thu 15 Sep 2022 03:00:08 PM EDT.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                Stream                   Profiles                Summary                                                            
maven               3.5 [d][e]               common [d]              Java project management and project comprehension tool             
maven               3.6                      common [d]              Java project management and project comprehension tool 

From appstream lifecycle:

maven 3.6	May 2020	Apr 2023	8.2.0
maven 3.5	May 2019	May 2022	8.0.0

https://access.redhat.com/support/policy/updates/rhel-app-streams-life-cycle

Comment 1 Eric Helms 2022-09-23 19:52:23 UTC
This is not a Satellite bug and needs to be filed against RHEL as we are using tomcatjss from AppStream which has this requirement:


Installing:
 tomcatjss                                                             noarch                                                  7.7.1-1.module_el8.6.0+1038+e795ee4b                                                      appstream                                                   39 k
Installing dependencies:
 apache-commons-lang3                                                  noarch                                                  3.7-3.module_el8.0.0+39+6a9b6e22                                                          appstream                                                  483 k
 glassfish-jaxb-api                                                    noarch                                                  2.2.12-8.module_el8.4.0+595+e59c9af2                                                      appstream                                                  102 k
 jss                                                                   x86_64                                                  4.9.4-1.module_el8.7.0+1172+b9bb9c8d                                                      appstream                                                  1.2 M
 slf4j                                                                 noarch                                                  1.7.25-4.module_el8.6.0+1030+8d97e896                                                     appstream                                                   77 k
 slf4j-jdk14                                                           noarch                                                  1.7.25-4.module_el8.4.0+595+e59c9af2                                                      appstream                                                   25 k
Enabling module streams:
 maven                                                                                                                         3.5

Comment 2 Kyle Walker 2022-10-31 18:13:22 UTC
Reopening,

If you don't define a module stream as your dependency, you get the default. That is a decision to be made on the part of the content consumer. In the above, if you are consuming tomcatjss, you need to define a modular dependency on to achieve a non-EOL version.

Per the Satellite Module definition, you would need:

  dependencies:
  - buildrequires:
      nodejs:
      - '12'
      platform:
      - el8
      postgresql:
      - '12'
      ruby:
      - '2.7'
    requires:
      pki-core: []
      platform:
      - el8
      postgresql:
      - '12'
      ruby:
      - '2.7'
+      maven:
+      - '3.6'

Comment 17 Lukas Pramuk 2023-07-27 12:17:42 UTC
FailedQA.

@Satellite 6.14.0 Snap9

Satellite module now enables maven:3.8 module. 
However, slf4j rpm gets still installed from maven:3.5 module while other rpms from maven:3.8 module.

This situation makes any dnf upgrade (satellite upgrade) to fail.

# yum --disableplugin foreman-protector update 
Updating Subscription Management repositories.
Satellite 6.14 RHEL8                                                                                                                                                      185 kB/s | 3.0 kB     00:00    
Satellite Maintenance 6.14 RHEL8                                                                                                                                          434 kB/s | 2.6 kB     00:00    
Error: 
 Problem: package slf4j-jdk14-1.7.25-4.module+el8+2468+c564cec5.noarch requires mvn(org.slf4j:slf4j-api) = 1.7.25, but none of the providers can be installed
  - cannot install both slf4j-1.7.32-4.module+el8.8.0+18044+0a924b8f.noarch and slf4j-1.7.25-4.module+el8+2468+c564cec5.noarch
  - cannot install both slf4j-1.7.32-4.module+el8.8.0+18044+0a924b8f.noarch and slf4j-1.7.25-4.module+el8.0.0+3248+9d514f3b.noarch
  - cannot install both slf4j-1.7.32-4.module+el8.8.0+18044+0a924b8f.noarch and slf4j-1.7.25-4.module+el8.0.0+3892+c903d3f0.noarch
  - cannot install both slf4j-1.7.32-4.module+el8.8.0+18044+0a924b8f.noarch and slf4j-1.7.25-4.module+el8.1.0+3366+6dfb954c.noarch
  - cannot install the best update candidate for package slf4j-jdk14-1.7.25-4.module+el8+2468+c564cec5.noarch
  - cannot install the best update candidate for package slf4j-1.7.25-4.module+el8+2468+c564cec5.noarch
  - package slf4j-1.7.25-4.module+el8+2452+b359bfcd.noarch is filtered out by modular filtering
(try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)


Old slf4j is pulled in by jss rpm `Requires: slf4j-jdk14` as only 3.5 module provides it.
Until this issue is resolved in jss rpm we cannot enable any newer maven module.

Comment 18 Eric Helms 2023-07-27 13:15:48 UTC
*** Bug 2226946 has been marked as a duplicate of this bug. ***

Comment 22 Eric Helms 2023-08-09 17:53:30 UTC
I have opened a RHEL bug to look at the issues with upgrading between the module streams -- https://bugzilla.redhat.com/show_bug.cgi?id=2230604


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