Module: ChefMetal
- Defined in:
- lib/chef_metal/action_handler.rb,
lib/chef_metal.rb,
lib/chef_metal/driver.rb,
lib/chef_metal/machine.rb,
lib/chef_metal/version.rb,
lib/chef_metal/transport.rb,
lib/chef_metal/provisioner.rb,
lib/chef_metal/transport/ssh.rb,
lib/chef_metal/aws_credentials.rb,
lib/chef_metal/inline_resource.rb,
lib/chef_metal/transport/winrm.rb,
lib/chef_metal/convergence_strategy.rb,
lib/chef_metal/machine/unix_machine.rb,
lib/chef_metal/machine/basic_machine.rb,
lib/chef_metal/openstack_credentials.rb,
lib/chef_metal/machine/windows_machine.rb,
lib/chef_metal/provider_action_handler.rb,
lib/chef_metal/convergence_strategy/install_sh.rb,
lib/chef_metal/convergence_strategy/install_msi.rb,
lib/chef_metal/convergence_strategy/no_converge.rb,
lib/chef_metal/convergence_strategy/install_cached.rb,
lib/chef_metal/convergence_strategy/precreate_chef_objects.rb
Overview
This is included in the metal provisioners to proxy from generic requests needed to specific provider actions
Defined Under Namespace
Modules: ProviderActionHandler
Classes: AWSCredentials, ActionHandler, ConvergenceStrategy, InlineResource, Machine, OpenstackCredentials, Provisioner, Transport
Constant Summary
collapse
- VERSION =
'0.8'
- @@enclosing_provisioner =
nil
- @@enclosing_provisioner_options =
nil
- @@registered_provisioner_classes =
{}
Class Method Summary
collapse
Class Method Details
.add_registered_provisioner_class(name, provisioner) ⇒ Object
59
60
61
|
# File 'lib/chef_metal.rb', line 59
def self.add_registered_provisioner_class(name, provisioner)
@@registered_provisioner_classes[name] = provisioner
end
|
.enclosing_provisioner ⇒ Object
42
43
44
|
# File 'lib/chef_metal.rb', line 42
def self.enclosing_provisioner
@@enclosing_provisioner
end
|
.enclosing_provisioner=(provisioner) ⇒ Object
45
46
47
|
# File 'lib/chef_metal.rb', line 45
def self.enclosing_provisioner=(provisioner)
@@enclosing_provisioner = provisioner
end
|
.enclosing_provisioner_options ⇒ Object
50
51
52
|
# File 'lib/chef_metal.rb', line 50
def self.enclosing_provisioner_options
@@enclosing_provisioner_options
end
|
.enclosing_provisioner_options=(provisioner_options) ⇒ Object
54
55
56
|
# File 'lib/chef_metal.rb', line 54
def self.enclosing_provisioner_options=(provisioner_options)
@@enclosing_provisioner_options = provisioner_options
end
|
.inline_resource(action_handler, &block) ⇒ Object
37
38
39
|
# File 'lib/chef_metal.rb', line 37
def self.inline_resource(action_handler, &block)
InlineResource.new(action_handler).instance_eval(&block)
end
|
.provisioner_for_node(node) ⇒ Object
63
64
65
66
67
68
69
|
# File 'lib/chef_metal.rb', line 63
def self.provisioner_for_node(node)
provisioner_url = node['normal']['provisioner_output']['provisioner_url']
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
|
.with_provisioner(provisioner) ⇒ Object
.with_provisioner_options(provisioner_options) ⇒ Object