Module: Chef::Provisioning

Defined in:
lib/extensions/chef/provisioning.rb,
lib/extensions/chef/provisioning/chef_run_data.rb,
lib/extensions/chef/provisioning/aws_driver/driver.rb

Defined Under Namespace

Modules: AWSDriver Classes: ChefRunData

Class Method Summary collapse

Class Method Details

.connect_to_machine(machine_spec, config = Cheffish.profiled_config, driver = nil) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/extensions/chef/provisioning.rb', line 4

def self.connect_to_machine(machine_spec, config = Cheffish.profiled_config, driver=nil)

  chef_server = Cheffish.default_chef_server(config)
  if machine_spec.is_a?(String)
    machine_spec = chef_managed_entry_store(chef_server).get(:machine, machine_spec)
  end
  driver = driver_for_url(machine_spec.driver_url, config) unless driver
  if driver
    machine_options = {:convergence_options => {:chef_server => chef_server}}
    machine_options = Cheffish::MergedConfig.new(config[:machine_options], machine_options) if config[:machine_options]
    driver.connect_to_machine(machine_spec, machine_options)
  else
    nil
  end
end