class Indocker::Images::Image

Attributes

build_args[R]
dependent_images[R]
name[R]

Public Class Methods

new(name) click to toggle source
# File lib/indocker/images/image.rb, line 6
def initialize(name)
  @name = name
  @dependent_images = []
  @build_args = {}
end

Public Instance Methods

add_dependent_image(image) click to toggle source
# File lib/indocker/images/image.rb, line 83
def add_dependent_image(image)
  @dependent_images.push(image) if !@dependent_images.include?(image)
end
after_build() click to toggle source
# File lib/indocker/images/image.rb, line 64
def after_build
  @after_build
end
before_build() click to toggle source
# File lib/indocker/images/image.rb, line 56
def before_build
  @before_build
end
build_context() click to toggle source
# File lib/indocker/images/image.rb, line 48
def build_context
  @build_context
end
dockerfile() click to toggle source
# File lib/indocker/images/image.rb, line 40
def dockerfile
  @dockerfile || (raise ArgumentError.new("Dockerfile path is not set for image :#{@name}"))
end
image_name() click to toggle source
# File lib/indocker/images/image.rb, line 12
def image_name
  "#{@name}_image"
end
local_registry_url() click to toggle source
# File lib/indocker/images/image.rb, line 78
def local_registry_url
  url = File.join(registry.repository_name.to_s, image_name)
  "#{url}:#{tag}"
end
registry() click to toggle source
# File lib/indocker/images/image.rb, line 32
def registry
  @registry || (raise ArgumentError.new("registry is not set for image :#{@name}"))
end
registry_url() click to toggle source
# File lib/indocker/images/image.rb, line 68
def registry_url
  url = if registry.is_local?
    File.join(registry.repository_name.to_s, image_name)
  else
    File.join(registry.url, registry.repository_name.to_s, image_name)
  end

  "#{url}:#{tag}"
end
set_after_build(proc) click to toggle source
# File lib/indocker/images/image.rb, line 60
def set_after_build(proc)
  @after_build = proc
end
set_before_build(proc) click to toggle source
# File lib/indocker/images/image.rb, line 52
def set_before_build(proc)
  @before_build = proc
end
set_build_args(opts) click to toggle source
# File lib/indocker/images/image.rb, line 24
def set_build_args(opts)
  @build_args = opts
end
set_build_context(path) click to toggle source
# File lib/indocker/images/image.rb, line 44
def set_build_context(path)
  @build_context = path
end
set_dockerfile(path) click to toggle source
# File lib/indocker/images/image.rb, line 36
def set_dockerfile(path)
  @dockerfile = path
end
set_registry(registry) click to toggle source
# File lib/indocker/images/image.rb, line 28
def set_registry(registry)
  @registry = registry
end
set_tag(tag) click to toggle source
# File lib/indocker/images/image.rb, line 16
def set_tag(tag)
  @tag = tag
end
tag() click to toggle source
# File lib/indocker/images/image.rb, line 20
def tag
  @tag || (raise ArgumentError.new("tag is not set for image :#{@name}"))
end