class Dockerhelper::Config

Attributes

app_name[RW]
docker_image[RW]
docker_repo[RW]
docker_repo_tag_prefix[RW]
docker_tag[RW]
dockerfile[RW]
env_vars[RW]
environment[RW]
git_branch[RW]
git_repo_url[RW]
git_root[RW]
kube_rc_dest_dir[RW]
kube_rc_template[RW]
kube_rc_version[RW]
prebuild_command[RW]
rev_length[RW]

Public Class Methods

new() click to toggle source
# File lib/dockerhelper/config.rb, line 20
def initialize
  # defaults
  @rev_length = 8
  @kube_rc_dest_dir = Dir.pwd
end

Public Instance Methods

check_env_vars!() click to toggle source
# File lib/dockerhelper/config.rb, line 46
def check_env_vars!
  return unless env_vars
  unless env_vars.respond_to?(:reject)
    raise ArgumentError.new('Expected an array of env_vars')
  end
  undefined = env_vars.reject(&ENV.method(:has_key?))
  unless undefined.empty?
    raise StandardError.new("The environment must define #{undefined.join ', '}")
  end
end
docker() click to toggle source
# File lib/dockerhelper/config.rb, line 30
def docker
  @docker ||= Docker.new(chdir: git_root)
end
docker_repo_tag() click to toggle source
# File lib/dockerhelper/config.rb, line 42
def docker_repo_tag
  @docker_tag || "#{docker_repo_tag_prefix}#{git.latest_rev}"
end
git() click to toggle source
# File lib/dockerhelper/config.rb, line 26
def git
  @git ||= Git.new(git_root, rev_length: rev_length)
end
kubernetes() click to toggle source
# File lib/dockerhelper/config.rb, line 38
def kubernetes
  @kubernetes ||= Kubernetes.new(self)
end
kubernetes?() click to toggle source
# File lib/dockerhelper/config.rb, line 34
def kubernetes?
  @kube_rc_template && @kube_rc_dest_dir
end
prebuild?() click to toggle source
# File lib/dockerhelper/config.rb, line 57
def prebuild?
  prebuild_command && !prebuild_command.empty?
end