On Tuesday, April 19, 2016 at 11:07:07 AM UTC-5, J.T. Conklin wrote: > > Rob Nelson <rnel...@gmail.com <javascript:>> writes: > > Silly question, but what package manager doesn't let you upgrade those > > two packages independently but also doesn't update the dependent > > packages at the same time? > > We have this problem on CentOS machines using the yum provider. The logs > reported something to the effect of openssl.x86_64 couldn't be updated > to version N+1 as that conflicted with openssl.i686 version N. I wish > I had saved the logs at the time so I could share the exact text with > you all. >
Yes, yum can be configured so that it forces co-installed 32-bit and 64-bit versions of the same package to have the same epoch:version-release, and that option ('protected_multilib') is enabled by default. You could consider disabling it in your yum.conf, which, of course, Puppet could help you do. That does not override general conflict detection, however, which could still be in play, nor normal dependency resolution. And, really, having mismatched library versions seems a little dubious to me, but perhaps allowing it as a transitory state would make for smoother integration with Puppet. It is conceivable that you would benefit from setting yum's 'multilib_policy' option to 'all' to automatically install all available architectures of each package, instead of, by default, only the one that best matches the machine architecture. The former was the default configuration in EL5, whereas the latter became the default in EL6. I don't think that will directly address your current problem, but it, too, might make for smoother integration. As an ongoing concern, if you have multiple architectures of the same package installed on a given system, then yum commands that give the package name but no arch will affect all packages of that name. Thus, updating just 'openssl' will update all installed arches of that package, whereas updating (or installing) 'openssl.x86_64' is specific to that arch of the package. And that's where you're running into trouble. Puppet's package providers manage a single package at a time (as it appears to them). In your case, then, even though you're managing both openssl.x86_64 and openssl.i686, Puppet attempts to perform a separate install / update for each. The separate installs work, but separate updates do not. You need to update both arches in the same yum run (supposing that protected_multilib is enabled), and the only way to do that in Puppet is to leave the arch off the package name. John -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/39e43216-c6da-481e-af56-58b31f1cd7b1%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.