The ICAClient package requires the 32 bit versions of libXp and openmotif. I have this class defined: class icaclient{ case $architecture { i386: { package { "ICAClient": provider => rpm, source => "$kickstart/ICAClient/RHEL5/ ICAClient-11.100-1.i386.rpm", ensure => installed, } } x86_64: { package { "libXp-32bit": provider => rpm, source => "$kickstart/ICAClient/RHEL5/ libXp-1.0.0-8.1.el5.i386.rpm", ensure => installed, } package { "openmotif-32bit": provider => rpm, source => "$kickstart/ICAClient/RHEL5/ openmotif-2.3.1-2.el5_4.1.i386.rpm", ensure => installed, require => Package["libXp-32bit"], } package { "ICAClient": provider => rpm, source => "$kickstart/ICAClient/RHEL5/ ICAClient-11.100-1.i386.rpm", ensure => installed, require => Package["openmotif-32bit", "libXp-32bit"], } } } } On the initial run of puppetd on a 64 bit system I see these lines: notice: //icaclient/Package[libXp-32bit]/ensure: created notice: //icaclient/Package[openmotif-32bit]/ensure: created notice: //icaclient/Package[ICAClient]/ensure: created Everything installed correctly and the ICAClient works. On subsequent puppetd executions I get these: err: //icaclient/Package[libXp-32bit]/ensure: change from absent to present failed: Execution of ''/bin/rpm -i --oldpackage /net/rfns1/vol/ flexsrc/kickstart/config/ICAClient/RHEL5/libXp-1.0.0-8.1.el5.i386.rpm'' returned 1: warning: /net/rfns1/vol/flexsrc/kickstart/config/ICAClient/ RHEL5/libXp-1.0.0-8.1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186 package libXp-1.0.0-8.1.el5.i386 is already installed Why is it attempting to install libXp again? Shouldn''t the ensure => installed prevent that from happening? Or does it have something to do with the fact it is a duplicate package name but with a different architecture? Lastly, does anyone have a suggestion on what to do to prevent this error? Thanks, Ed -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
On 2010-05-28 15:19, ed-rfmd wrote:> package { "libXp-32bit": > provider => rpm, > source => "$kickstart/ICAClient/RHEL5/ > libXp-1.0.0-8.1.el5.i386.rpm", > ensure => installed, > } > > package { "openmotif-32bit": > provider => rpm, > source => "$kickstart/ICAClient/RHEL5/ > openmotif-2.3.1-2.el5_4.1.i386.rpm", > ensure => installed, > require => Package["libXp-32bit"], > }> Why is it attempting to install libXp again? Shouldn''t the ensure => > installed prevent that from happening? Or does it have something to do > with the fact it is a duplicate package name but with a different > architecture?Because the package type uses the name you have specified to see if the package is already installed. The packages are not really named "libXp-32bit" and "openmotif-32bit", are they? They are more likely named "libXp.i386" and "openmotif.i386"; use that as package names, and it should work better. /Bellman -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
That took care of it . I changed the names to libXp.i386 and openmotif.i386. I was not using the package name properly, I was using it as a generic identified instead of the actual package name. Thanks again, Ed On May 28, 9:25 am, Thomas Bellman <bell...@nsc.liu.se> wrote:> On 2010-05-28 15:19, ed-rfmd wrote: > > > > > package { "libXp-32bit": > > provider => rpm, > > source => "$kickstart/ICAClient/RHEL5/ > > libXp-1.0.0-8.1.el5.i386.rpm", > > ensure => installed, > > } > > > package { "openmotif-32bit": > > provider => rpm, > > source => "$kickstart/ICAClient/RHEL5/ > > openmotif-2.3.1-2.el5_4.1.i386.rpm", > > ensure => installed, > > require => Package["libXp-32bit"], > > } > > Why is it attempting to install libXp again? Shouldn''t the ensure => > > installed prevent that from happening? Or does it have something to do > > with the fact it is a duplicate package name but with a different > > architecture? > > Because the package type uses the name you have specified to see > if the package is already installed. The packages are not really > named "libXp-32bit" and "openmotif-32bit", are they? They are > more likely named "libXp.i386" and "openmotif.i386"; use that as > package names, and it should work better. > > /Bellman-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.