Sha256: 1ef1901e6a2bde064268e4f7afbc1e6d7f10caab2cfa9322240736f25acb77a8
Contents?: true
Size: 1.68 KB
Versions: 3
Compression:
Stored size: 1.68 KB
Contents
module Berkshelf class Resolver class Graph < Solve::Graph # @param [Berkshelf::CookbookStore] store def populate_store(store = nil) store ||= Berkshelf::CookbookStore.instance store.cookbooks.each do |cookbook| artifacts(cookbook.cookbook_name, cookbook.version) cookbook.dependencies.each do |dependency, constraint| artifacts(cookbook.cookbook_name, cookbook.version).depends(dependency, constraint) end end end # Add dependencies of a locally cached cookbook to the graph # # @param [Berkshelf::CachedCookbook] cookbook # # @return [Hash] def populate_local(cookbook) name = cookbook.cookbook_name version = cookbook.version artifacts(name, version) cookbook.dependencies.each do |dependency, constraint| artifacts(name, version).depends(dependency, constraint) end end # @param [Array<Berkshelf::Source>, Berkshelf::Source] sources def populate(sources) universe(sources).each do |cookbook| next if has_artifact?(cookbook.name, cookbook.version) artifacts(cookbook.name, cookbook.version) cookbook.dependencies.each do |dependency, constraint| artifacts(cookbook.name, cookbook.version).depends(dependency, constraint) end end end # @param [Array<Berkshelf::Source>, Berkshelf::Source] sources # # @return [Array<Berkshelf::RemoteCookbook>] def universe(sources) cookbooks = [] Array(sources).each { |source| cookbooks = cookbooks | source.universe } cookbooks end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
berkshelf-3.0.0.beta8 | lib/berkshelf/resolver/graph.rb |
berkshelf-3.0.0.beta7 | lib/berkshelf/resolver/graph.rb |
berkshelf-3.0.0.beta6 | lib/berkshelf/resolver/graph.rb |