pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

puppet 7 client / facter 4 / netbsd 9



Greetings,

I am trying to get puppet (client) working on a NetBSD system against
an existing puppet server and having a devil of a time figuring out
what's wrong.  My lack of familiarity with Ruby isn't helping.  I've
been fiddling with it off and on for a few weeks and feel like I am at
an impasse where I need to go start learning Ruby, which I'd like to avoid.

This is on NetBSD 9.2 (stable from a few weeks ago) with a brand new
install, and with the 2021q2 tag pkgsrc packages and everything built
with pbulk sometime in the past week.  I've tried all the versions of
ruby but spent most of my time with ruby30-puppet.

I'm seeing:

---<snip>---
# puppet30 agent -t -v
Error: Could not create resources for managing Puppet's files and directories in sections [:main, :agent, :ssl]: undefined method `exists?' for nil:NilClass
Jul  9 21:17:28 coreer puppet-agent[27645]: Could not create resources for managing Puppet's files and directories in sections [:main, :agent, :ssl]: undefined method `exists?' for nil:NilClass
Error: Could not prepare for execution: Could not create resources for managing Puppet's files and directories in sections [:main, :agent, :ssl]: undefined method `exists?' for nil:NilClass
undefined method `exists?' for nil:NilClass
---<snip>---

Near as I can tell, this is because the legacy operatingsystem fact is
not showing up running facter and thus it can't figure out how to mangae
users for the system it's running on.  I've installed the ruby30-ffi
module, which got some more facts to show up but not that legacy section (I'm
also not clear why puppet would still be using legacy facs, but that's for
another day).

Looking at https://github.com/puppetlabs/facter , it doesn't list NetBSD as
being explicitly supported, so it's possible that this is expected,  but
that's... surprising since it's not mentioned anywhere in the pkgsrc tree.

I'm hoping someone else has this working and can point out some obvious
thing I'm missing.

thanks in advance,
-Todd

---<snip>--- output of puppet30 agent -t -v --trace --debug
Debug: Applying settings catalog for sections main, agent, ssl
Debug: Could not find library 'selinux' required to enable feature 'selinux'
Debug: Using settings: adding file resource 'confdir': 'File[/usr/pkg/etc/puppetlabs/puppet]{:path=>"/usr/pkg/etc/puppetlabs/puppet", :ensure=>:directory, :loglevel=>:debug, :links=>:follow, :backup=>false}'
Debug: Using settings: adding file resource 'codedir': 'File[/usr/pkg/etc/puppetlabs/code]{:path=>"/usr/pkg/etc/puppetlabs/code", :ensure=>:directory, :loglevel=>:debug, :links=>:follow, :backup=>false}'
Debug: Could not find library 'cfpropertylist' required to enable feature 'cfpropertylist'
Debug: Facter: resolving fact with user_query: operatingsystem
Debug: Facter: Searching fact: operatingsystem in file: operatingsystem.rb
Debug: Facter: Searching fact: operatingsystem in core facts and external facts
Debug: Facter: Loading internal facts
Debug: Facter: Loading all internal facts
Debug: Facter: User query is: ["operatingsystem"]
Debug: Facter: Query is operatingsystem
Debug: Facter: Checking query tokens operatingsystem
Debug: Facter: List of resolvable facts: []
Debug: Facter: Resolving facts sequentially
Debug: Facter: Loading external facts
Debug: Facter: User query is: ["operatingsystem"]
Debug: Facter: Query is operatingsystem
Debug: Facter: Checking query tokens operatingsystem
Debug: Facter: List of resolvable facts: []
Debug: Facter: Searching fact: operatingsystem in all custom facts
Debug: Facter: Loading custom facts
Debug: Facter: User query is: ["operatingsystem"]
---<snip>---

---<snip>--- pkg information
# pkg_info
pkg_install-20210410 Package management and administration tools for pkgsrc
bash-5.1.8nb1       The GNU Bourne Again Shell
zsh-5.8nb2          The Z shell
perl-5.34.0nb2      Practical Extraction and Report Language
libyaml-0.2.5       YAML 1.1 parser and emitter written in C
ruby30-base-3.0.1   Ruby 3.0.1 release minimum base package
ruby30-hocon-1.3.1  Ruby port of the Typesafe Config library
ruby30-thor-1.1.0   Scripting framework that replaces rake, sake and rubigen
ruby30-facter-4.2.0 Cross-platform Ruby library for retrieving facts from OS
ruby30-hiera-3.7.0  Light weight hierarchical data store
ruby30-semantic_puppet-1.0.3 Useful tools for working with Semantic Versions
ruby30-fast_gettext-2.0.3 Simple, fast, memory-efficient and threadsafe GetText
ruby30-locale-2.1.3 Pure ruby library which provides basic APIs for localization
ruby30-multi_json-1.15.0 General-purpose swappable JSON backend library
ruby30-puppet-resource_api-1.8.13 Simple way to write new native resources for puppet
ruby30-concurrent-ruby-1.1.8 Modern concurrency tools for Ruby
ruby30-deep_merge-1.2.1 Merge Deeply Nested Hashes
ruby30-scanf-1.0.0  Implementation of the C function scanf(3)
ruby30-puppet-7.7.0 Configuration management framework written in Ruby
readline-8.1        GNU library that can recall and edit previous input
gdbm-1.19           The GNU database manager
ruby30-gdbm-3.0.1   Ruby extension to GDBM library
libffi-3.3nb5       Foreign function interface
ruby30-fiddle-3.0.1 Ruby fiddle library to wrap libffi
ruby30-readline-3.0.1 Ruby extension to readline library
ruby30-3.0.1        Ruby programming language 3.0.1 meta package
ruby30-ffi-1.15.1   Loading dynamic libraries, binding functions within them
# pkg_info -u
pkg_install-20210410 Package management and administration tools for pkgsrc
bash-5.1.8nb1       The GNU Bourne Again Shell
zsh-5.8nb2          The Z shell
perl-5.34.0nb2      Practical Extraction and Report Language
ruby30-puppet-7.7.0 Configuration management framework written in Ruby
ruby30-3.0.1        Ruby programming language 3.0.1 meta package
ruby30-ffi-1.15.1   Loading dynamic libraries, binding functions within them
bash-5.1#


Home | Main Index | Thread Index | Old Index