Bug 1725958

Summary: Incremental errata dependencies not getting copied over for RHEL 8
Product: Red Hat Satellite Reporter: Partha Aji <paji>
Component: Content ViewsAssignee: Partha Aji <paji>
Status: CLOSED ERRATA QA Contact: Lai <ltran>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.6.0CC: bherring, egolov, ltran, rraghuwa
Target Milestone: 6.7.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: tfm-rubygem-katello-3.14.0-0.4.rc2 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-04-14 13:24:51 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:
Bug Depends On: 1725957    
Bug Blocks:    

Description Partha Aji 2019-07-01 20:18:25 UTC
Problem 
Content from one repo (RHEL8 Appstream) can depend on content form another repo (RHEL8 BaseOS).

User won't be able to copy errata with all dependencies for its packages if dependencies are in different repo.

The problem was not very common before RHEL 8, because RHEL repositories always contained all the dependencies within it. Now with RHEL8 having 2 repos, the problem will be much more common.


The problem has to be fixed 2 fold. 
1) Pulp needs to provide new API that takes in multiple repos when computing the errata dependencies. (solved by -> https://bugzilla.redhat.com/show_bug.cgi?id=1725957)

2) Katello needs to make use of the API.

This BZ is for the katello work.

Comment 4 Partha Aji 2019-10-10 16:45:09 UTC
Connecting redmine issue https://projects.theforeman.org/issues/28037 from this bug

Comment 5 Bryan Kearney 2019-10-29 22:03:15 UTC
Moving this bug to POST for triage into Satellite 6 since the upstream issue https://projects.theforeman.org/issues/28037 has been resolved.

Comment 6 Lai 2020-02-26 21:24:27 UTC
Steps to test:

1. Enabled RHEL8/RHEL8.1 BaseOS and AppStream repo and sync them.
2. Create a CV and add both repos from step 1 to CV.
3. Publish without depsolving (version 1)
4. Create a filter: Include module stream: Ant (1.10)
5. Create a filter: Exclude all packages ("*") on all version.
6. Publish without depsolving (Version 2)
7. Publish with depsolving. (Version 3)
8. Provision a rhel8 box.
9. run "dnf module install ant"
10. Verify the module stream deps against the most recently published version of the CV's Module Stream list.

3.
Expected Result:
Total number of Packages, Errata, and Module Streams of both appstream and baseOS should be present under "Content" column of table.

Actual Result:
Total number of Packages, Errata, and Module Streams of both appstream and baseOS are present under "Content" column of table.

Note: These numbers changes between RHEL8 and RHEL8.1 depending on which one you choose but the appstream count and baseOS count should be the combine total for version 1.0 published.

6.
Expected Result:
Total number of Packages, Errata, and Module Streams of both appstream and baseOS should be present under "Content" column of table and less than version 1.0 published (I had 2 packages and 1 module streams).
Drilling into version 1.0 -> Module Streams should yield only "ant" module.

Actual Result:
Total number of Packages, Errata, and Module Streams of both appstream and baseOS are present under "Content" column of table and is less than version 1.0 published (I had 2 packages and 1 module streams).
Drilling into version 1.0 -> Module Streams yield only "ant" module.

7.
Expected Result:
Total number of Packages, Errata, and Module Streams of both appstream and baseOS should be present under "Content" column of table and more than version 2.0 published.
Drilling into version 1.0 -> Module Streams should yield only "ant" and "javapackages-runtime" module.

Actual Result:
Total number of Packages, Errata, and Module Streams of both appstream and baseOS are present under "Content" column of table and is more than version 2.0 published.
Drilling into version 1.0 -> Module Streams yield only "ant" and "jaavapackages-runtime" module.

Note: That you're actual result may be different from mine.

10.
Expected Result:
"Enabling module streams" section should only have "ant" and "javapackages-runtime."

Actual Result:
"Enabling module streams" section only have "ant" and "javapackages-runtime."

Comment 7 Lai 2020-02-26 22:12:19 UTC
Verified on 6.7.0_13

Comment 10 errata-xmlrpc 2020-04-14 13:24:51 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2020:1454