diff options
author | PrajaktaPurohit <prajakta@opscode.com> | 2012-11-21 17:43:30 -0800 |
---|---|---|
committer | Lamont Granquist <lamont@opscode.com> | 2012-12-19 15:54:41 -0800 |
commit | 6a017bf37fa8f3ce1374427942066bf81d681eca (patch) | |
tree | d327540d5820deb69809f0b4ac32e2985a7f863f /lib/chef/provider | |
parent | 8124fd3ec15fac2ed071eb1174c69cc265833e2e (diff) | |
download | chef-6a017bf37fa8f3ce1374427942066bf81d681eca.tar.gz |
Fixing action create provider implementation
Diffstat (limited to 'lib/chef/provider')
-rw-r--r-- | lib/chef/provider/registry_key.rb | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/lib/chef/provider/registry_key.rb b/lib/chef/provider/registry_key.rb index 315537e035..b6ae61bb1f 100644 --- a/lib/chef/provider/registry_key.rb +++ b/lib/chef/provider/registry_key.rb @@ -45,8 +45,6 @@ class Chef @current_resource.recursive(@new_resource.recursive) if registry.key_exists?(@new_resource.key) @current_resource.values(registry.get_values(@new_resource.key)) - else - @current_resource.values(@new_resource.values) end values_to_hash(@current_resource.values) @current_resource @@ -58,11 +56,10 @@ class Chef def values_to_hash(values) if values - @name_hash = Hash[values.map { |val| [val.delete(:name), val] }] + @name_hash = Hash[values.map { |val| [val[:name], val] }] else @name_hash = {} end - puts @name_hash end def define_resource_requirements @@ -84,17 +81,16 @@ class Chef end def action_create - if !@current_resource.key + if !registry.key_exists?(@current_resource.key) registry.create_key(@new_resource.key, @new_resource.recursive) end @new_resource.values.each do |value| if @name_hash.has_key?(value[:name]) - if @name_hash[value[:name]][:type] == registry.get_type_from_num(value[:type]) + if registry.type_matches!(@new_resource.key, value) + # if @name_hash[value[:name]][:type] == registry.get_type_from_num(value[:type]) if @name_hash[value[:name]][:data] != value[:data] registry.update_value(@new_resource.key, value) end - else - # Raise exception that types are different end else registry.create_value(@new_resource.key, value) @@ -117,7 +113,7 @@ class Chef # create_all_keys(@new_resource.key, @new_resource.value, architecture, create_intermediate=false) # end # end -# + # def action_delete # if key_exists?(@new_resource.key, @new_resource.value, architecture) # registry_delete(@new_resource.key, @new_resource.value, architecture) |