puppet-parser - Interact directly with the parser.
puppet parser action
Note that any setting that's valid in the configuration
file is also a valid long argument, although it may or may not be
relevant to the present action. For example,
run_mode are valid
settings, so you can specify
--server <servername>, or
--run_mode <runmode> as an argument.
See the configuration file documentation at
https://docs.puppetlabs.com/puppet/latest/reference/configuration.html for the
full list of acceptable parameters. A commented list of all
configuration options can also be generated by running puppet with
console, but other options such as
dotare sometimes available.
dump- Outputs a dump of the internal parse tree for debugging
puppet parser dump [--e source] [--[no-]validate] -e source| [manifest ...]
This action parses and validates the Puppet DSL syntax without compiling a catalog or syncing any resources.
The command accepts one or more manifests (.pp) files, or an -e followed by the puppet source text. If no arguments are given, the stdin is read (unless it is attached to a terminal)
The output format of the dumped tree is intended for debugging purposes and is not API, it may change from time to time.
--e <source> -
dump one source expression given on the command line.
--[no-]validate - Whether or not to validate the parsed result, if no-validate only syntax errors are reported
A dump of the resulting AST model unless there are syntax or validation errors.
validate- Validate the syntax of one or more Puppet manifests.
puppet parser validate [manifest] [manifest ...]
This action validates Puppet DSL syntax without compiling a catalog or syncing any resources. If no manifest files are provided, it will validate the default site manifest.
When validating multiple issues per file are reported up to the settings of max_error, and max_warnings. The processing stops after having reported issues for the first encountered file with errors.
Nothing, or the first syntax error encountered.
Validate the default site manifest at /etc/puppetlabs/puppet/manifests/site.pp:
$ puppet parser validate
Validate two arbitrary manifest files:
$ puppet parser validate init.pp vhost.pp
Validate from STDIN:
$ cat init.pp | puppet parser validate
Copyright 2014 by Puppet Inc. Apache 2 license; see COPYING