Module: Chef::DSL::SecureDataBag
- Defined in:
- lib/chef/dsl/data_query.rb
Instance Method Summary collapse
- #secure_data_bag_item(bag, item, cache: false) ⇒ Object
- #secure_data_bag_item!(item, fields = []) ⇒ Object
Instance Method Details
#secure_data_bag_item(bag, item, cache: false) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/chef/dsl/data_query.rb', line 5 def secure_data_bag_item(bag, item, cache: false) data_bag_item = begin node.run_state[:secure_data_bag] ||= {} node.run_state[:secure_data_bag][bag] ||= {} node.run_state[:secure_data_bag][bag][item] end if cache data_bag_item ||= begin DataBag.validate_name!(bag.to_s) ::SecureDataBag::Item.validate_id!(item) ::SecureDataBag::Item.load(bag, item) rescue Exception Log.error("Failed to load secure data bag item: #{bag.inspect} #{item.inspect}") raise end end |
#secure_data_bag_item!(item, fields = []) ⇒ Object
22 23 24 25 26 |
# File 'lib/chef/dsl/data_query.rb', line 22 def secure_data_bag_item!(item, fields=[]) secure = ::SecureDataBag::Item.from_item item secure.encoded_fields.concat(Array(fields)) secure end |