puppet-filebucket

title: puppet-filebucket(8)

text:
# puppet-filebucket(8)

## NAME
puppet-filebucket - Store and retrieve files in an OpenVox filebucket

## SYNOPSIS
A stand-alone OpenVox filebucket client.

## USAGE
puppet filebucket mode [-h|--help] [-V|--version] [-d|--debug] [-v|--verbose] [-l|--local] [-r|--remote] [-s|--server server] [-f|--fromdate date] [-t|--todate date] [-b|--bucket directory] file file ...

This filebucket client can operate in three modes, with only one mode per call:

backup: Send one or more files to the specified file bucket. Each sent file is printed with its resulting sha256 sum.

get: Return the text associated with an sha256 sum. The text is printed to stdout, and only one file can be retrieved at a time.

restore: Given a file path and an sha256 sum, store the content associated with the sum into the specified file path. You can specify an entirely new path to this argument; you are not restricted to restoring the content to its original location.

diff: Print a diff in unified format between two checksums in the filebucket or between a checksum and its matching file.

list: List all files in the current local filebucket. Listing remote filebuckets is not allowed.

## DESCRIPTION
This is a stand-alone filebucket client for sending files to a local or central filebucket.

Note that 'filebucket' defaults to using a network-based filebucket available on the server named 'puppet'. To use this, you'll have to be running as a user with valid Puppet certificates. Alternatively, you can use your local file bucket by specifying '--local', or by specifying '--bucket' with a local path.

Important: When you enable and use the backup option, and by extension the filebucket resource, you must ensure that sufficient disk space is available for the file backups. Generally, you can provide the disk space by using one of the following two options:

•

Use a find command and crontab entry to retain only the last X days of file backups. For example:

```
  find /opt/puppetlabs/server/data/puppetserver/bucket -type f -mtime +45 -atime +45 -print0 | xargs -0 rm
```

•

Restrict the directory to a maximum size after which the oldest items are removed.

## OPTIONS
Note that any setting that's valid in the configuration file is also a valid long argument. For example, 'ssldir' is a valid setting, so you can specify '--ssldir directory' 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'.

--bucket

Specify a local filebucket path. This overrides the default path set in '$clientbucketdir'.

--debug

Enable full debugging.

--fromdate

(list only) Select bucket files from 'fromdate'.

--help

Print this help message.

--local

Use the local filebucket. This uses the default configuration information and the bucket located at the '$clientbucketdir' setting by default. If '--bucket' is set, that path is used instead.

--remote

Use a remote filebucket. This uses the default configuration information and the bucket located at the '$bucketdir' setting by default.

--server_list

A list of comma separated servers; only the first entry is used for file storage. This setting takes precidence over server.

--server

The server to use for file storage. This setting is only used if server_list is not set.

--todate

(list only) Select bucket files until 'todate'.

--verbose

Print extra information.

--version

Print version information.

## EXAMPLES

```
## Backup a file to the filebucket, then restore it to a temporary directory
$ puppet filebucket backup /etc/passwd
/etc/passwd: 429b225650b912a2ee067b0a4cf1e949
$ puppet filebucket restore /tmp/passwd 429b225650b912a2ee067b0a4cf1e949
## Diff between two files in the filebucket
$ puppet filebucket -l diff d43a6ecaa892a1962398ac9170ea9bf2 7ae322f5791217e031dc60188f4521ef
1a2
> again
## Diff between the file in the filebucket and a local file
$ puppet filebucket -l diff d43a6ecaa892a1962398ac9170ea9bf2 /tmp/testFile
1a2
> again
## Backup a file to the filebucket and observe that it keeps each backup separate
$ puppet filebucket -l list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
$ echo again >> /tmp/TestFile
$ puppet filebucket -l backup /tmp/TestFile
/tmp/TestFile: 7ae322f5791217e031dc60188f4521ef
$ puppet filebucket -l list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
## List files in a filebucket within date ranges
$ puppet filebucket -l -f 2015-01-01 -t 2015-01-11 list
<Empty Output>
$ puppet filebucket -l -f 2015-05-10 list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
$ puppet filebucket -l -f "2015-05-11 09:30:00" list
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
$ puppet filebucket -l -t "2015-05-11 09:30:00" list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
## Manage files in a specific local filebucket
$ puppet filebucket -b /tmp/TestBucket backup /tmp/TestFile2
/tmp/TestFile2: d41d8cd98f00b204e9800998ecf8427e
$ puppet filebucket -b /tmp/TestBucket list
d41d8cd98f00b204e9800998ecf8427e 2015-05-11 09:33:22 /tmp/TestFile2
## From a Puppet Server, list files in the server bucketdir
$ puppet filebucket -b $(puppet config print bucketdir --section server) list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
```

## AUTHOR
Luke Kanies

