Class: Chef::Provider::ChefEnvironment

Inherits:
Cheffish::ChefProviderBase show all
Defined in:
lib/chef/provider/chef_environment.rb

Instance Method Summary collapse

Methods inherited from Cheffish::ChefProviderBase

#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
# File 'lib/chef/provider/chef_environment.rb', line 52

def augment_new_json(json)
  # Apply modifiers

  json['default_attributes'] = apply_modifiers(new_resource.default_attribute_modifiers, json['default_attributes'])
  json['override_attributes'] = apply_modifiers(new_resource.override_attribute_modifiers, json['override_attributes'])
  json
end

#data_handlerObject



67
68
69
# File 'lib/chef/provider/chef_environment.rb', line 67

def data_handler
  Chef::ChefFS::DataHandler::EnvironmentDataHandler.new
end

#keysObject



71
72
73
74
75
76
77
78
79
# File 'lib/chef/provider/chef_environment.rb', line 71

def keys
  {
    'name' => :name,
    'description' => :description,
    'cookbook_versions' => :cookbook_versions,
    'default_attributes' => :default_attributes,
    'override_attributes' => :override_attributes
  }
end

#load_current_resourceObject



40
41
42
43
44
45
46
47
48
49
50
# File 'lib/chef/provider/chef_environment.rb', line 40

def load_current_resource
  begin
    @current_resource = json_to_resource(rest.get("environments/#{new_resource.name}"))
  rescue Net::HTTPServerException => e
    if e.response.code == "404"
      @current_resource = not_found_resource
    else
      raise
    end
  end
end

#resource_classObject

Helpers



63
64
65
# File 'lib/chef/provider/chef_environment.rb', line 63

def resource_class
  Chef::Resource::ChefEnvironment
end

#whyrun_supported?Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/chef/provider/chef_environment.rb', line 10

def whyrun_supported?
  true
end