1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/rackspace/requests/compute/update_server.rb

46 lines
1.2 KiB
Ruby
Raw Normal View History

module Fog
module Compute
class Rackspace
class Real
2009-10-17 17:24:34 -04:00
# Update an existing server
#
# ==== Parameters
# # server_id<~Integer> - Id of server to update
2009-10-17 17:24:34 -04:00
# * options<~Hash>:
# * adminPass<~String> - New admin password for server
# * name<~String> - New name for server
def update_server(server_id, options = {})
2009-10-17 17:24:34 -04:00
request(
:body => MultiJson.dump({ 'server' => options }),
2009-10-17 17:24:34 -04:00
:expects => 204,
:method => 'PUT',
:path => "servers/#{server_id}.json"
2009-10-17 17:24:34 -04:00
)
end
end
class Mock
2009-10-17 17:24:34 -04:00
def update_server(server_id, options)
2009-11-20 14:08:08 -05:00
response = Excon::Response.new
2010-10-13 16:20:18 -04:00
if server = list_servers_detail.body['servers'].detect {|_| _['id'] == server_id}
if options['adminPass']
server['adminPass'] = options['adminPass']
end
if options['name']
server['name'] = options['name']
end
response.status = 204
2010-05-31 11:37:26 -04:00
response
else
raise Fog::Compute::Rackspace::NotFound
end
2009-10-17 17:24:34 -04:00
end
end
end
end
end