Good afternoon, all.

I've got what I think is a fairly standard methodology:  a set of release 
channels, that are cloned into local production channels in successive stages 
(dev -> qa -> production.)  This has been working fairly well for quite some 
time, with the exception of errata population.  I know I don't have a large 
installation, less than 300 client servers, and 273 distinct channels 
(including a sandbox set.)

Unfortunately, I have internal requirements to keep the channels fairly 
complete, i.e. not just the latest packages available during a channel cloning 
or rolling operation.  This does mean that spacewalk-clone-by-date really 
doesn't appear to work effectively.  And, in general, when we elect to roll 
content from one stage to the next, it's a complete "this point in time," all 
packages and errata that are currently there.  I'd like to be able to perform 
this content roll programmatically, rather than working through the web GUI 
with it's multitude of selections, clicks and confirmations.

Programmatically, I can get a list of packages from the clone_original channel 
without issue, and determine which packages are missing.  Calling 
channel.software.addPackages is pretty simple.

Errata.... That's turning out to be another story.  As all channels in use by 
client systems here are cloned channels, all errata should also be cloned as 
opposed to original, correct?  At least, from the standpoint of the original 
channel set creation through a cloning operation, all of the errata come in 
with a CL- advisory name.  Much like the package lists, I can get a list of 
errata from the clone_original, compare it against the current channel during a 
content roll operation, and determine which errata need to be clone.  It would 
seem that calling errata.clone into the target channel would be appropriate.  
That's turning out to not be the case.  I have a rather serious issue where 
errata cover multiple major distribution releases.  The original errata get 
populated properly into the appropriate release channels, and only the proper 
packages for that that particular distribution release show up in that channel. 
 However, if I clone that errata into a channel cloned from that release 
channel, all packages get copied into that clone channel.  For example, an 
errata notice might cover an EL6 and an EL7 (derived) release.   The 
release/source channels will only contain the .el6 packages.  However, the 
dev-* clone channels after a channel roll operation now contain the .el7 
packages referenced in that errata notice.

Is errata.clone behaving as intended (I'm fairly sure it is?)  Is there some 
other RPC API function call I should be using?

Jeff Kalchik
Systems Engineering
Land O'Lakes
This message may contain confidential material from Land O'Lakes, Inc. (or its 
subsidiary) for the sole use of the intended recipient(s) and may not be 
reviewed, disclosed, copied, distributed or used by anyone other than the 
intended recipient(s). If you are not the intended recipient, please contact 
the sender by reply email and delete all copies of this message.
_______________________________________________
Spacewalk-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/spacewalk-list

Reply via email to