Sha256: 9fcfe9773848ccbc9e695bf7685b01cee109d5f29d3b847de175ab6fd959b86b
Contents?: true
Size: 984 Bytes
Versions: 34
Compression:
Stored size: 984 Bytes
Contents
require_relative 'stack_data' module Kontena::Stacks class StackDataSet # @param data [Hash] def initialize(data) @data = data end # @param name [String] # @return [StackData,NilClass] def stack(name) data = @data[name] StackData.new(data[:stack_data], data[:loader]) if data end alias_method :[], :stack # @return [Array<StackData>] def stacks stack_names.map do |name| stack(name) end.compact end # @return [Array<String>] def stack_names @data.keys end # @return [Integer] def size @data.size end # @param name [String] # @return [StackData,NilClass] def delete(name) data = @data.delete(name) StackData.new(data[:stack_data], data[:loader]) if data end # @return [Array<StackData>] def remove_dependencies stacks.map do |stack| delete(stack.name) unless stack.root? end.compact end end end
Version data entries
34 entries across 34 versions & 2 rubygems