---
name: "puppet-resource_type"
section: "8"
platform: "linux"
package: "puppet"
version: "4.8.2-5"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/puppet-resource_type"
---

# puppet-resource\_type(8)

View classes, defined resource types, and nodes from all manifests.

## NAME

**puppet-resource\_type** - View classes, defined resource types, and nodes from all manifests.

## SYNOPSIS

puppet resource\_type *action* \[--terminus TERMINUS\] \[--extra HASH\]

## DESCRIPTION

This subcommand reads information about the resource collections (classes, nodes, and defined types) available in Puppet´s site manifest and modules.

It will eventually be extended to examine native resource types.

## 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://docs.puppetlabs.com/references/stable/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.

- \--extra HASH

  A terminus can take additional arguments to refine the operation, which are passed as an arbitrary hash to the back-end. Anything passed as the extra value is just send direct to the back-end.

- \--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

- **find** - Retrieve info about a resource collection.

  **SYNOPSIS**

-

  puppet resource\_type find \[--terminus TERMINUS\] \[--extra HASH\] *collection\_name*

-

  **DESCRIPTION**

-

  Retrieve info about a resource collection.

-

  **RETURNS**

-

  A hash of info about the requested resource collection. When used from the Ruby API: returns a Puppet::Resource::Type object.

-

  RENDERING ISSUES: yaml and string output for this indirection are currently unusable; use json instead.

-

  **NOTES**

-

  If two resource collections share the same name (e.g. you have both a node and a class named "default"), **find** will only return one of them. This can be worked around by using **search** instead.

- **info** - Print the default terminus class for this face.

  **SYNOPSIS**

-

  puppet resource\_type info \[--terminus TERMINUS\] \[--extra HASH\]

-

  **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.

- **search** - Search for collections matching a regular expression.

  **SYNOPSIS**

-

  puppet resource\_type search \[--terminus TERMINUS\] \[--extra HASH\] *regular\_expression*

-

  **DESCRIPTION**

-

  Search for collections matching a regular expression.

-

  **RETURNS**

-

  An array of hashes of resource collection info. When used from the Ruby API: returns an array of Puppet::Resource::Type objects.

-

  RENDERING ISSUES: yaml and string output for this indirection are currently unusable; use json instead.

## EXAMPLES

**find**

Retrieve info about a specific locally-defined class:

$ puppet resource\_type find ntp::disabled

Retrieve info from the puppet master about a specific class:

$ puppet resource\_type find ntp --terminus rest

**search**

Retrieve all classes, nodes, and defined types:

$ puppet resource\_type search ´.\*´

Search for classes related to Nagios:

$ puppet resource\_type search nagios

## NOTES

The **find** and **search** actions return similar hashes of resource collection info. These hashes will include the following four keys:

- •

  **file** (a string)

- •

  **name** (a string)

- •

  **type** (*hostclass*, *definition*, or *node*)

- •

  **line** (an integer)

-

  They may optionally include the following keys:

- •

  **parent** (*name\_of\_resource\_collection*)

- •

  **arguments** (a hash of parameters and default values)

- •

  **doc** (a string)

-

  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:

- •

  **parser**

- •

  **rest**

-

  ## COPYRIGHT AND LICENSE

Copyright 2011 by Puppet Labs Apache 2 license; see COPYING
