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 https://puppet.com/docs/puppet/latest/configuration.html 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

Copyright (c) 2017 Puppet Inc., LLC Licensed under the Apache 2.0 License

October 2023 Puppet, Inc.