lib/berkshelf/cached_cookbook.rb in berkshelf-2.0.9 vs lib/berkshelf/cached_cookbook.rb in berkshelf-2.0.10

- old
+ new

@@ -1,7 +1,9 @@ module Berkshelf class CachedCookbook < Ridley::Chef::Cookbook + @loaded = Hash.new + class << self # @param [#to_s] path # a path on disk to the location of a Cookbook downloaded by the Downloader # # @return [CachedCookbook] @@ -10,10 +12,10 @@ def from_store_path(path) path = Pathname.new(path) cached_name = File.basename(path.to_s).slice(DIRNAME_REGEXP, 1) return nil if cached_name.nil? - from_path(path, name: cached_name) + @loaded[path.to_s] ||= from_path(path, name: cached_name) end end DIRNAME_REGEXP = /^(.+)-(.+)$/