Monday, February 17, 2020

puppet master not able to find configdir, how to fix this?

sudo puppet master --verbose --no-daemonize
When I ran above command
[root@puppetmaster bin]# sudo puppet master --verbose --no-daemonize /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1348:in convert': Error converting value for param 'basemodulepath': Could not find value for $configdir (Puppet::Settings::InterpolationError) from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1337:ingsub' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1337:in convert' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1315:ininterpolate' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:1060:in value' from /usr/lib/ruby/site_ruby/1.8/puppet/settings.rb:121:in[]' from /usr/lib/ruby/site_ruby/1.8/puppet.rb:184:in base_context' from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:356:inrun' from /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:146:in run' from /usr/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:92:inexecute' from /usr/bin/puppet:8
Even I created a environment variable now with $configdir with value /etc/puppet, but still same issue.
Please suggest how to rectify this
Puppet does not ordinarily provide or rely on any "configdir" setting, but it does provide and rely on confdir. Since Puppet is complaining about being able to determine the value of a different parameter, basemodulepath, I infer that,
  1. You are using Puppet 3.8 with directory environments enabled (Ruby 1.8 is not supported in later versions, and basemodulepath is a directory environments thing), and
  2. One of your environment.conf files erroneously specifies a value for its environment's basemodulepath in terms of $configdir instead of $confdir.
Note that Puppet 3.8 is obsolete and unsupported. As I write this, the latest is Puppet 6.12.

I have updated the /etc/puppet/puppet.conf file now.

No comments:

Post a Comment