Issue #2662 has been updated by R.I. Pienaar aka Volcane.
I agree, arch => would be best. If we say for yum we need name.arch and for debian probably we'd need some other kludgy naming convention on the package name to achieve the same and ditto for other operating systems. Adding arch => solves it elegantly and the providers can do the right thing with the information for their OS, no need to try and come up with Regexes etc. ---------------------------------------- Bug #2662: Yum package arch and version ensuring failing http://projects.reductivelabs.com/issues/2662 Author: David Ward Status: Needs more information Priority: Normal Assigned to: David Lutterkort Category: package Target version: Rowlf Affected version: 0.24.7 Keywords: yum provider version arch ensure Branch: After lots of trial and error I found a bug in our current Puppet version Having a package line like so: package { "firefox.x86_64": ensure => "3.0.12-1.el5.centos", require => Package["xulrunner.x86_64"] } Would fail with debug output: *_ debug: //Node[om012274.drd.int]/workstation/workstation_centos53/mozillasuite53/Package[firefox.x86_64]: Changing ensure debug: //Node[om012274.drd.int]/workstation/workstation_centos53/mozillasuite53/Package[firefox.x86_64]: 1 change(s) debug: Package[firefox.x86_64](provider=yum): Ensuring => 3.0.12-1.el5.centos debug: Puppet::Type::Package::ProviderYum: Executing '/usr/bin/yum -d 0 -e 0 -y install firefox.x86_64-3.0.12-1.el5.centos' debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm -q firefox.x86_64 --nosignature --nodigest --qf %{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH} ' err: //Node[om012274.drd.int]/workstation/workstation_centos53/mozillasuite53/Package[firefox.x86_64]/ensure: change from absent to 3.0.12-1.el5.centos failed: Could not update: Could not find package firefox.x86_64 at /etc/puppet/manifests/CentOS.pp:149_* It didn't matter if I listed ver-release or just ver, same sort of error; it appends the version-[release] to the package name and arch. Which obviously fails as yum packages must be referred to like so: name name.arch name-ver name-ver-rel name-ver-rel.arch name-epoch:ver-rel.arch epoch:name-ver-rel.arch So if I omitted the arch and changed the line to: package { "firefox": ensure => "3.0.12-1.el5.centos", require => Package["xulrunner.x86_64"] } We would have more success with the 64bit version but it would try and bring the 32bit Firefox version too along with its dependencies. Not what I wanted. *_debug: Package[firefox](provider=yum): Ensuring => 3.0.12-1.el5.centos.x86_64 debug: Puppet::Type::Package::ProviderYum: Executing '/usr/bin/yum -d 0 -e 0 -y install firefox-3.0.12-1.el5.centos.x86_64' debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm -q firefox --nosignature --nodigest --qf %{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH} ' err: //Node[om012274.drd.int]/workstation/workstation_centos53/mozillasuite53/Package[firefox]/ensure: change from 3.0.12-1.el5.centos to 3.0.12-1.el5.centos.x86_64 failed: Could not update: Failed to update to version 3.0.12-1.el5.centos.x86_64, got version 3.0.12-1.el5.centos instead at /etc/puppet/manifests/CentOS.pp:149_* So chatting on IRC and more trial and error I found this is the only way to get it to work: package { "firefox-3.0.12-1.el5.centos.x86_64": ensure => "present", require => Package["xulrunner.x86_64"] } So this side-steps puppets version management though. This may be fixed in a newer version. I haven't tried yet. -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://reductivelabs.com/redmine/my/account --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/puppet-bugs?hl=en -~----------~----~----~----~------~----~------~--~---
