Project

General

Profile

« Previous | Next » 

Revision 79c4c238

Added by Sam Kottler almost 11 years ago

Fixes #2833: remove direct endpoints from Rackspace compute resource

View differences:

app/models/compute_resources/foreman/model/rackspace.rb
class Rackspace < ComputeResource
validates_presence_of :user, :password, :region
validate :ensure_valid_region
def provided_attributes
super.merge({ :ip => :public_ip_address })
......
['ORD', 'DFW', 'LON']
end
def endpoint
case region
when 'DFW'
'https://dfw.servers.api.rackspacecloud.com/v2'
when 'LON'
'https://lon.servers.api.rackspacecloud.com/v2'
else
'https://ord.servers.api.rackspacecloud.com/v2'
end
end
def zones
["rackspace"]
end
......
"Rackspace"
end
def ensure_valid_region
unless regions.include?(region.upcase)
errors.add(:region, 'is not valid')
end
end
private
def client
......
:rackspace_api_key => password,
:rackspace_username => user,
:rackspace_auth_url => url,
:rackspace_compute_url => endpoint
:rackspace_region => region.downcase.to_sym
)
return @client
end

Also available in: Unified diff