In Files

Methods

Files

Class/Module Index [+]

Quicksearch

Fog::Compute

Public Class Methods

[](provider) click to toggle source
# File lib/fog/compute.rb, line 4
def self.[](provider)
  self.new(:provider => provider)
end
new(attributes) click to toggle source
# File lib/fog/compute.rb, line 8
def self.new(attributes)
  attributes = attributes.dup # prevent delete from having side effects
  case provider = attributes.delete(:provider).to_s.downcase.to_sym
  when :aws
    require 'fog/compute/aws'
    Fog::Compute::AWS.new(attributes)
  when :bluebox
    require 'fog/compute/bluebox'
    Fog::Compute::Bluebox.new(attributes)
  when :brightbox
    require 'fog/compute/brightbox'
    Fog::Compute::Brightbox.new(attributes)
  when :ecloud
    require 'fog/compute/ecloud'
    Fog::Compute::Ecloud.new(attributes)
  when :gogrid
    require 'fog/compute/go_grid'
    Fog::Compute::GoGrid.new(attributes)
  when :linode
    require 'fog/compute/linode'
    Fog::Compute::Linode.new(attributes)
  when :newservers
    require 'fog/compute/new_servers'
    Fog::Compute::NewServers.new(attributes)
  when :ninefold
    require 'fog/compute/ninefold'
    Fog::Compute::Ninefold.new(attributes)
  when :rackspace
    require 'fog/compute/rackspace'
    Fog::Compute::Rackspace.new(attributes)
  when :slicehost
    require 'fog/compute/slicehost'
    Fog::Compute::Slicehost.new(attributes)
  when :stormondemand
    require 'fog/compute/storm_on_demand'
    Fog::Compute::StormOnDemand.new(attributes)
  when :vcloud
    require 'fog/compute/vcloud'
    Fog::Vcloud::Compute.new(attributes)
  when 'VirtualBox'
    require 'fog/compute/virtual_box'
    Fog::Compute::VirtualBox.new(attributes)
  when :voxel
    require 'fog/compute/voxel'
    Fog::Compute::Voxel.new(attributes)
  else
    raise ArgumentError.new("#{provider} is not a recognized compute provider")
  end
end
servers() click to toggle source
# File lib/fog/compute.rb, line 58
def self.servers
  servers = []
  for provider in [:aws, :bluebox, :brightbox, :ecloud, :gogrid, :linode, :newservers, :ninefold, :rackspace, :slicehost, :stormondemand, :virtualbox, :voxel]
    begin
      servers.concat(self[provider].servers)
    rescue # ignore any missing credentials/etc
    end
  end
  servers
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.