lib/chef_metal.rb in chef-metal-0.8 vs lib/chef_metal.rb in chef-metal-0.8.1

- old
+ new

@@ -65,6 +65,17 @@ cluster_type = provisioner_url.split(':', 2)[0] require "chef_metal/provisioner_init/#{cluster_type}_init" provisioner_class = @@registered_provisioner_classes[cluster_type] provisioner_class.inflate(node) end + + def self.connect_to_machine(name) + rest = Chef::ServerAPI.new() + node = rest.get("/nodes/#{name}") + provisioner_output = node['normal']['provisioner_output'] + if !provisioner_output + raise "Node #{name} was not provisioned with Metal." + end + provisioner = provisioner_for_node(node) + provisioner.connect_to_machine(node) + end end