Sha256: 789dbfc6f1ecdb109197090de4cc28125a684d63e1f21253a176ad57454010e9

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

require "rubber/dns/base.rb"

module Rubber
  module Dns

    def self.get_provider(provider, env)

      if provider == 'fog'
        # TODO: remove backwards compatibility in next major release
        
        puts "deprecated dns provider config: #{env.inspect}"
        provider_env = env.dns_providers['fog']
        creds = provider_env.credentials
        real_provider = creds.provider
        require "rubber/dns/#{real_provider}"
        clazz = Rubber::Dns.const_get(real_provider.capitalize)
        case real_provider
          when 'aws'
            provider_env['access_key'] = creds['aws_access_key_id']
            provider_env['access_secret'] = creds['aws_secret_access_key']
          when 'zerigo'
            provider_env['email'] = creds['zerigo_email']
            provider_env['token'] = creds['zerigo_token']
        end
        return clazz.new(provider_env)
        
      else
        
        require "rubber/dns/#{provider}"
        clazz = Rubber::Dns.const_get(provider.capitalize)
        provider_env = env.dns_providers[provider]
        return clazz.new(provider_env)
        
      end
      
    end
    
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rubber-2.0.6 lib/rubber/dns.rb