## COPYRIGHT
Copyright (c) 2011 Puppet Inc. Copyright (c) 2024 Vox Pupuli Licensed under the Apache 2.0 License


puppet-generate

package: openvox

title: puppet-generate(8)

summary: Generates Puppet code from Ruby definitions\.

text:
# puppet-generate(8)

## NAME
puppet-generate - Generates Puppet code from Ruby definitions.

## SYNOPSIS
puppet generate action

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

## ACTIONS
types - Generates Puppet code for custom types

SYNOPSIS

puppet generate types [--format format] [--force]

DESCRIPTION

Generates definitions for custom resource types using Puppet code.

Types defined in Puppet code can be used to isolate custom type definitions between different environments.

OPTIONS --force - Forces the generation of output files (skips up-to-date checks).

--format <format> - The generation output format to use. Supported formats: pcore.

## EXAMPLES
types

Generate Puppet type definitions for all custom resource types in the current environment:

```
$ puppet generate types
```

Generate Puppet type definitions for all custom resource types in the specified environment:

```
$ puppet generate types --environment development
```

## COPYRIGHT AND LICENSE
Copyright 2016 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING

branch: sisyphus


puppet-help

title: puppet-help(8)

summary: Display OpenVox help\.

text:
# puppet-help(8)

## NAME
puppet-help - Display OpenVox help.

## SYNOPSIS
puppet help action

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

## ACTIONS
help - Display help about OpenVox subcommands and their actions.

SYNOPSIS

puppet help [--version VERSION] [--ronn] [subcommand] [action]

DESCRIPTION

Display help about OpenVox subcommands and their actions.

OPTIONS --ronn - Whether to render the help text in ronn format.

--version VERSION - The version of the subcommand for which to show help.

RETURNS

Short help text for the specified subcommand or action.

## EXAMPLES
help

Get help for an action:

$ puppet help

## COPYRIGHT AND LICENSE
Copyright 2011 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING


puppet-lookup

title: puppet-lookup(8)

summary: Interactive Hiera lookup for OpenVox

text:
# puppet-lookup(8)

## NAME
puppet-lookup - Interactive Hiera lookup for OpenVox

## SYNOPSIS
Does Hiera lookups from the command line.

Since this command needs access to your Hiera data, make sure to run it on a node that has a copy of that data. This usually means logging into an OpenVox server node and running 'puppet lookup' with sudo.

The most common version of this command is:

'puppet lookup KEY --node NAME --environment ENV --explain'

## USAGE
puppet lookup [--help] [--type TYPESTRING] [--merge first|unique|hash|deep] [--knock-out-prefix PREFIX-STRING] [--sort-merged-arrays] [--merge-hash-arrays] [--explain] [--environment ENV] [--default VALUE] [--node NODE-NAME] [--facts FILE] [--compile] [--render-as s|json|yaml|binary|msgpack] keys

## DESCRIPTION
The lookup command is a CLI for Puppet's 'lookup()' function. It searches your Hiera data and returns a value for the requested lookup key, so you can test and explore your data. It is a modern replacement for the 'hiera' command. Lookup uses the setting for global hiera.yaml from puppet's config, and the environment to find the environment level hiera.yaml as well as the resulting modulepath for the environment (for hiera.yaml files in modules). Hiera usually relies on a node's facts to locate the relevant data sources. By default, 'puppet lookup' uses facts from the node you run the command on, but you can get data for any other node with the '--node NAME' option. If possible, the lookup command will use the requested node's real stored facts from PuppetDB; if PuppetDB isn't configured or you want to provide arbitrary fact values, you can pass alternate facts as a JSON or YAML file with '--facts FILE'.

If you're debugging your Hiera data and want to see where values are coming from, use the '--explain' option.

If '--explain' isn't specified, lookup exits with 0 if a value was found and 1 otherwise. With '--explain', lookup always exits with 0 unless there is a major error.

You can provide multiple lookup keys to this command, but it only returns a value for the first found key, omitting the rest.

For more details about how Hiera works, see the Hiera documentation: https://puppet.com/docs/puppet/latest/hiera_intro.html

## OPTIONS

- --help: Print this help message.

- --explain Explain the details of how the lookup was performed and where the final value came from (or the reason no value was found).

- --node NODE-NAME Specify which node to look up data for; defaults to the node where the command is run. Since Hiera's purpose is to provide different values for different nodes (usually based on their facts), you'll usually want to use some specific node's facts to explore your data. If the node where you're running this command is configured to talk to PuppetDB, the command will use the requested node's most recent facts. Otherwise, you can override facts with the '--facts' option.

- --facts FILE Specify a .json or .yaml file of key => value mappings to override the facts for this lookup. Any facts not specified in this file maintain their original value.

