On 17/04/18 00:10, jcbollinger wrote:
This Puppet 5.4.0 error message wraps up the situation in a pretty tidy package:

    Error: Could not retrieve catalog from remote server: Error 500 on
    SERVER: Server Error: Evaluation Error: Error while evaluating a
    Function Call, Cannot have code outside of a class/node/define
    because 'freeze_main' is enabled (file:
    /etc/puppetlabs/code/environments/production/manifests/defaults-firewall.pp,
    line: 14, column: 3) on node redacted.machine.xxx


The freeze_main setting is documented <https://puppet.com/docs/puppet/5.5/configuration.html#freezemain> to trap code other than classes, defined type, and node definitions appearing at top scope, /other than in the site manifest/.  The error message is complaining about a manifest in its environment's site manifest directory, which would not be evaluated at all if Puppet were not treating it as part of the site manifest.  So why is Puppet complaining?  Is this just a straight-up bug, or is there more to it?


I just fixed a bug regarding freeze_main that was found when an autoloaded class/define made use of a not already loaded custom data type. The logic raising the error was too simplistic in its check for
the condition under which it should raise an error.

If your problem is not an actual problem, it may be that you ran into that bug.

- henrik




--

Visit my Blog "Puppet on the Edge"
http://puppet-on-the-edge.blogspot.se/

--
You received this message because you are subscribed to the Google Groups "Puppet 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/pb427c%24h1m%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.

Reply via email to