ok, I found it (partially). It is caused by $stdout.reopen(tempfile) in puppet's execute function in utils.rb
It's further caused by rb_scan_args in ruby's class.c - did not investigate why exactly ... Here is how to reproduce in irb: require 'tempfile' t = Tempfile.new("puppet") begin $stderr.reopen(t) rescue => detail puts detail puts detail.backtrace end [pxmgt1] ruby > ruby test.rb wrong number of arguments (2 for 1) test.rb:5:in `respond_to?' test.rb:5:in `reopen' test.rb:5 This problem seem only to exists on RHEL4 / Ruby ruby 1.8.7 (2008-05-31 patchlevel 0) [i686-linux] The way I fixed it just by replacing the following two lines in utils.rb (puppet): #$stdout.reopen(output_file) #$stderr.reopen(error_file) $stdout.reopen(output_file.path,"w") $stderr.reopen(error_file.path,"w") Regards, Thomas On Mar 25, 9:13 am, Thomas Bikeev <thomas.bik...@gmail.com> wrote: > Hi Avi, > > you are right but it does not really matter, the trouble already > begins with > > debug: Puppet::Type::Package::ProviderRpm: Executing '/bin/rpm -- > version' > wrong number of arguments (2 for 1) > > Thomas > > On Mar 24, 9:49 pm, Avi Miller <avi.mil...@gmail.com> wrote: > > > Hi, > > > On Wed, Mar 25, 2009 at 3:49 AM, Thomas Bikeev <thomas.bik...@gmail.com> > > wrote: > > > echo 'package {"apache2": ensure => installed, noop => true, }' | > > > There is no apache2 package in Red Hat Enterprise Linux. You need to > > install the "httpd" package instead. > > > cYa, > > Avi --~--~---------~--~----~------------~-------~--~----~ 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+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---