- --environment ENV Like with most Puppet commands, you can specify an environment on the command line. This is important for lookup because different environments can have different Hiera data. This environment will be always be the one used regardless of any other factors.

- --merge first|unique|hash|deep: Specify the merge behavior, overriding any merge behavior from the data's lookup_options. 'first' returns the first value found. 'unique' appends everything to a merged, deduplicated array. 'hash' performs a simple hash merge by overwriting keys of lower lookup priority. 'deep' performs a deep merge on values of Array and Hash type. There are additional options that can be used with 'deep'.

- --knock-out-prefix PREFIX-STRING Can be used with the 'deep' merge strategy. Specifies a prefix to indicate a value should be removed from the final result.

- --sort-merged-arrays Can be used with the 'deep' merge strategy. When this flag is used, all merged arrays are sorted.

- --merge-hash-arrays Can be used with the 'deep' merge strategy. When this flag is used, hashes WITHIN arrays are deep-merged with their counterparts by position.

- --explain-options Explain whether a lookup_options hash affects this lookup, and how that hash was assembled. (lookup_options is how Hiera configures merge behavior in data.)

- --default VALUE A value to return if Hiera can't find a value in data. For emulating calls to the 'lookup()' function that include a default.

- --type TYPESTRING: Assert that the value has the specified type. For emulating calls to the 'lookup()' function that include a data type.

- --compile Perform a full catalog compilation prior to the lookup. If your hierarchy and data only use the $facts, $trusted, and $server_facts variables, you don't need this option; however, if your Hiera configuration uses arbitrary variables set by a Puppet manifest, you might need this option to get accurate data. No catalog compilation takes place unless this flag is given.

- --render-as s|json|yaml|binary|msgpack Specify the output format of the results; "s" means plain text. The default when producing a value is yaml and the default when producing an explanation is s.

## EXAMPLE
To look up 'key_name' using the Puppet Server node's facts: $ puppet lookup key_name

To look up 'key_name' using the Puppet Server node's arbitrary variables from a manifest, and classify the node if applicable: $ puppet lookup key_name --compile

To look up 'key_name' using the Puppet Server node's facts, overridden by facts given in a file: $ puppet lookup key_name --facts fact_file.yaml

To look up 'key_name' with agent.local's facts: $ puppet lookup --node agent.local key_name

To get the first value found for 'key_name_one' and 'key_name_two' with agent.local's facts while merging values and knocking out the prefix 'foo' while merging: $ puppet lookup --node agent.local --merge deep --knock-out-prefix foo key_name_one key_name_two

To lookup 'key_name' with agent.local's facts, and return a default value of 'bar' if nothing was found: $ puppet lookup --node agent.local --default bar key_name

To see an explanation of how the value for 'key_name' would be found, using agent.local's facts: $ puppet lookup --node agent.local --explain key_name

## COPYRIGHT
Copyright (c) 2015 Puppet Inc. Copyright (c) 2024 Vox Pupuli Licensed under the Apache 2.0 License


puppet-module

title: puppet-module(8)

summary: Creates, installs and searches for modules on the Puppet Forge\.

text:
# puppet-module(8)

## NAME
puppet-module - Creates, installs and searches for modules on the Puppet Forge.

## SYNOPSIS
puppet module action [--environment production ] [--modulepath ]

## DESCRIPTION
This subcommand can find, install, and manage modules from the Puppet Forge, a repository of user-contributed Puppet code. It can also generate empty modules, and prepare locally developed modules for release on the Forge.

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

--environment production

The environment in which Puppet is running. For clients, such as puppet agent, this determines the environment itself, which Puppet uses to find modules and much more. For servers, such as puppet server, this provides the default environment for nodes that Puppet knows nothing about.

When defining an environment in the [agent] section, this refers to the environment that the agent requests from the primary server. The environment doesn't have to exist on the local filesystem because the agent fetches it from the primary server. This definition is used when running puppet agent.

When defined in the [user] section, the environment refers to the path that Puppet uses to search for code and modules related to its execution. This requires the environment to exist locally on the filesystem where puppet is being executed. Puppet subcommands, including puppet module and puppet apply, use this definition.

Given that the context and effects vary depending on the config section https://puppet.com/docs/puppet/latest/config_file_main.html#config-sections in which the environment setting is defined, do not set it globally.

--modulepath

The search path for modules, as a list of directories separated by the system path separator character. (The POSIX path separator is ':', and the Windows path separator is ';'.)

Setting a global value for modulepath in puppet.conf is not allowed (but it can be overridden from the commandline). Please use directory environments instead. If you need to use something other than the default modulepath of <ACTIVE ENVIRONMENT'S MODULES DIR>:$basemodulepath, you can set modulepath in environment.conf. For more info, see https://puppet.com/docs/puppet/latest/environments_about.html

## ACTIONS
changes - Show modified files of an installed module.

