Puppet Error : Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to parse template .erb

Topic Tools

When you are creating and defining new template, Puppet use it to parse the file in the agent server but sometimes you might misspelled/right wrong config which leads to throwing error on puppet agent.

One of the error which i received is “Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to parse template context.erb:” and i found the root cause of the error, so thought of sharing..

If you are getting the same error as below :

[root@webapp007 conf]# puppet agent --test
Info: Retrieving pluginfacts
Info: Retrieving plugin
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to parse template context.erb:
Filepath: /var/lib/puppet/templates/context.erb
Line: 38
Detail: uninitialized constant Puppet::Parser::TemplateWrapper::VMS_USER
at /etc/puppet/manifests/classes/smart.pp:140 on node webapp007
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

Reason : Puppet doesnot support ALLCAPS variable in puppet templates
Solution : Change ALLCAPS variable to lower case variable

In this case : VMS_USER to vms_user

and thats it …..once you change the varibale – Puppet will happily run after that

0 comments… add one

Leave a Comment