Bug #23672

CV publish can publish puppet before yum, causing provisioning issues

Added by Chris Duryee about 3 years ago. Updated about 3 years ago.

Target version:
Bugzilla link:
Fixed in Releases:
Found in Releases:


Let's say you have an application called MyApp, and you have a puppet module called "myapp" that says "install MyApp rpm version 15". The yum repo with the MyApp rpm and the puppet module that says "install myapp 15" are in the same CV.

Now it is time to go to myapp 16. You update the myapp yum repo with the new RPM and update the puppet module to say "install MyApp rpm version 16". You then publish a new CV version and promote it.

Puppet modules update pretty quickly, but yum repos can take longer. During this time, it's possible for new systems to get the latest version of the myapp puppet module, attempt to download myapp 16 from the yum repo, and fail.

Puppet code can reference rpms but not vice versa, so we probably want the puppet publishes to happen after the yum publishes. That way, any yum deps should already be in place when the updated puppet module lands.

Associated revisions

Revision 9ae7dbf5 (diff)
Added by Chris Duryee about 3 years ago

Fixes #23672 - publish puppet repos last

Previously, CV repos would be sync/published in any order. This could
result in a situation where if your CV had a yum repo and a puppet
repo, your puppet repo could get published first while the yum repo
was still being synced. If the puppet repo had a module that referred
to an RPM in the yum repo that was being published, this could result
in puppet errors.

This commit re-orders CV publish so puppet repos are done last.
Additionally, capsule syncs are broken apart so the non-puppet repos
are synced in one concurrent block, and then once that's complete,
puppet repos are synced in a second concurrent block.


#1 Updated by Jonathon Turel about 3 years ago

  • Legacy Backlogs Release (now unused) set to 338

#2 Updated by The Foreman Bot about 3 years ago

  • Status changed from New to Ready For Testing
  • Pull request added

#3 Updated by Chris Duryee about 3 years ago

  • % Done changed from 0 to 100
  • Status changed from Ready For Testing to Closed

Also available in: Atom PDF