SYNOPSIS

puppet module changes path

DESCRIPTION

Shows any files in a module that have been modified since it was installed. This action compares the files on disk to the md5 checksums included in the module's checksums.json or, if that is missing, in metadata.json.

RETURNS

Array of strings representing paths of modified files.

install - Install a module from the Puppet Forge or a release archive.

SYNOPSIS

puppet module install [--force | -f] [--target-dir DIR | -i DIR] [--ignore-dependencies] [--version VER | -v VER] name

DESCRIPTION

Installs a module from the Puppet Forge or from a release archive file. Note: Module install uses MD5 checksums, which are prohibited on FIPS enabled systems.

The specified module will be installed into the directory specified with the --target-dir option, which defaults to the first directory in the modulepath.

OPTIONS --force | -f - Force overwrite of existing module, if any. Implies --ignore-dependencies.

--ignore-dependencies - Do not attempt to install dependencies. Implied by --force.

--target-dir DIR | -i DIR - The directory into which modules are installed; defaults to the first directory in the modulepath.

Specifying this option will change the installation directory, and will use the existing modulepath when checking for dependencies. If you wish to check a different set of directories for dependencies, you must also use the --environment or --modulepath options.

--version VER | -v VER - Module version to install; can be an exact version or a requirement string, eg '>= 1.0.3'. Defaults to latest version.

RETURNS

Pathname object representing the path to the installed module.

list - List installed modules

SYNOPSIS

puppet module list [--tree]

DESCRIPTION

Lists the installed puppet modules. By default, this action scans the modulepath from puppet.conf's [main] block; use the --modulepath option to change which directories are scanned.

The output of this action includes information from the module's metadata, including version numbers and unmet module dependencies.

OPTIONS --tree - Whether to show dependencies as a tree view

RETURNS

hash of paths to module objects

uninstall - Uninstall a puppet module.

SYNOPSIS

puppet module uninstall [--force | -f] [--ignore-changes | -c] [--version=] name

DESCRIPTION

Uninstalls a puppet module from the modulepath (or a specific target directory). Note: Module uninstall uses MD5 checksums, which are prohibited on FIPS enabled systems.

OPTIONS --force | -f - Force the uninstall of an installed module even if there are local changes or the possibility of causing broken dependencies.

--ignore-changes | -c - Uninstall an installed module even if there are local changes to it. (Implied by --force.)

--version= - The version of the module to uninstall. When using this option, a module matching the specified version must be installed or else an error is raised.

RETURNS

Hash of module objects representing uninstalled modules and related errors.

upgrade - Upgrade a puppet module.

SYNOPSIS

puppet module upgrade [--force | -f] [--ignore-dependencies] [--ignore-changes | -c] [--version=] name

DESCRIPTION

Upgrades a puppet module. Note: Module upgrade uses MD5 checksums, which are prohibited on FIPS enabled systems.

OPTIONS --force | -f - Force the upgrade of an installed module even if there are local changes or the possibility of causing broken dependencies. Implies --ignore-dependencies.

--ignore-changes | -c - Upgrade an installed module even if there are local changes to it. (Implied by --force.)

--ignore-dependencies - Do not attempt to install dependencies. Implied by --force.

--version= - The version of the module to upgrade to.

RETURNS

Hash

## EXAMPLES
changes

Show modified files of an installed module:

$ puppet module changes /etc/puppetlabs/code/modules/vcsrepo/ warning: 1 files modified lib/puppet/provider/vcsrepo.rb

install

Install a module:

$ puppet module install puppetlabs-vcsrepo Preparing to install into /etc/puppetlabs/code/modules ... Downloading from https://forgeapi.puppet.com ... Installing -- do not interrupt ... /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)

Install a module to a specific environment:

$ puppet module install puppetlabs-vcsrepo --environment development Preparing to install into /etc/puppetlabs/code/environments/development/modules ... Downloading from https://forgeapi.puppet.com ... Installing -- do not interrupt ... /etc/puppetlabs/code/environments/development/modules └── puppetlabs-vcsrepo (v0.0.4)

Install a specific module version:

$ puppet module install puppetlabs-vcsrepo -v 0.0.4 Preparing to install into /etc/puppetlabs/modules ... Downloading from https://forgeapi.puppet.com ... Installing -- do not interrupt ... /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)

Install a module into a specific directory:

$ puppet module install puppetlabs-vcsrepo --target-dir=/opt/puppetlabs/puppet/modules Preparing to install into /opt/puppetlabs/puppet/modules ... Downloading from https://forgeapi.puppet.com ... Installing -- do not interrupt ... /opt/puppetlabs/puppet/modules └── puppetlabs-vcsrepo (v0.0.4)

Install a module into a specific directory and check for dependencies in other directories:

