Class: Chef::Provider::ChefNode
Instance Method Summary
collapse
#apply_modifiers, #apply_run_list_modifiers, #augment_current_json, #current_json, #current_resource_exists?, #json_differences, #json_differences_internal, #json_to_resource, #new_json, #normalize, #normalize_for_post, #normalize_for_put, #not_found_resource, #resource_to_json, #rest, #same_run_list_item
Instance Method Details
#augment_new_json(json) ⇒ Object
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/chef/provider/chef_node.rb', line 52
def augment_new_json(json)
json['normal']['tags'] = current_json['normal']['tags'] unless json['normal']['tags']
json['run_list'] = apply_run_list_modifiers(new_resource.run_list_modifiers, new_resource.run_list_removers, json['run_list'])
json['normal'] = apply_modifiers(new_resource.attribute_modifiers, json['normal'])
json['default'] = current_json['default']
json['override'] = current_json['override']
json['automatic'] = current_json['automatic']
json
end
|
#data_handler ⇒ Object
73
74
75
|
# File 'lib/chef/provider/chef_node.rb', line 73
def data_handler
Chef::ChefFS::DataHandler::NodeDataHandler.new
end
|
#keys ⇒ Object
77
78
79
80
81
82
83
84
|
# File 'lib/chef/provider/chef_node.rb', line 77
def keys
{
'name' => :name,
'chef_environment' => :chef_environment,
'run_list' => :run_list,
'normal' => :attributes
}
end
|
#load_current_resource ⇒ Object
40
41
42
43
44
45
46
47
48
49
50
|
# File 'lib/chef/provider/chef_node.rb', line 40
def load_current_resource
begin
@current_resource = json_to_resource(rest.get("nodes/#{new_resource.name}"))
rescue Net::HTTPServerException => e
if e.response.code == "404"
@current_resource = not_found_resource
else
raise
end
end
end
|
#resource_class ⇒ Object
69
70
71
|
# File 'lib/chef/provider/chef_node.rb', line 69
def resource_class
Chef::Resource::ChefNode
end
|
#whyrun_supported? ⇒ Boolean
10
11
12
|
# File 'lib/chef/provider/chef_node.rb', line 10
def whyrun_supported?
true
end
|