Sha256: fee07261fcb1a663a3ad9b0bfc290ffc3bd49c653907717e62058b4f5e4cbbd7

Contents?: true

Size: 722 Bytes

Versions: 8

Compression:

Stored size: 722 Bytes

Contents

class Terremark < Fog::Bin
  class << self
    def available?
      Fog::Terremark::VCLOUD_OPTIONS.all? {|requirement| Fog.credentials.include?(requirement)}
    end

    def terremark_service(service)
      case service
        when :vcloud
          Fog::Terremark::Vcloud
        else
          raise "Unsupported Terremark Service"
      end
    end

    def [](service)
      @@connections ||= Hash.new do |hash, key|
        credentials = Fog.credentials.reject do |k,v|
          case key
            when :vcloud
              !Fog::Terremark::VCLOUD_OPTIONS.include?(k)
          end
        end
        hash[key] = terremark_service(key).new(credentials)
      end
      @@connections[service]
    end
  end
end

Version data entries

8 entries across 6 versions & 3 rubygems

Version Path
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-terremark-0.1.0/lib/fog/bin/terremark.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-terremark-0.1.0/lib/fog/bin/terremark.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-terremark-0.1.0/lib/fog/bin/terremark.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-terremark-0.1.0/lib/fog/bin/terremark.rb
fog-terremark-0.1.0 lib/fog/bin/terremark.rb
fog-terremark-0.0.4 lib/fog/bin/terremark.rb
fog-terremark-0.0.3 lib/fog/bin/terremark.rb
fog-terremark-0.0.2 lib/fog/bin/terremark.rb