Puppet action pack


The Puppet action pack contains the actions for the Puppet product.

Note

These actions are available on experimental support.

The following table lists the Puppet actions:

Action

Description

Dispatch Preprocess

  • Checks for the existence of the module named, rlm_module and creates the module if it does not already exist
  • Creates the manifest file that contains classes necessary for the execution of the deployment process

Dispatch Fileput

  • Copies files to rlm_module on the Puppet server
  • Checks for the Puppet defined type for this action in rlm_module and creates it, if the defined type does not already exist
  • Updates the process manifest with the relevant deployment task to actually put the file on the target server

Dispatch Fileget

  • Not supported, exits with an error if invoked
  • Other than the Puppet or Chef dispatcher, this action can be executed through any other dispatcher (for example, NSH dispatcher)

Dispatch Srun

  • Looks for special cases, such as:
    • Config Get:  Lists modules and manifests on the Puppet Master server
    • Execute_Puppet_Module:  Adds this module to the process manifest for the particular Puppet Agent run
  • Checks for the existence of the Puppet defined type for the Dispatch fileput action and creates it if it does not already exist
  • Checks for the existence of the Puppet defined type for the Dispatch srun action and creates it if it does not already exist
  • Copies that action which is a part of the current deployment process (for example, Execute Command Line) to the module files directory (windows or default) depending on the target host platform
  • Creates a fileput entry for the action file in the process manifest
  • Looks for the required data files (VL_INPUT_DATA) to send as a file. If the data files exist, then it adds them to the manifest file
  • Creates an srun entry to execute the relevant action on the Puppet agent in the process manifest
  • Adds environment variables to the srun entry for the deployment task

Dispatch Prun

  • Not supported, exits with an error if invoked
  • Other than the Puppet or Chef dispatcher, this action can be executed through any other dispatcher (for example, NSH dispatcher)

Dispatch Postprocess

  •  Creates cleanup scripts to remove the temporary files from the Puppet agent after the deployment process is complete
  • Adds fileput and srun tasks to the process manifest
  • Adds task ordering to process for a sequential run
  • Adds a notification file to the Puppet External Node Classifier (Puppet ENC) to provide class name to the Puppet Agent, when requested
  •  Verifies if all tasks were invoked on the target
  • Once invoked, removes the notification file for ENC to prevent subsequent runs on the Puppet Agent
  • If tasks are not invoked, sends an error to the log to verify if the Puppet Agent is running

Other actions

These actions get executed through the srun action.

Execute Puppet Module

Execute any Puppet module as a part of the BMC Release Package and Deployment process by using the Invoke Action activity library.

Note: Requires the Puppet module name to be added to the process, under the Configure Panel, in the Action Arguments box.
For example, if you want to execute the core_permissions Puppet module, you must mention core_permissions in the Action Arguments box.

 

Config Get

Pulls the configuration data from the Puppet Master server and returns a list of modules and manifests available (to the dispatcher) on the Puppet Master server.

Note: This action requires a channel to be setup, that uses a channel template satisfying the following two conditions:

  • The channel template must be created with the type selected as Puppet.
  • The channel template must have the Managed flag as Yes under the Config tab.

 

Related topic

Integrating-with-Puppet

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*