Class: Tanuki::Configurator

Inherits:
Object show all
Defined in:
lib/tanuki/configurator.rb

Overview

Tanuki::Configurator is a scope for evaluating a Tanuki application configuration block.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ctx, root, config_root = nil) ⇒ Configurator

Creates a new configurator in context ctx and root directory. Configuration root config_root defaults to config directory in root.



11
12
13
14
# File 'lib/tanuki/configurator.rb', line 11

def initialize(ctx, root, config_root=nil)
  @context = ctx
  set :root, root ? root : Dir.pwd
end

Instance Attribute Details

#config_root=(value) ⇒ Object (writeonly)

Configuration root.



7
8
9
# File 'lib/tanuki/configurator.rb', line 7

def config_root=(value)
  @config_root = value
end

Instance Method Details

#load_config(config, silent = false) ⇒ Object

Loads and executes a given configuraion file with symbolic name config. If silent is true, exception is not raised on missing file.



18
19
20
21
22
23
# File 'lib/tanuki/configurator.rb', line 18

def load_config(config, silent=false)
  file = File.join(@config_root, config.to_s) << '.rb'
  return if silent && !(File.file? file)
  instance_eval File.read(file)
  true
end