$ puppet module install puppetlabs-vcsrepo --target-dir=/opt/puppetlabs/puppet/modules --modulepath /etc/puppetlabs/code/modules Preparing to install into /opt/puppetlabs/puppet/modules ... Downloading from https://forgeapi.puppet.com ... Installing -- do not interrupt ... /opt/puppetlabs/puppet/modules └── puppetlabs-vcsrepo (v0.0.4)

Install a module from a release archive:

$ puppet module install puppetlabs-vcsrepo-0.0.4.tar.gz Preparing to install into /etc/puppetlabs/code/modules ... Downloading from https://forgeapi.puppet.com ... Installing -- do not interrupt ... /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)

Install a module from a release archive and ignore dependencies:

$ puppet module install puppetlabs-vcsrepo-0.0.4.tar.gz --ignore-dependencies Preparing to install into /etc/puppetlabs/code/modules ... Installing -- do not interrupt ... /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)

list

List installed modules:

$ puppet module list /etc/puppetlabs/code/modules ├── bodepd-create_resources (v0.0.1) ├── puppetlabs-bacula (v0.0.2) ├── puppetlabs-mysql (v0.0.1) ├── puppetlabs-sqlite (v0.0.1) └── puppetlabs-stdlib (v2.2.1) /opt/puppetlabs/puppet/modules (no modules installed)

List installed modules in a tree view:

$ puppet module list --tree /etc/puppetlabs/code/modules └─┬ puppetlabs-bacula (v0.0.2) ├── puppetlabs-stdlib (v2.2.1) ├─┬ puppetlabs-mysql (v0.0.1) │ └── bodepd-create_resources (v0.0.1) └── puppetlabs-sqlite (v0.0.1) /opt/puppetlabs/puppet/modules (no modules installed)

List installed modules from a specified environment:

$ puppet module list --environment production /etc/puppetlabs/code/modules ├── bodepd-create_resources (v0.0.1) ├── puppetlabs-bacula (v0.0.2) ├── puppetlabs-mysql (v0.0.1) ├── puppetlabs-sqlite (v0.0.1) └── puppetlabs-stdlib (v2.2.1) /opt/puppetlabs/puppet/modules (no modules installed)

List installed modules from a specified modulepath:

$ puppet module list --modulepath /opt/puppetlabs/puppet/modules /opt/puppetlabs/puppet/modules (no modules installed)

uninstall

Uninstall a module:

$ puppet module uninstall puppetlabs-ssh Removed /etc/puppetlabs/code/modules/ssh (v1.0.0)

Uninstall a module from a specific directory:

$ puppet module uninstall puppetlabs-ssh --modulepath /opt/puppetlabs/puppet/modules Removed /opt/puppetlabs/puppet/modules/ssh (v1.0.0)

Uninstall a module from a specific environment:

$ puppet module uninstall puppetlabs-ssh --environment development Removed /etc/puppetlabs/code/environments/development/modules/ssh (v1.0.0)

Uninstall a specific version of a module:

$ puppet module uninstall puppetlabs-ssh --version 2.0.0 Removed /etc/puppetlabs/code/modules/ssh (v2.0.0)

upgrade

upgrade an installed module to the latest version

$ puppet module upgrade puppetlabs-apache /etc/puppetlabs/puppet/modules └── puppetlabs-apache (v1.0.0 -> v2.4.0)

upgrade an installed module to a specific version

$ puppet module upgrade puppetlabs-apache --version 2.1.0 /etc/puppetlabs/puppet/modules └── puppetlabs-apache (v1.0.0 -> v2.1.0)

upgrade an installed module for a specific environment

$ puppet module upgrade puppetlabs-apache --environment test /etc/puppetlabs/code/environments/test/modules └── puppetlabs-apache (v1.0.0 -> v2.4.0)

## COPYRIGHT AND LICENSE
Copyright 2012 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING


puppet-node

title: puppet-node(8)

summary: View and manage node definitions\.

text:
# puppet-node(8)

## NAME
puppet-node - View and manage node definitions.

## SYNOPSIS
puppet node action [--terminus _TERMINUS]

## DESCRIPTION
This subcommand interacts with node objects, which are used by OpenVox to build a catalog. A node object consists of the node's facts, environment, node parameters (exposed in the parser as top-scope variables), and classes.

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

--terminus _TERMINUS

Indirector faces expose indirected subsystems of Puppet. These subsystems are each able to retrieve and alter a specific type of data (with the familiar actions of find, search, save, and destroy) from an arbitrary number of pluggable backends. In Puppet parlance, these backends are called terminuses.

Almost all indirected subsystems have a rest terminus that interacts with the puppet master's data. Most of them have additional terminuses for various local data models, which are in turn used by the indirected subsystem on the puppet master whenever it receives a remote request.

