summaryrefslogtreecommitdiff
path: root/lib/chef/data_bag_item.rb
diff options
context:
space:
mode:
authorLamont Granquist <lamont@scriptkiddie.org>2015-01-15 15:05:59 -0800
committerLamont Granquist <lamont@scriptkiddie.org>2015-02-11 19:12:06 -0800
commit728717d1b5e489f82526b8390ab42846939392ee (patch)
tree770ffa29ce7464791352e2fd5864083b686f1226 /lib/chef/data_bag_item.rb
parent3743da85e48f2fc57e48ed62c014c1070bb69f38 (diff)
downloadchef-728717d1b5e489f82526b8390ab42846939392ee.tar.gz
allow dep injecting chef_server_rest into objects
Diffstat (limited to 'lib/chef/data_bag_item.rb')
-rw-r--r--lib/chef/data_bag_item.rb7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/chef/data_bag_item.rb b/lib/chef/data_bag_item.rb
index fc0ee74c0c..9f92e26c50 100644
--- a/lib/chef/data_bag_item.rb
+++ b/lib/chef/data_bag_item.rb
@@ -37,6 +37,8 @@ class Chef
VALID_ID = /^[\.\-[:alnum:]_]+$/
+ attr_accessor :chef_server_rest
+
def self.validate_id!(id_str)
if id_str.nil? || ( id_str !~ VALID_ID )
raise Exceptions::InvalidDataBagItemID, "Data Bag items must have an id matching #{VALID_ID.inspect}, you gave: #{id_str.inspect}"
@@ -49,13 +51,14 @@ class Chef
attr_reader :raw_data
# Create a new Chef::DataBagItem
- def initialize
+ def initialize(chef_server_rest: nil)
@data_bag = nil
@raw_data = Mash.new
+ @chef_server_rest = chef_server_rest
end
def chef_server_rest
- Chef::REST.new(Chef::Config[:chef_server_url])
+ @chef_server_rest ||= Chef::REST.new(Chef::Config[:chef_server_url])
end
def self.chef_server_rest