Class: VagrantPlugins::Configuration::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/vagrant-configuration/config.rb

Instance Method Summary collapse

Constructor Details

#initializeConfig

Returns a new instance of Config.



6
7
8
9
10
11
# File 'lib/vagrant-configuration/config.rb', line 6

def initialize
  if File.exist? "#{ENV['HOME']}/.vagrant.rb" 
    require "#{ENV['HOME']}/.vagrant.rb" 
    @conf = C.for 'vagrant'
  end
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_id) ⇒ Object

Raises:

  • (Exception)


13
14
15
16
17
18
19
20
21
22
23
# File 'lib/vagrant-configuration/config.rb', line 13

def method_missing(method_id)
  env = ENV[method_id.to_s.upcase]
  return env if env
  begin
    res = @conf.send(method_id) if @conf
  rescue
    puts "#{method_id} not found in #{ENV['HOME']}/.vagrant.rb"
  end
  return res if res 
  raise Exception.new("no configuration entry or environment variable was found for #{method_id}")
end