Class: Indocker::Configs::ConfigFactory

Inherits:
Object
  • Object
show all
Includes:
SmartIoC::Iocify
Defined in:
lib/indocker/configs/config_factory.rb

Constant Summary collapse

CONFIG_STRUCTURE =
Proc.new do
  option :namespace, group: :common
  option :root,      group: :common, type: :pathname

  option :load_env_file,      group: :load, type: :array
  option :load_docker_items,  group: :load, type: :array

  config :git, group: :git do
    option :repository
    option :tag
    option :branch
    option :workdir 
  end

  config :docker, group: :docker do
    option :registry
    option :email
    option :password
    option :username
    option :skip_push, type: :boolean
  end
end

Instance Method Summary collapse

Instance Method Details

#build(&block) ⇒ Object



29
30
31
32
33
34
35
# File 'lib/indocker/configs/config_factory.rb', line 29

def build(&block)    
  return @configuration if @configuration

  @configuration = Indocker::Configs::Config.new
  @configuration.instance_exec(&CONFIG_STRUCTURE)
  @configuration
end