Bug 1056286

Summary: [RFE] Synchronize cloned errata packages with original erratum
Product: Red Hat Satellite 5 Reporter: Stephen Herr <sherr>
Component: ServerAssignee: Michael Mráka <mmraka>
Status: CLOSED DEFERRED QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: medium Docs Contact:
Priority: medium    
Version: 560CC: cperry, nerawat, xdmoon
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-11-13 16:25:36 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: 905259    
Bug Blocks: 260381, 924189    

Description Stephen Herr 2014-01-21 21:31:15 UTC
Description of problem:
It is possible to get unexpected results from cloning channels if you have only recently satellite-synced the channel for a new architecture.

The problem is that if you clone a channel (and therefore clone all the errata in it), the cloned errata contain only the packages that Satellite knows about at the current time. If you later satellite-sync a new architecture of that channel, the Red Hat errata will get updated with the packages for the new arch but existing clones will not. If you then try to clone the new arch's channel, the cloned errata will be associated with the new cloned channel but the packages are not present in the cloned errata, so will not be correctly included in the new channel.

The issue is complicated by the fact that it's entirely possible to intentionally remove packages from cloned errata. If so, the customer may not *want* us to automatically update the package list of cloned errata whenever the Red Hat errata is updated. Because of this we have traditionally not done anything to mess with the customer's cloned errata, but this leads to unexpected / undesired behavior from channel cloning more often than not.

What we need is some way to synchronize the package list for cloned errata with their original counterparts, and it needs to be configurable so that the customer can choose not to let it happens if they so desire. There already exists one such method. The Channels -> Manage Software Channels -> <channel> -> Errata -> Sync page allows the user to synchronize all errata in that channel with their original counterparts, solving this problem for a single channel. However it would be nice to have a Whole Satellite and Automatic way of making this happen, and I believe it should be turned on by default since that is what the vast majority of customers would expect. Specifically I propose a new Taskomatic task to keep them in sync, and a config option in rhn.conf that allows the user to disable it if she wishes.

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

How reproducible:
Always

Steps to Reproduce:
1. satellite-sync a channel for one arch, say rhel-s390x-server-6
2. clone the current state of the channel (all errata)
3. satellite-sync the same channel for a different arch, rhel-x86_64-server-6
4. clone the current state of the second channel (all errata)

Actual results:
The channel will be cloned but not have many packages it should have

Expected results:
The number of packages in the cloned channel should be the same as the original

Additional info:
This arose out of the discussion on bz 905259.

Comment 1 Clifford Perry 2014-11-13 16:25:36 UTC
This isn't in the 5.7 release and very unlikely to get into future 5.7 releases. As such, closing out as deferred. 

Cliff