Ran into an issue with a node that has multiple architectures of a package installed (libcurl.i686 and libcurl.x86_64.)
When trying to use puppet to handle the upgrade of the package, it failed because the package resource handled the updates one at a time. This appears to be a limitation of yum as the packages must be the exact same revision.
This can be circumvented by having both package names in the same yum command:
{noformat} yum install libcurl.x86_64 libcurl.i686 {noformat} I was able to circumvent this with the following class definition:
{code:puppet} class update_libcurl { exec { 'yum_update_libcurl': command => 'yum install libcurl.x86_64 libcurl.i686 -y', path => '/usr/bin/', } } {code} ~* Please see Zendesk Support tab for further comments and attachments.~
This is a duplicate of PUP-1061. It's not currently possible to install multiple packages at once using the package type. As a result puppet can't install packages that have circular dependencies like this.