Provided by: puppet-agent_7.23.0-1_all bug

NAME

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

SYNOPSIS

       puppet catalog action [--terminus _TERMINUS]

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

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

              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.

       compile - Compile a catalog.
              SYNOPSIS

              puppet catalog compile [--terminus _TERMINUS]

              DESCRIPTION

              Compiles  a  catalog  locally  for  a  node,  requiring  access  to  modules,  node
              classifier, etc.

              RETURNS

              A serialized catalog.

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

              puppet catalog download [--terminus _TERMINUS]

              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 the node from which the command is run.
              SYNOPSIS

              puppet catalog find [--terminus _TERMINUS] certname

              DESCRIPTION

              Retrieve the catalog for the node from which the command is run.

              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]

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

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

              puppet catalog select [--terminus _TERMINUS] 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

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

       compile

       Compile catalog for node 'mynode':

       $ puppet catalog compile mynode --codedir ...

       download

       Retrieve and store a catalog:

       $ puppet catalog download

       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:

       ○   compilerjsonmsgpackreststore_configsyaml

COPYRIGHT AND LICENSE

       Copyright 2011 by Puppet Inc. Apache 2 license; see COPYING