Bug 2048805

Summary: Unclear error message when disabling last repo of a product that is in a sync plan
Product: Red Hat Satellite Reporter: Pablo Hess <phess>
Component: Sync PlansAssignee: Samir Jha <sajha>
Status: CLOSED ERRATA QA Contact: Cole Higgins <chiggins>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.10.2CC: chiggins, iballou, rlavi, sajha
Target Milestone: 6.15.0Keywords: Triaged, UserExperience
Target Release: Unused   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-04-23 17:10:59 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 Pablo Hess 2022-01-31 21:37:13 UTC
Description of problem:
When disabling Red Hat repositories on Satellite, Katello will try to remove the product altogether if the given repository is the last member of its respective product to be enabled on Satellite.

If the product is in a sync plan, Katello will also try to remove the product from the sync plan.

However, if the sync plan contains also other products that are no longer on Satellite, then an error message pops up while disabling the repository, stating it failed to _add_ a product to Satellite. It's really confusing.


Version-Release number of selected component (if applicable):
satellite-6.10.2-1.el7sat.noarch
foreman-2.5.2.18-3.el7sat.noarch
katello-4.1.1-3.el7sat.noarch


How reproducible:
100% of the time given the preconditions are met.

Steps to Reproduce:
1. Have a Satellite with multiple Red Hat products enabled and a sync plan including all those products.

2. Disable all repos of one of those products but cause some failure to remove the product from the sync plan.

3. Disable all repos of another one of those products.

Actual results:
When disabling the last repo of the second product -- which would cause an update to the sync plan -- an error will pop up saying something like:

  Validation failed: Can not add product Red Hat Enterprise Linux Server - Extended Life Cycle Support because it is disabled.

...and the ForemanTasks task enters paused-error state.


Expected results:
If an error is happening due to a sync plan operation, the pop up message should specify that the issue is happening at that level, not the "disable repository" level.
I'd also say the repository should _not_ fail to be disabled from Satellite if its respective product can be removed from the sync plan. Maybe the action could finish with a Stopped-Warning state/result instead of ending in Paused-Error.


Additional info:
The fact that the error message says it failed because it was unable to _add_ a _product_ when we're trying to _disable_ a _repository_. This is absolutely confusing.

Comment 2 Samir Jha 2023-08-21 18:44:21 UTC
Created redmine issue https://projects.theforeman.org/issues/36690 from this bug

Comment 3 Bryan Kearney 2023-09-08 20:01:54 UTC
Moving this bug to POST for triage into Satellite since the upstream issue https://projects.theforeman.org/issues/36690 has been resolved.

Comment 8 errata-xmlrpc 2024-04-23 17:10:59 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 (Important: Satellite 6.15.0 release), 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-2024:2010