Bug 1317978

Summary: Handle 'use latest' correctly when removing puppet modules from CVs
Product: Red Hat Satellite Reporter: Chris Duryee <cduryee>
Component: WebUIAssignee: David Davis <daviddavis>
Status: CLOSED ERRATA QA Contact: Peter Ondrejka <pondrejk>
Severity: high Docs Contact:
Priority: medium    
Version: 6.2.0CC: bbuckingham, bkearney, cduryee, chrobert, daviddavis, dnagarat, mmccune, pcfe, rajgupta, riehecky, sghai, sreber, sthirugn, tomckay, xdmoon
Target Milestone: UnspecifiedKeywords: Reopened, Triaged
Target Release: Unused   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1271000 Environment:
Last Closed: 2018-02-21 16:54:17 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: 1271000    
Bug Blocks:    

Comment 1 Chris Duryee 2016-03-15 16:37:55 UTC
Simon,

IMO it should be OK to delete the puppet module from the product, it should not automatically remove from CVs and propogate the deletion. Ideally, if the user deleted the module by mistake, they can download it from the CV and then re-upload into the custom product.

Other types of content such as RPM work in a similar fashion. If the product is altered, it does not automatically alter the CV.

Does the above sound reasonable?

Comment 7 Brad Buckingham 2016-07-24 16:14:30 UTC
Created redmine issue http://projects.theforeman.org/issues/15817 from this bug

Comment 8 Bryan Kearney 2016-07-24 18:13:23 UTC
Upstream bug component is WebUI

Comment 9 David Davis 2016-08-18 16:18:44 UTC
When I removed the puppet module, on the puppet module tab under content views, I see the puppet module with "Unable to determine" for the version. When I try to then publish the content view, I get "undefined method `repositories' for nil:NilClass". A couple solutions:

1. Leave the cv puppet module alone but fix publishing.
2. Hide the cv puppet module if the puppet module doesn't exist and fix publishing.
3. Remove the cv puppet module when the puppet module is removed. This should automatically fix publishing.

Solution 3 is a bit challenging because the cv puppet module does not point directly to the puppet module so we'd have to check to see if there are any other puppet modules with the same name when we remove the puppet module and then delete any associated cv puppet modules.

Comment 10 David Davis 2016-08-18 16:31:55 UTC
After talking with Chris who worked on the original BZ, we decided on option 1 because it's consistent with other repo types (e.g. removing a package doesn't affect the content view or its filters). Moreover option 1 doesn't preclude implementing option 2 which has the same end result as option 3.

Comment 11 David Davis 2016-08-18 16:35:07 UTC
Steps to reproduce:

1. Create a product with puppet module
2. Create a content view, add the puppet module, publish
3. Remove the puppet module from the system (Products > Repositories > Repo A > Remove Puppet Module)
4. Confirm that the puppet module is still attached to the content view (Content View > Puppet Modules)
5. Publish the content view again. It should succeed if the bug is fixed. The content view will have no puppet modules though.
6. Optionally, re-add the puppet module to the product (can be a different version though) and republish the content view. It should now have the puppet module in the content view version.

Comment 12 Bryan Kearney 2016-08-25 18:14:11 UTC
Moving to POST since upstream bug http://projects.theforeman.org/issues/15817 has been closed

Comment 15 Peter Ondrejka 2016-10-20 09:02:59 UTC
Verified according to steps in comment 11, on Satellite 6.3 snap 5, CV with removed puppet module can now be successfully published.

Comment 16 Evgeni Golov 2017-09-05 12:13:41 UTC
*** Bug 1487860 has been marked as a duplicate of this bug. ***

Comment 18 Satellite Program 2018-02-21 16:54:17 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-2018:0336