Sha256: 7441378c19c0a9ae5b37b8606057bc3086a302100b23044ed88a49b16209e23e
Contents?: true
Size: 1.11 KB
Versions: 1
Compression:
Stored size: 1.11 KB
Contents
# frozen_string_literal: true require 'bolt/plugin/puppetdb' require 'bolt/plugin/terraform' require 'bolt/plugin/pkcs7' require 'bolt/plugin/prompt' require 'bolt/plugin/task' module Bolt class Plugin class PluginError < Bolt::Error def initialize(msg, plugin, hook) mess = "Error executing plugin: #{plugin.name} from #{hook}: #{msg}" super(mess, 'bolt/plugin-error') end end def self.setup(config, pdb_client) plugins = new(config) plugins.add_plugin(Bolt::Plugin::Puppetdb.new(pdb_client)) plugins.add_plugin(Bolt::Plugin::Terraform.new) plugins.add_plugin(Bolt::Plugin::Prompt.new) plugins.add_plugin(Bolt::Plugin::Pkcs7.new(config.boltdir.path, config.plugins['pkcs7'] || {})) plugins.add_plugin(Bolt::Plugin::Task.new(config)) plugins end def initialize(_config) @plugins = {} end def add_plugin(plugin) @plugins[plugin.name] = plugin end def for_hook(hook) @plugins.filter { |_n, plug| plug.hooks.include? hook } end def by_name(plugin_name) @plugins[plugin_name] end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bolt-1.26.0 | lib/bolt/plugin.rb |