Ran into this in 0.22.3, and 0.22.4:
Here's the transcript:
# Where is puppet?
ford:~ root# which puppet
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/bin/puppet
ford:~ root# gemwhich puppet
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/lib/puppet.rb
# CWD is in ~root (This works fine)
ford:~ root# run_puppet_network.sh --verbose --onetime
# Now, change directories:
ford:~ root# cd /Library/Puppet/Versioned/Shared/reductivelabs.com
ford:/Library/Puppet/Versioned/Shared/reductivelabs.com root# run_puppet_network.sh --verbose --onetime
puppetd: invalid option: --confdir=/Library/Puppet/Versioned/Client/config/puppet.network
Could not load ./facter/install.rb: No such file or directory - bin/facter
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/lib/puppet/external/gratr/rdot.rb:58: warning: already initialized constant NODE_OPTS
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/lib/puppet/external/gratr/rdot.rb:98: warning: already initialized constant EDGE_OPTS
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/lib/puppet/external/gratr/rdot.rb:113: warning: already initialized constant GRAPH_OPTS
^CCancelling startup
I suspect that this is because I maintain symlinks to the current versions of puppet and facter, like so:
ford:/Library/Puppet/Versioned/Shared/reductivelabs.com root# ls -l
total 16
drwxr-xr-x 9 root admin 306 May 24 13:39 .svn
lrwxr-xr-x 1 root admin 12 Apr 13 08:14 facter -> facter-1.3.6
drwxr-xr-x 17 root admin 578 Apr 13 08:14 facter-1.3.6
lrwxr-xr-x 1 root admin 12 Apr 13 08:14 puppet -> puppet-trunk
drwxr-xr-x 19 root admin 646 Apr 13 08:14 puppet-0.22.3
drwxr-xr-x 19 root admin 646 May 24 13:39 puppet-0.22.4
drwxr-xr-x 19 root admin 646 Apr 13 08:14 puppet-trunk
Note, however, that gemwhich and which still return the expected results:
ford:/Library/Puppet/Versioned/Shared/reductivelabs.com root# which puppet
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/bin/puppet
ford:/Library/Puppet/Versioned/Shared/reductivelabs.com root# gemwhich puppet
/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/lib/puppet.rb
Here's what my environment looks like:
GEM_HOME=/Library/Puppet/Resources/rubygems/lib/ruby/gems/1.8
PATH=/Library/Puppet/Resources/ruby/bin:/Library/Puppet/Resources/rubygems/bin:/Library/Puppet/Resources/rubygems/lib/ruby/gems/1.8/bin:/Library/Puppet/Resources/httpd/bin:/Library/Puppet/Resources
/subversion/bin:/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/bin:/Library/Puppet/Versioned/Shared/reductivelabs.com/facter/bin:/Library/Puppet/Versioned/Shared/Scripts:/bin:/sbin:/usr/
bin:/usr/sbin:/usr/local/teTeX/bin/i386-apple-darwin-current:/opt/local/bin:/usr/local/bin:/home/mccune/bin:/home/mccune/bin
RUBYLIB=/Library/Puppet/Resources/rubygems/lib/ruby:/Library/Puppet/Resources/rubygems/lib/ruby/site_ruby/1.8:/Library/Puppet/Versioned/Shared/reductivelabs.com/puppet/lib:/Library/Puppet/Versioned
/Shared/reductivelabs.com/facter/lib:/Library/Puppet/Versioned/Shared/lib/ruby