class DockerTools::Dependency

Public Class Methods

new(name, registry, tag, fallback_tag) click to toggle source
# File lib/docker_tools/dependency.rb, line 10
def initialize(name, registry, tag, fallback_tag)
  @name = name
  @registry = registry
  @tag = tag
  @fallback_tag = fallback_tag
end

Public Instance Methods

run() click to toggle source
# File lib/docker_tools/dependency.rb, line 17
def run
  tag = @tag
  image = DockerTools::Image.new(@name, @registry, @tag)
  begin
    image.pull
  rescue
    puts "Falling back to image #{@registry}/#{@name}:#{@fallback_tag}"
    image = DockerTools::Image.new(@name, @registry, @fallback_tag)
    image.pull
    throw "Cannot find image" if image.image.nil?
    tag = @fallback_tag
  end
  tag
end