The terminus for an action is often determined by context, but occasionally needs to be set explicitly. See the "Notes" section of this face's manpage for more details.

## ACTIONS
clean - Clean up signed certs, cached facts, node objects, and reports for a node stored by the puppetmaster

SYNOPSIS

puppet node clean [--terminus _TERMINUS] host1 [host2 ...]

DESCRIPTION

Cleans up the following information a puppet master knows about a node:

Signed certificates - ($vardir/ssl/ca/signed/node.domain.pem)

Cached facts - ($vardir/yaml/facts/node.domain.yaml)

Cached node objects - ($vardir/yaml/node/node.domain.yaml)

Reports - ($vardir/reports/node.domain)

NOTE: this action now cleans up certs via Puppet Server's CA API. A running server is required for certs to be cleaned.

decrypt - Decrypt a value using the agent's own certificate

SYNOPSIS

puppet node decrypt [--terminus _TERMINUS] [-d DATA | --data DATA] [-e VARIABLE | --env VARIABLE]

DESCRIPTION

Decrypt a value using the agent's own certificate. You have three ways to pass data for decryption. You can pass it directly on the command line (if your kernel allows command strings that long), you can set it in an environment variable and pass the name of the variable, or you can pipe it using STDIN.

OPTIONS -d DATA | --data DATA - An string of data to decrypt

-e VARIABLE | --env VARIABLE - An environment variable containing data to decrypt

encrypt - Encrypt a value using a specified agent's certificate

SYNOPSIS

puppet node encrypt [--terminus _TERMINUS] [-t CERTNAME | --target CERTNAME] string

DESCRIPTION

Encrypt a value using a specified agent's certificate useful for pasting into a manifest for a node_encrypted_file resource type, or for a data value for a datacat fragment.

This will only run properly on a CA node with access to each node's signed public certificate.

OPTIONS -t CERTNAME | --target CERTNAME - Which agent to encrypt for

find - Retrieve a node object.

SYNOPSIS

puppet node find [--terminus _TERMINUS] host

DESCRIPTION

Retrieve a node object.

RETURNS

A hash containing the node's classes, environment, expiration, name, parameters (its facts, combined with any ENC-set parameters), and time. When used from the Ruby API: a Puppet::Node object.

RENDERING ISSUES: Rendering as string and json are currently broken; node objects can only be rendered as yaml.

info - Print the default terminus class for this face.

SYNOPSIS

puppet node info [--terminus _TERMINUS]

DESCRIPTION

Prints the default terminus class for this subcommand. Note that different run modes may have different default termini; when in doubt, specify the run mode with the '--run_mode' option.

## EXAMPLES
decrypt

$ puppet node decrypt --data encrypted blob of data $ puppet node decrypt --env environment variable containing blob of encrypted data $ echo encrypted blob of data | puppet node decrypt $ cat /file/with/encrypted/blob.txt | puppet node decrypt

encrypt

$ puppet node encrypt --certname testhost.example.com "some text to encrypt"

find

Retrieve an "empty" (no classes, no ENC-imposed parameters, and an environment of "production") node:

$ puppet node find somenode.puppetlabs.lan --terminus plain --render-as yaml

Retrieve a node using the Puppet Server's configured ENC:

$ puppet node find somenode.puppetlabs.lan --terminus exec --run_mode server --render-as yaml

Retrieve the same node from the Puppet Server:

$ puppet node find somenode.puppetlabs.lan --terminus rest --render-as yaml

## NOTES
This subcommand is an indirector face, which exposes find, search, save, and destroy actions for an indirected subsystem of Puppet. Valid termini for this face include:

- exec

- json

- memory

- msgpack

- plain

- rest

- store_configs

- yaml

## COPYRIGHT AND LICENSE
Copyright 2011 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING


puppet-parser

title: puppet-parser(8)

summary: Interact directly with the parser\.

text:
# puppet-parser(8)

## NAME
puppet-parser - Interact directly with the parser.

## SYNOPSIS
puppet parser action

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

## ACTIONS
•

dump - Outputs a dump of the internal parse tree for debugging: SYNOPSIS

puppet parser dump [--e source] [--[no-]validate] [--format old, pn, or json] [--pretty] [--format old|pn|json] [--pretty] { -e source | [templates ...] }

DESCRIPTION

This action parses and validates the Puppet DSL syntax without compiling a catalog or syncing any resources.

The output format can be controlled using the --format old|pn|json where:

- 'old' is the default, but now deprecated format which is not API.

- 'pn' is the Puppet Extended S-Expression Notation.

- 'json' outputs the same graph as 'pn' but with JSON syntax.

The output will be "pretty printed" when the option --pretty is given together with --format 'pn' or 'json'. This option has no effect on the 'old' format.

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.

OPTIONS --e <source> - dump one source expression given on the command line.

