Class: Puppet::Util::TaskHelper
- Inherits:
-
Object
- Object
- Puppet::Util::TaskHelper
- Defined in:
- lib/puppet/util/task_helper.rb
Overview
Sets up the transport for a remote task
Instance Method Summary collapse
- #credentials ⇒ Object
-
#initialize(transport_name) ⇒ TaskHelper
constructor
A new instance of TaskHelper.
- #params ⇒ Object
- #target ⇒ Object
- #transport ⇒ Object
Constructor Details
#initialize(transport_name) ⇒ TaskHelper
Returns a new instance of TaskHelper.
6 7 8 9 10 11 12 |
# File 'lib/puppet/util/task_helper.rb', line 6 def initialize(transport_name) @transport_name = transport_name @transport = {} return unless params.key? '_installdir' add_plugin_paths(params['_installdir']) end |
Instance Method Details
#credentials ⇒ Object
32 33 34 |
# File 'lib/puppet/util/task_helper.rb', line 32 def credentials @credentials ||= target.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } end |
#params ⇒ Object
24 25 26 |
# File 'lib/puppet/util/task_helper.rb', line 24 def params @params ||= JSON.parse(ENV['PARAMS'] || STDIN.read) end |
#target ⇒ Object
28 29 30 |
# File 'lib/puppet/util/task_helper.rb', line 28 def target @target ||= params['_target'] end |
#transport ⇒ Object
14 15 16 17 18 19 20 21 22 |
# File 'lib/puppet/util/task_helper.rb', line 14 def transport begin require 'puppet/resource_api/transport' rescue LoadError require 'puppet_x/puppetlabs/panos/transport_shim' end @transport[@transport_name] ||= Puppet::ResourceApi::Transport.connect(@transport_name, credentials) end |