Issue #14074 has been updated by Andrew Parker. Status changed from Accepted to Closed
I just encountered this while investigating a plugin sync strangeness and was working with puppet 3.0.2. I expected that setting a `vardir` in the master section of the `puppet.conf` would be enough to control the `libdir` of the master since it is defined to have a default of `$vardir/lib`. This caused (with `vardir` as `/var/lib/puppetmaster`) <pre> > puppet master --configprint libdir /var/lib/puppetmaster/lib </pre> However, the hook on the `libdir` setting had placed the original value of `/var/lib/puppet/lib` in the `$LOAD_PATH` already. As a next step I tried to set the `libdir` explicitly via `libdir = /var/lib/puppetmaster/lib`. This placed the correct value in the `$LOAD_PATH`. This makes me think that this issue has been solved and was likely part of the fix for #13948. ---------------------------------------- Bug #14074: libdir setting is honored on the command line but not in puppet.conf https://projects.puppetlabs.com/issues/14074#change-82021 Author: Jeff McCune Status: Closed Priority: Normal Assignee: Category: modules Target version: Affected Puppet version: Keywords: libdir puppet.conf defaults settings Branch: # Overview # In order to work around #14073 I've explicitly set the libdir in puppet.conf like so: <pre> [main] server=puppet pluginsync=true autoflush=true modulepath=Z:/vagrant/modules libdir=Z:/vagrant/modules/registry/lib </pre> However, this doesn't have the desired effect: # Expected Behavior # This command should list registry_key and registry_value in the output: <pre> C:\>puppet describe --list ... registry_key - .. no documentation .. registry_value - .. no documentation .. </pre> # Actual Behavior # The types are not loaded as they should be if they're available on the $LOAD_PATH. As a result, they don't show up in the documentation and are not available to the rest of the system. However, specifying libdir on the command line does in fact make the types and providers available: <pre> puppet describe --libdir=Z:/vagrant/modules/registry/lib --list ... registry_key - .. no documentation .. registry_value - .. no documentation .. </pre> This demonstrates a clear disconnect between the behavior of libdir specified on the command line and the behavior of libdir specified in puppet.conf. # Impact Data # Until #14073 is resolved, there is no easy work around to get types to automatically load from modules using Puppet Apply. The command line options must be used instead of puppet.conf, or RUBYLIB or some other hack to the $LOAD_PATH must be employed. I haven't heard of any users or customers reporting this yet. -- 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]. Visit this group at http://groups.google.com/group/puppet-bugs?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
