Class: EC2Launcher::ConfigLoader

Inherits:
Object
  • Object
show all
Defined in:
lib/ec2launcher/config_loader.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(base_directory) ⇒ ConfigLoader

Returns a new instance of ConfigLoader.



13
14
15
# File 'lib/ec2launcher/config_loader.rb', line 13

def initialize(base_directory)
  @config = load_config_file(base_directory)
end

Instance Attribute Details

#configObject

Returns the value of attribute config.



11
12
13
# File 'lib/ec2launcher/config_loader.rb', line 11

def config
  @config
end

Instance Method Details

#load_config_file(base_directory) ⇒ EC2Launcher::Config

Read in the configuration file stored in the workspace directory. By default this will be ‘./config.rb’.

Returns:

  • (EC2Launcher::Config)

    the parsed configuration object



21
22
23
24
25
26
# File 'lib/ec2launcher/config_loader.rb', line 21

def load_config_file(base_directory)
  # Load configuration file
  config_filename = File.join(base_directory, "config.rb")
  abort("Unable to find 'config.rb' in '#{base_directory}'") unless File.exists?(config_filename)
  EC2Launcher::DSL::ConfigDSL.execute(File.read(config_filename)).config
end