class Rackspace::ServerApi

Attributes

api[R]

Public Class Methods

new(rackspace_credentials) click to toggle source
Calls superclass method Rackspace::Api::new
# File lib/rackspace/server_api.rb, line 5
def initialize(rackspace_credentials)
  super rackspace_credentials
  @api ||= Fog::Compute.new(
    rackspace_credentials.merge(
      version:   :v2,
      provider:  'Rackspace',
    )
  )
end

Public Instance Methods

create(params) click to toggle source
# File lib/rackspace/server_api.rb, line 19
def create(params)
  servers.create(params)
  wait_for params.fetch(:name)
end
find_by_name(name) click to toggle source
# File lib/rackspace/server_api.rb, line 15
def find_by_name(name)
  servers.detect {|i| i.name == name && i.state != 'DELETED'}
end
image_by_name(img_name) click to toggle source
# File lib/rackspace/server_api.rb, line 24
def image_by_name(img_name)
  img = api.images.detect {|i| i.name == img_name}
  raise "No such server image #{img_name}" if img.nil?
  img
end
servers() click to toggle source
# File lib/rackspace/server_api.rb, line 30
def servers
  api.servers
end

Private Instance Methods

object_type() click to toggle source
# File lib/rackspace/server_api.rb, line 36
def object_type
  'server'
end
ready_state() click to toggle source
# File lib/rackspace/server_api.rb, line 40
def ready_state
  'ACTIVE'
end