The problem starts with requiring rspec-puppet but ends up in the puppet
3.0 run_mode trying to determine Windows APPDATA pathing. The
Dir::COMMON_APPDATA constant from win32-dir appears to be unicode which
blows on the File.join call in run_mode line 67
: irb
irb(main):001:0> require "rspec-puppet"
Failed to load feature test for root: uninitialized constant
Windows::Synchronize
ArgumentError: string contains null byte
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet/util/run_mode.rb:67:in
`join'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet/util/run_mode.rb:67:in
`conf_dir'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet/settings.rb:495:in
`user_config_file'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet/settings.rb:1234:in
`which_configuration_file'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet/settings.rb:475:in
`parse_config_files'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet/settings.rb:147:in
`initialize_global_settings'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet.rb:135:in
`do_initialize_settings_for_run_mode'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/puppet-3.0.0/lib/puppet.rb:123:in
`initialize_settings'
from
C:/ruby193/lib/ruby/gems/1.9.1/gems/rspec-puppet-0.1.5/lib/rspec-puppet.rb:10:in
`<top (required)>'
from
C:/ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in
`require'
from
C:/ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in
`rescue in require'
from
C:/ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in
`require'
from (irb):1
from C:/ruby193/bin/irb:12:in `<main>'
Reproducing the specific line in question in irb like this:
: irb
irb(main):002:0> require 'win32/dir'
=> true
irb(main):003:0> Dir::COMMON_APPDATA
=> "C:\\ProgramData"
irb(main):006:0> File.join [Dir::COMMON_APPDATA, "PuppetLabs", "puppet",
"etc"]
ArgumentError: string contains null byte
from (irb):6:in `join'
from (irb):6
from C:/ruby193/bin/irb:12:in `<main>'
Installed versions:
: ruby -v
ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
: gem list
*** LOCAL GEMS ***
...
facter (1.6.13, 1.6.12)
puppet (3.0.0, 2.7.19)
puppetlabs_spec_helper (0.3.0)
rspec (2.11.0, 2.10.0)
rspec-puppet (0.1.5, 0.1.4)
sys-admin (1.5.6 x86-mingw32)
win32-api (1.4.8 x86-mingw32)
win32-dir (0.4.1)
win32-process (0.7.0)
win32-security (0.1.4, 0.1.3)
win32-service (0.7.2 x86-mingw32)
win32-taskscheduler (0.2.2)
windows-api (0.4.2)
windows-pr (1.2.2)
Thanks
Ed Sumerfield
--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" 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-dev?hl=en.