Bug #3094

Trying to specify multiple libdir values fails

Added by Avi Miller 6 months ago. Updated 6 months ago.

Status:Closed Start:01/21/2010
Priority:Normal Due date:
Assigned to:- % Done:

0%

Category:-
Target version:0.25.5
Affected version:0.25.3 Branch:http://github.com/MarkusQ/puppet/tree/ticket/0.25.x/3094
Keywords:
Votes: 0

Description

Trying to specify multiple values for libdir in puppet.conf:

libdir = $vardir/lib/puppet:/path/to/puppet-dashboard/lib/puppet

Puppet fails with the following —debug trace

[root@firefly puppet]# puppetmasterd --no-daemonize --verbose --debug
debug: Failed to load library 'ldap' for feature 'ldap'
debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not exist
debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl does not exist
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/certs/firefly.local.pem]: Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/public_keys/firefly.local.pem]: Autorequiring File[/var/lib/puppet/ssl/public_keys]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet]
debug: /File[/etc/puppet/manifests/site.pp]: Autorequiring File[/etc/puppet/manifests]
debug: /File[/var/lib/puppet/ssl/private_keys/firefly.local.pem]: Autorequiring File[/var/lib/puppet/ssl/private_keys]
debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
debug: /File[/etc/puppet/auth.conf]: Autorequiring File[/etc/puppet]
debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/rrd]: Autorequiring File[/var/lib/puppet]
debug: /File[/etc/puppet/manifests]: Autorequiring File[/etc/puppet]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/bucket]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
debug: /File[/etc/puppet/fileserver.conf]: Autorequiring File[/etc/puppet]
debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/reports]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/yaml]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/log/puppet/masterhttp.log]: Autorequiring File[/var/log/puppet]
debug: /File[/var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib/puppet]: Changing ensure
debug: /File[/var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib/puppet]: 1 change(s)
err: /File[/var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib/puppet]/ensure: change from absent to directory failed: Cannot create /var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib/puppet; parent directory /var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib does not exist
debug: Finishing transaction 70341763429520 with 1 changes
Could not prepare for execution: Got 1 failure(s) while initializing: change from absent to directory failed: Cannot create /var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib/puppet; parent directory /var/lib/puppet/lib/puppet:/path/to/puppet-dashboard/lib does not exist

Both directories do exist on the test machine.


Related issues

duplicated by Puppet - Bug #3464: libdir does not seem to take colons Duplicate 03/30/2010

History

Updated by Markus Roberts 6 months ago

  • Status changed from Unreviewed to Needs more information

It appears from looking at the code that multiple libdir lines should work. Does this:

libdir = $vardir/lib/puppet
libdir = /path/to/puppet-dashboard/lib/puppet

do what you want?

Updated by Avi Miller 6 months ago

Hi Markus — this does not appear to work, but I could be doing something wrong. I added the following lines:

libdir = $vardir/lib/puppet
libdir = /path/to/puppet-dashboard/lib/puppet

And I have tried puppet_dashboard.rb in both:

/path/to/puppet-dashboard/lib/puppet/puppet_dashboard.rb
/path/to/puppet-dashboard/lib/puppet/reports/puppet_dashboard.rb

But I still get a message saying it was unable to find the puppet_dashboard report (in both cases)

Updated by Markus Roberts 6 months ago

  • Status changed from Needs more information to Investigating

Updated by Luke Kanies 6 months ago

Based on how other settings work, this should be done with colon-separated paths (e.g., modulepath does this).

Updated by Markus Roberts 6 months ago

  • Status changed from Investigating to Ready for Testing
  • Branch set to http://github.com/MarkusQ/puppet/tree/ticket/0.25.x/3094

Updated by Markus Roberts 6 months ago

Revised branch with changes from dev-list up.

Updated by James Turnbull 6 months ago

  • Target version set to 0.25.5

Updated by James Turnbull 6 months ago

  • Status changed from Ready for Testing to Closed

Pushed in commit:“f9e05a8062423cf0e4dd6dca2050a8c7d4b2e85d” in branch 0.25.x

Also available in: Atom PDF