--format <old, pn, or json> - Get result in 'old' (deprecated format), 'pn' (new format), or 'json' (new format in JSON).

--pretty - Pretty print output. Only applicable together with --format pn or json

--[no-]validate - Whether or not to validate the parsed result, if no-validate only syntax errors are reported

RETURNS

A dump of the resulting AST model unless there are syntax or validation errors.

•

validate - Validate the syntax of one or more Puppet manifests.: SYNOPSIS

puppet parser validate [manifest] [manifest ...]

DESCRIPTION

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.

RETURNS

Nothing, or the first syntax error encountered.

## EXAMPLES
validate

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 AND LICENSE
Copyright 2014 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING


puppet-plugin

title: puppet-plugin(8)

summary: Interact with the OpenVox plugin system\.

text:
# puppet-plugin(8)

## NAME
puppet-plugin - Interact with the OpenVox plugin system.

## SYNOPSIS
puppet plugin action

## DESCRIPTION
This subcommand provides network access to the OpenVox server's store of plugins.

The OpenVox server serves Ruby code collected from the lib directories of its modules. These plugins can be used on agent nodes to extend Facter and implement custom types and providers. Plugins are normally downloaded by the OpenVox agent during the course of a run.

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

## ACTIONS
download - Download plugins from the puppet master.

SYNOPSIS

puppet plugin download

DESCRIPTION

Downloads plugins from the configured OpenVox server. Any plugins downloaded in this way will be used in all subsequent OpenVox activity. This action modifies files on disk.

RETURNS

A list of the files downloaded, or a confirmation that no files were downloaded. When used from the Ruby API, this action returns an array of the files downloaded, which will be empty if none were retrieved.

## EXAMPLES
download

Retrieve plugins from the puppet master:

$ puppet plugin download

Retrieve plugins from the puppet master (API example):

$ Puppet::Face[:plugin, '0.0.1'].download

## COPYRIGHT AND LICENSE
Copyright 2011 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING


puppet-report

title: puppet-report(8)

summary: Create, display, and submit reports\.

text:
# puppet-report(8)

## NAME
puppet-report - Create, display, and submit reports.

## SYNOPSIS
puppet report action [--terminus _TERMINUS]

## OPTIONS
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, server and 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://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.

--render-as FORMAT

The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.

--verbose

Whether to log verbosely.

--debug

Whether to log debug information.

--terminus _TERMINUS

Indirector faces expose indirected subsystems of Puppet. These subsystems are each able to retrieve and alter a specific type of data (with the familiar actions of find, search, save, and destroy) from an arbitrary number of pluggable backends. In Puppet parlance, these backends are called terminuses.

Almost all indirected subsystems have a rest terminus that interacts with the puppet master's data. Most of them have additional terminuses for various local data models, which are in turn used by the indirected subsystem on the puppet master whenever it receives a remote request.

The terminus for an action is often determined by context, but occasionally needs to be set explicitly. See the "Notes" section of this face's manpage for more details.

## ACTIONS
info - Print the default terminus class for this face.

SYNOPSIS

puppet report info [--terminus _TERMINUS]

DESCRIPTION

Prints the default terminus class for this subcommand. Note that different run modes may have different default termini; when in doubt, specify the run mode with the '--run_mode' option.

save - API only: submit a report.

SYNOPSIS

puppet report save [--terminus _TERMINUS] report

DESCRIPTION

API only: create or overwrite an object. As the Faces framework does not currently accept data from STDIN, save actions cannot currently be invoked from the command line.

RETURNS

Nothing.

submit - API only: submit a report with error handling.

SYNOPSIS

puppet report submit [--terminus _TERMINUS] report

DESCRIPTION

API only: Submits a report to the OpenVox server. This action is essentially a shortcut and wrapper for the save action with the rest terminus, and provides additional details in the event of a failure.

## EXAMPLES
save

From the implementation of puppet report submit (API example):

begin Puppet::Transaction::Report.indirection.terminus_class = :rest Puppet::Face[:report, "0.0.1"].save(report) Puppet.notice "Uploaded report for #{report.name}" rescue => detail Puppet.log_exception(detail, "Could not send report: #{detail}") end

submit

API example:report = Puppet::Face[:catalog, '0.0.1'].apply Puppet::Face[:report, '0.0.1'].submit(report) return report

## NOTES
This subcommand is an indirector face, which exposes find, search, save, and destroy actions for an indirected subsystem of Puppet. Valid termini for this face include:

- json

- msgpack

- processor

- rest

- yaml

## COPYRIGHT AND LICENSE
Copyright 2011 by Puppet Inc., Vox Pupuli Apache 2 license; see COPYING


puppet-resource

title: puppet-resource(8)

text:
# puppet-resource(8)

## NAME
puppet-resource - The OpenVox resource abstraction layer shell

