Provided by: puppet-common_3.4.3-1ubuntu1.3_all bug

NAME

       puppet-catalog - Compile, save, view, and convert catalogs.

SYNOPSIS

       puppet catalog action [--terminus TERMINUS] [--extra HASH]

DESCRIPTION

       This subcommand deals with catalogs, which are compiled per-node artifacts generated from a set of Puppet
       manifests. By default, it interacts with the compiling subsystem and compiles a catalog using the default
       manifest  and  certname, but you can change the source of the catalog with the --terminus option. You can
       also choose to print any catalog in ´dot´ format (for easy graph viewing with  OmniGraffle  or  Graphviz)
       with ´--render-as dot´.

OPTIONS

       Note  that  any  configuration  parameter  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 configuration parameters, so you can specify --server <servername>, or --run_mode <runmode> as
       an argument.

       See             the             configuration             file              documentation              at
       http://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

       apply - Find and apply a catalog.
              SYNOPSIS

              puppet catalog apply [--terminus TERMINUS] [--extra HASH]

              DESCRIPTION

              Finds and applies a catalog. This action takes no arguments, but the source of the catalog can  be
              managed with the --terminus option.

              RETURNS

              Nothing. When used from the Ruby API, returns a Puppet::Transaction::Report object.

       destroy - Invalid for this subcommand.
              SYNOPSIS

              puppet catalog destroy [--terminus TERMINUS] [--extra HASH] key

              DESCRIPTION

              Invalid for this subcommand.

       download - Download this node´s catalog from the puppet master server.
              SYNOPSIS

              puppet catalog download [--terminus TERMINUS] [--extra HASH]

              DESCRIPTION

              Retrieves  a  catalog  from  the  puppet  master and saves it to the local yaml cache. This action
              always contacts the puppet master and will ignore alternate termini.

              The saved catalog can be used in any subsequent catalog action by specifying ´--terminus yaml´ for
              that action.

              RETURNS

              Nothing.

              NOTES

              When   used   from   the   Ruby   API,   this   action   has   a   side    effect    of    leaving
              Puppet::Resource::Catalog.indirection.terminus_class  set to yaml. The terminus must be explicitly
              re-set for subsequent catalog actions.

       find - Retrieve the catalog for a node.
              SYNOPSIS

              puppet catalog find [--terminus TERMINUS] [--extra HASH] certname

              DESCRIPTION

              Retrieve the catalog for a node.

              RETURNS

              A serialized catalog. When used from the Ruby API, returns a Puppet::Resource::Catalog object.

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

              puppet catalog 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.

       save - API only: create or overwrite an object.
              SYNOPSIS

              puppet catalog save [--terminus TERMINUS] [--extra HASH] key

              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.

       search - Invalid for this subcommand.
              SYNOPSIS

              puppet catalog search [--terminus TERMINUS] [--extra HASH] query

              DESCRIPTION

              Invalid for this subcommand.

       select - Retrieve a catalog and filter it for resources of a given type.
              SYNOPSIS

              puppet catalog select [--terminus TERMINUS] [--extra HASH] host resource_type

              DESCRIPTION

              Retrieves a catalog for the specified host, then searches it for all resources  of  the  requested
              type.

              RETURNS

              A  list  of  resource  references  ("Type[title]").  When  used  from the API, returns an array of
              Puppet::Resource objects excised from a catalog.

              NOTES

              By default, this action will retrieve a catalog from Puppet´s compiler subsystem;  you  must  call
              the action with --terminus rest if you wish to retrieve a catalog from the puppet master.

              FORMATTING  ISSUES: This action cannot currently render useful yaml; instead, it returns an entire
              catalog. Use json instead.

EXAMPLES

       apply

       Apply the locally cached catalog:

       $ puppet catalog apply --terminus yaml

       Retrieve a catalog from the master and apply it, in one step:

       $ puppet catalog apply --terminus rest

       From secret_agent.rb (API example):

           # ...
           Puppet::Face[:catalog, ´0.0.1´].download
           # (Termini are singletons; catalog.download has a side effect of
           # setting the catalog terminus to yaml)
           report  = Puppet::Face[:catalog, ´0.0.1´].apply
           # ...

       download

       Retrieve and store a catalog:

       $ puppet catalog download

       From secret_agent.rb (API example):

           Puppet::Face[:plugin, ´0.0.1´].download
           Puppet::Face[:facts, ´0.0.1´].upload
           Puppet::Face[:catalog, ´0.0.1´].download
           # ...

       select

       Ask the puppet master for a list of managed file resources for a node:

       $ puppet catalog select --terminus rest somenode.magpie.lan file

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:

       •   active_recordcompilerjsonqueuereststatic_compilerstore_configsyaml

COPYRIGHT AND LICENSE

       Copyright 2011 by Puppet Labs Apache 2 license; see COPYING

Puppet Labs, LLC                                  January 2013                                 PUPPET-CATALOG(8)