Plugins
Plugins allow Bolt to dynamically load data during a Bolt run. Plugins are essentially just modules containing tasks with a bolt_plugin.json
file identifying which tasks are plugins and what type of plugins they are. Some are built into Bolt, while others can be added to extend the functionality.
There are three types of Bolt plugins:
- Reference: Used to fetch data from external sources, such as loading information into the inventory file
- Secret: Used to create keys to encrypt text and decrypt cipher text
- Puppet library: Used to install Puppet libraries when the
apply_prep
function is called on a target
We will look at these in detail in the following subsections.
Reference plugins
Reference plugins can be used in configuration files such as inventory.yaml
or bolt-project.yaml
using a _plugin
key with the plugin name as the value and followed by parameters associated with the plugin. For example, to use the puppetdb
plugin and query and select...