## SYNOPSIS
Uses the OpenVox RAL to directly interact with the system.

## USAGE
puppet resource [-h|--help] [-d|--debug] [-v|--verbose] [-e|--edit] [-p|--param parameter] [-t|--types] [-y|--to_yaml] type [name] [attribute=value ...]

## DESCRIPTION
This command provides simple facilities for converting current system state into Puppet code, along with some ability to modify the current state using Puppet's RAL.

By default, you must at least provide a type to list, in which case puppet resource will tell you everything it knows about all resources of that type. You can optionally specify an instance name, and puppet resource will only describe that single instance.

If given a type, a name, and a series of attribute=value pairs, puppet resource will modify the state of the specified resource. Alternately, if given a type, a name, and the '--edit' flag, puppet resource will write its output to a file, open that file in an editor, and then apply the saved file as a Puppet transaction.

## OPTIONS
Note that any setting that's valid in the configuration file is also a valid long argument. For example, 'ssldir' is a valid setting, so you can specify '--ssldir directory' 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'.

--debug

Enable full debugging.

--edit

Write the results of the query to a file, open the file in an editor, and read the file back in as an executable Puppet manifest.

--help

Print this help message.

--param

Add more parameters to be outputted from queries.

--types

List all available types.

--verbose

Print extra information.

--to_yaml

Output found resources in yaml format, suitable to use with Hiera and create_resources.

--fail

Fails and returns an exit code of 1 if the resource could not be modified.

## EXAMPLE
This example uses puppet resource to return a Puppet configuration for the user luke:

```
$ puppet resource user luke
user { 'luke':

 home => '/home/luke',

 uid => '100',

 ensure => 'present',

 comment => 'Luke Kanies,,,',

 gid => '1000',

 shell => '/bin/bash',

 groups => ['sysadmin','audio','video','puppet']
}
```

## AUTHOR
Luke Kanies

## COPYRIGHT
Copyright (c) 2011 Puppet Inc. Copyright (c) 2024 Vox Pupuli Licensed under the Apache 2.0 License


puppet-script

title: puppet-script(8)

text:
# puppet-script(8)

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

## SYNOPSIS
Runs a puppet language script without compiling a catalog.

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

## DESCRIPTION
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.

## OPTIONS
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'.

--debug

Enable full debugging.

--help

Print this help message

--logdest

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.

--noop

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

Execute a specific piece of Puppet code

--verbose

Print extra information.

## EXAMPLE

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

## AUTHOR
Henrik Lindberg

## COPYRIGHT
Copyright (c) 2017 Puppet Inc. Copyright (c) 2024 Vox Pupuli Licensed under the Apache 2.0 License


puppet-ssl

title: puppet-ssl(8)

text:
# puppet-ssl(8)

## NAME
puppet-ssl - Manage SSL keys and certificates for OpenVox SSL clients

## SYNOPSIS
Manage SSL keys and certificates for clients needing to communicate with an OpenVox infrastructure.

## USAGE
puppet ssl action [-h|--help] [-v|--verbose] [-d|--debug] [--localca] [--target CERTNAME]

## OPTIONS

- --help: Print this help message.

- --verbose: Print extra information.

- --debug: Enable full debugging.

- --localca Also clean the local CA certificate and CRL.

- --target CERTNAME Clean the specified device certificate instead of this host's certificate.

## ACTIONS
bootstrap

Perform all of the steps necessary to request and download a client certificate. If autosigning is disabled, then puppet will wait every waitforcert seconds for its certificate to be signed. To only attempt once and never wait, specify a time of 0. Since waitforcert is a Puppet setting, it can be specified as a time interval, such as 30s, 5m, 1h.

submit_request

Generate a certificate signing request (CSR) and submit it to the CA. If a private and public key pair already exist, they will be used to generate the CSR. Otherwise, a new key pair will be generated. If a CSR has already been submitted with the given certname, then the operation will fail.

generate_request

Generate a certificate signing request (CSR). If a private and public key pair exist, they will be used to generate the CSR. Otherwise a new key pair will be generated.

download_cert

Download a certificate for this host. If the current private key matches the downloaded certificate, then the certificate will be saved and used for subsequent requests. If there is already an existing certificate, it will be overwritten.

verify

Verify the private key and certificate are present and match, verify the certificate is issued by a trusted CA, and check revocation status.

clean

Remove the private key and certificate related files for this host. If --localca is specified, then also remove this host's local copy of the CA certificate(s) and CRL bundle. if --target CERTNAME is specified, then remove the files for the specified device on this host instead of this host.

show

Print the full-text version of this host's certificate.

COPYRIGHT ------ Copyright (c) 2011 Puppet Inc. Copyright (c) 2024 Vox Pupuli Licensed under the Apache 2.0 License