module Kamaze::DockerImage::Concern::Docker

Provides setup (used during initialization) and related methods.

@todo remove this file, it SHOULD be useless

Protected Instance Methods

fetch_containers(run_as, states = nil) click to toggle source

Fetch containers

@param [String] run_as @param [Array|nil] states @return [Array<Docker::Container>]

# File lib/kamaze/docker_image/concern/docker.rb, line 24
def fetch_containers(run_as, states = nil)
  unless states.nil?
    states = (states.is_a?(Array) ? states : [states]).map(&:to_s)
    states = nil if states.empty?
  end

  Docker::Container.all(all: true).keep_if do |c|
    states.to_a.empty? ? true : states.include?(c.info.fetch('State'))
  end.keep_if do |c|
    c.info.fetch('Names').include?("/#{run_as}")
  end
end