Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

[glesys|compute] add reboot and compute test params

This commit adds the reboot feature as well as updated get() call and
compute test parameters to be able to run server tests
  • Loading branch information...
commit 27d4dc348a89b04651f826d49747d9602fe51152 1 parent 907ff6f
@antonlindstrom antonlindstrom authored
View
1  lib/fog/glesys/compute.rb
@@ -21,6 +21,7 @@ class Glesys < Fog::Service
request :server_details
request :server_status
request :start
+ request :reboot
request :stop
# Templates
request :template_list
View
5 lib/fog/glesys/models/compute/server.rb
@@ -40,6 +40,11 @@ def stop
connection.stop(:serverid => identity)
end
+ def reboot
+ requires :identity
+ connection.reboot(:serverid => identity)
+ end
+
def destroy
requires :identity
connection.destroy(:serverid => identity, :keepip => keepip)
View
22 lib/fog/glesys/models/compute/servers.rb
@@ -16,14 +16,20 @@ def all
def get(identifier)
return nil if identifier.nil? || identifier == ""
- details = connection.server_details(identifier).body['response']
- status = connection.server_status(identifier).body['response']
- if details.empty? || status.empty?
- nil
- else
- status['server'].merge!({ :serverid => identifier})
- details['server'].merge!(status['server'])
- new(details['server'])
+
+ begin
+ details = connection.server_details(identifier).body['response']
+ status = connection.server_status(identifier).body['response']
+
+ if details.empty? || status.empty?
+ nil
+ else
+ status['server'].merge!({ :serverid => identifier})
+ details['server'].merge!(status['server'])
+ new(details['server'])
+ end
+ rescue
+ return nil
end
end
View
14 lib/fog/glesys/requests/compute/reboot.rb
@@ -0,0 +1,14 @@
+module Fog
+ module Compute
+ class Glesys
+ class Real
+
+ def reboot(param)
+ request("/server/reboot", param)
+ end
+ end
+
+ end
+ end
+end
+
View
4 tests/compute/helper.rb
@@ -44,6 +44,10 @@ def compute_providers
:mocked => true
},
:glesys => {
+ :server_attributes => {
+ :rootpassword => "secret_password_#{Time.now.to_i}",
+ :hostname => "fog.example#{Time.now.to_i}.com"
+ },
:mocked => false
},
:hp => {
Please sign in to comment.
Something went wrong with that request. Please try again.