Issue #15575 has been updated by Derek Higgins.
Currently getting a similar error using the puppetlabs-nova modules on Fedora
17, see details below
[root@f17 modules]# git clone
git://github.com/puppetlabs/puppetlabs-nova.git nova
[root@f17 modules]# rpm -qa | grep -i -e ruby-1 -e puppet
ruby-1.9.3.194-16.fc17.x86_64
puppet-2.7.18-1.fc17.noarch
[root@f17 modules]# cat /root/t.pp
class {'nova':}
nova_config { 'api_paste_config': value => '/etc/nova/api-paste.ini'; }
[root@f17 modules]# puppet apply /root/t.pp --trace --debug --verbose
/usr/share/rubygems/rubygems/custom_require.rb:36:in `require': iconv will
be deprecated in the future, use String#encode instead.
info: Loading facts in
/etc/puppet/modules/stdlib/lib/facter/puppet_vardir.rb
info: Loading facts in /etc/puppet/modules/stdlib/lib/facter/root_home.rb
debug: importing '/etc/puppet/modules/nova/manifests/init.pp' in
environment production
warning: You cannot collect exported resources without storeconfigs being
set; the collection will be ignored on line 142 in file
/etc/puppet/modules/nova/manifests/init.pp
warning: You cannot collect exported resources without storeconfigs being
set; the collection will be ignored on line 152 in file
/etc/puppet/modules/nova/manifests/init.pp
warning: You cannot collect exported resources without storeconfigs being
set; the collection will be ignored on line 168 in file
/etc/puppet/modules/nova/manifests/init.pp
debug: Automatically imported nova from nova into production
debug: importing '/etc/puppet/modules/nova/manifests/params.pp' in
environment production
debug: Automatically imported nova::params from nova/params into production
debug: Puppet::Type::Package::ProviderRpm: Executing '/bin/rpm --version'
debug: Puppet::Type::Package::ProviderUrpmi: Executing '/bin/rpm -ql rpm'
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm --version'
debug: Puppet::Type::Package::ProviderAptrpm: Executing '/bin/rpm -ql rpm'
debug: importing '/etc/puppet/modules/nova/manifests/utilities.pp' in
environment production
debug: Automatically imported nova::utilities from nova/utilities into
production
debug: Failed to load library 'ldap' for feature 'ldap'
/usr/share/ruby/vendor_ruby/puppet/parser/collector.rb:35:in `block in
evaluate'
/usr/share/ruby/vendor_ruby/puppet/parser/resource.rb:143:in `merge'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:45:in `add_override'
/usr/share/ruby/vendor_ruby/puppet/parser/collector.rb:50:in `block in
evaluate'
/usr/share/ruby/vendor_ruby/puppet/parser/collector.rb:40:in `each'
/usr/share/ruby/vendor_ruby/puppet/parser/collector.rb:40:in `evaluate'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:240:in `block (2
levels) in evaluate_collections'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:239:in `each'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:239:in `block in
evaluate_collections'
/usr/share/ruby/vendor_ruby/puppet/util/errors.rb:35:in `exceptwrap'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:235:in
`evaluate_collections'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:266:in `block in
evaluate_generators'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:262:in `loop'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:262:in
`evaluate_generators'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:105:in `compile'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:24:in `compile'
/usr/share/ruby/vendor_ruby/puppet/indirector/catalog/compiler.rb:77:in
`block in compile'
/usr/share/ruby/vendor_ruby/puppet/util.rb:165:in `benchmark'
/usr/share/ruby/vendor_ruby/puppet/indirector/catalog/compiler.rb:75:in
`compile'
/usr/share/ruby/vendor_ruby/puppet/indirector/catalog/compiler.rb:35:in
`find'
/usr/share/ruby/vendor_ruby/puppet/indirector/indirection.rb:196:in `find'
/usr/share/ruby/vendor_ruby/puppet/application/apply.rb:218:in `main'
/usr/share/ruby/vendor_ruby/puppet/application/apply.rb:149:in `run_command'
/usr/share/ruby/vendor_ruby/puppet/application.rb:309:in `block (2 levels)
in run'
/usr/share/ruby/vendor_ruby/puppet/application.rb:416:in `hook'
/usr/share/ruby/vendor_ruby/puppet/application.rb:309:in `block in run'
/usr/share/ruby/vendor_ruby/puppet/application.rb:407:in `exit_on_fail'
/usr/share/ruby/vendor_ruby/puppet/application.rb:309:in `run'
/usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:69:in `execute'
/bin/puppet:4:in `<main>'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:27:in `rescue in
compile'
/usr/share/ruby/vendor_ruby/puppet/parser/compiler.rb:20:in `compile'
/usr/share/ruby/vendor_ruby/puppet/indirector/catalog/compiler.rb:77:in
`block in compile'
/usr/share/ruby/vendor_ruby/puppet/util.rb:165:in `benchmark'
/usr/share/ruby/vendor_ruby/puppet/indirector/catalog/compiler.rb:75:in
`compile'
/usr/share/ruby/vendor_ruby/puppet/indirector/catalog/compiler.rb:35:in
`find'
/usr/share/ruby/vendor_ruby/puppet/indirector/indirection.rb:196:in `find'
/usr/share/ruby/vendor_ruby/puppet/application/apply.rb:218:in `main'
/usr/share/ruby/vendor_ruby/puppet/application/apply.rb:149:in `run_command'
/usr/share/ruby/vendor_ruby/puppet/application.rb:309:in `block (2 levels)
in run'
/usr/share/ruby/vendor_ruby/puppet/application.rb:416:in `hook'
/usr/share/ruby/vendor_ruby/puppet/application.rb:309:in `block in run'
/usr/share/ruby/vendor_ruby/puppet/application.rb:407:in `exit_on_fail'
/usr/share/ruby/vendor_ruby/puppet/application.rb:309:in `run'
/usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:69:in `execute'
/bin/puppet:4:in `<main>'
Puppet::Parser::Compiler failed with error ArgumentError: wrong number of
arguments (1 for 0) on node f17.novalocal
[root@f17 modules]#
----------------------------------------
Bug #15575: Compile error overriding resource attributes using collection block
in ruby 1.9
https://projects.puppetlabs.com/issues/15575#change-73208
Author: Craig Dunn
Status: Accepted
Priority: Normal
Assignee:
Category:
Target version:
Affected Puppet version:
Keywords: ruby19
Branch:
When compiling the following code:
<pre>
exec { 'testexec':
path => '/usr/local/bin:/usr/bin:/bin',
command => 'echo running test',
refreshonly => false,
}
Exec <| title == 'testexec' |> {
refreshonly => true,
}
</pre>
I get the following failure under Ruby 1.9
<pre>
Error: Puppet::Parser::Compiler failed with error ArgumentError: wrong number
of arguments (1 for 0) on node craigs-macbook-air.local
Error: Puppet::Parser::Compiler failed with error ArgumentError: wrong number
of arguments (1 for 0) on node craigs-macbook-air.local
</pre>
This works on Ruby 1.8.7 for Puppet 2.7.17 and 3.0 but fails for both on 1.9...
Tested on 1.9.2 and 1.9.3
--
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://projects.puppetlabs.com/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.