Module: Tfrb::Provider

Defined in:
lib/tfrb/provider.rb

Defined Under Namespace

Modules: Aws

Class Method Summary collapse

Class Method Details

.load(tfrb) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/tfrb/provider.rb', line 2

def self.load(tfrb)
  tfrb.environments.each do |environment_name, environment|
    if environment['provider']
      environment['provider'].keys.each do |provider|
        self.constants.each do |c|
          if provider == c.to_s.gsub(/(.)([A-Z])/,'\1_\2').downcase
            Kernel.const_get("Tfrb::Provider::#{c}").load(tfrb, environment)

            # Inject overrides from Config
            if Tfrb::Config[:overrides].has_key?('provider') && Tfrb::Config[:overrides]['provider'].has_key?(provider)
              environment['provider'][provider].merge!(Tfrb::Config[:overrides]['provider'][provider])
            end
          end
        end
      end
    end
  end
end