Man Page: puppet script

NOTE: This page was generated from the Puppet source code on 2022-02-07 10:05:17 -0800


puppet-script - Run a puppet manifests as a script without compiling a catalog


Runs a puppet language script without compiling a catalog.


puppet script [-h|--help] [-V|--version] [-d|--debug] [-v|--verbose] [-e|--execute] [-l|--logdest syslog|eventlog|FILE|console] [--noop] file


This is a standalone puppet script runner tool; use it to run puppet code without compiling a catalog.

When provided with a modulepath, via command line or config file, puppet script can load functions, types, tasks and plans from modules.


Note that any setting that's valid in the configuration file is also a valid long argument. For example, 'environment' is a valid setting, so you can specify '--environment mytest' as an argument.

See the configuration file documentation at for the full list of acceptable parameters. A commented list of all configuration options can also be generated by running puppet with '--genconfig'.


Enable full debugging.


Print this help message


Where to send log messages. Choose between 'syslog' (the POSIX syslog service), 'eventlog' (the Windows Event Log), 'console', or the path to a log file. Defaults to 'console'. Multiple destinations can be set using a comma separated list (eg: /path/file1,console,/path/file2)"

A path ending with '.json' will receive structured output in JSON format. The log file will not have an ending ']' automatically written to it due to the appending nature of logging. It must be appended manually to make the content valid JSON.

A path ending with '.jsonl' will receive structured output in JSON Lines format.


Use 'noop' mode where Puppet runs in a no-op or dry-run mode. This is useful for seeing what changes Puppet will make without actually executing the changes. Applies to tasks only.


Execute a specific piece of Puppet code


Print extra information.


$ puppet script -l /tmp/manifest.log manifest.pp
$ puppet script --modulepath=/root/dev/modules -e 'notice("hello world")'


Henrik Lindberg