Sha256: c9c2a0653dd73861d365b5769f3a54bc13420ca3cb6e95dac4a353ee562b28d8

Contents?: true

Size: 901 Bytes

Versions: 3

Compression:

Stored size: 901 Bytes

Contents

require 'chef/provider/lwrp_base'
require 'chef/provisioning/chef_provider_action_handler'
require 'chef/provisioning/machine'

class Chef
class Provider
class MachineExecute < Chef::Provider::LWRPBase
  provides :machine_execute

  def action_handler
    @action_handler ||= Chef::Provisioning::ChefProviderActionHandler.new(self)
  end

  use_inline_resources

  def whyrun_supported?
    true
  end

  def machine
    @machine ||= begin
      if new_resource.machine.kind_of?(Chef::Provisioning::Machine)
        new_resource.machine
      else
        run_context.chef_provisioning.connect_to_machine(new_resource.machine, new_resource.chef_server)
      end
    end
  end

  action :run do
    machine.execute(action_handler, new_resource.command, :stream => new_resource.live_stream,
                                                          :timeout => new_resource.timeout)
  end

end
end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
chef-provisioning-2.7.6 lib/chef/provider/machine_execute.rb
chef-provisioning-2.7.4 lib/chef/provider/machine_execute.rb
chef-provisioning-2.7.2 lib/chef/provider/machine_execute.rb