|
I accidentially created a VM with only 128MB RAM. Puppet run looks like this:
{{Info: Using configured environment 'production' Info: Retrieving pluginfacts Info: Retrieving plugin Info: Loading facts Error: Could not autoload puppet/provider/service/init: undefined method `downcase' for nil:NilClass Error: Could not autoload puppet/provider/service/openbsd: Could not autoload puppet/provider/service/init: undefined method `downcase' for nil:NilClass Error: Could not retrieve local facts: Could not autoload puppet/provider/service/openbsd: Could not autoload puppet/provider/service/init: undefined method `downcase' for nil:NilClass Error: Failed to apply catalog: Could not retrieve local facts: Could not autoload puppet/provider/service/openbsd: Could not autoload puppet/provider/service/init: undefined method `downcase' for nil:NilClass}}
This is due to Facter.value(:operatingsystem) being NilClass. When running with --debug, I see a lot of the following messages:Debug: Facter: value for <foo> is still nil
It took me a while to find out the puppet run succeeds with more memory just fine. I didn't see any OOM-Killings in dmesg. Of course, it might be not supported/advised to run puppet on such low memory, but I'd still expect puppet to somehow fail in a better way… This might boil down to facter failing in weird ways, puppet not noticing that, or something in between.
puppet-4.8.2-5 on Debian Stretch with packages provided by Debian directly.
|