fog-arubacloud 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. checksums.yaml +5 -5
  2. data/.codeclimate.yml +0 -0
  3. data/.gitignore +0 -0
  4. data/.rubocop.yml +0 -0
  5. data/.ruby-version +0 -0
  6. data/.travis.yml +0 -0
  7. data/CONTRIBUTING.md +0 -0
  8. data/CONTRIBUTORS.md +0 -0
  9. data/Gemfile +0 -0
  10. data/LICENSE.md +0 -0
  11. data/README.md +3 -3
  12. data/Rakefile +99 -5
  13. data/{lib/fog/arubacloud/examples → examples}/create_pro_server.rb +3 -3
  14. data/{lib/fog/arubacloud/examples → examples}/create_smart_server.rb +0 -0
  15. data/{lib/fog/arubacloud/examples → examples}/get_objects.rb +1 -1
  16. data/{lib/fog/arubacloud/examples → examples}/get_servers.rb +0 -0
  17. data/{lib/fog/arubacloud/examples → examples}/vm_operations.rb +1 -1
  18. data/fog-arubacloud.gemspec +12 -12
  19. data/gemfiles/fog-arubacloud-0.0.4.gem +0 -0
  20. data/lib/fog/arubacloud/compute/models/custom_template.rb +60 -0
  21. data/lib/fog/arubacloud/compute/models/custom_templates.rb +19 -0
  22. data/lib/fog/arubacloud/{models/compute → compute/models}/disk.rb +6 -5
  23. data/lib/fog/arubacloud/{models/compute → compute/models}/disks.rb +7 -7
  24. data/lib/fog/arubacloud/{models/compute → compute/models}/ip.rb +6 -5
  25. data/lib/fog/arubacloud/{models/compute → compute/models}/ips.rb +6 -6
  26. data/lib/fog/arubacloud/compute/models/loadbalancer.rb +135 -0
  27. data/lib/fog/arubacloud/compute/models/loadbalancers.rb +21 -0
  28. data/lib/fog/arubacloud/{models/compute → compute/models}/network_adapter.rb +2 -2
  29. data/lib/fog/arubacloud/{models/compute → compute/models}/network_adapters.rb +4 -4
  30. data/lib/fog/arubacloud/compute/models/schedule.rb +90 -0
  31. data/lib/fog/arubacloud/compute/models/schedules.rb +19 -0
  32. data/lib/fog/arubacloud/{models/compute → compute/models}/server.rb +74 -35
  33. data/lib/fog/arubacloud/{models/compute → compute/models}/servers.rb +10 -9
  34. data/lib/fog/arubacloud/compute/models/sharedstorage.rb +58 -0
  35. data/lib/fog/arubacloud/compute/models/sharedstorages.rb +19 -0
  36. data/lib/fog/arubacloud/compute/models/snapshot.rb +58 -0
  37. data/lib/fog/arubacloud/compute/models/snapshots.rb +19 -0
  38. data/lib/fog/arubacloud/{models/compute → compute/models}/template.rb +2 -2
  39. data/lib/fog/arubacloud/{models/compute → compute/models}/templates.rb +10 -10
  40. data/lib/fog/arubacloud/compute/requests/add_contact.rb +59 -0
  41. data/lib/fog/arubacloud/compute/requests/add_instance.rb +56 -0
  42. data/lib/fog/arubacloud/compute/requests/add_lb_rule.rb +58 -0
  43. data/lib/fog/arubacloud/compute/requests/apply_snapshot.rb +53 -0
  44. data/lib/fog/arubacloud/compute/requests/archive_vm.rb +59 -0
  45. data/lib/fog/arubacloud/compute/requests/create_loadbalancer.rb +76 -0
  46. data/lib/fog/arubacloud/compute/requests/create_scheduled_occurrence.rb +71 -0
  47. data/lib/fog/arubacloud/compute/requests/create_scheduled_operation.rb +56 -0
  48. data/lib/fog/arubacloud/compute/requests/create_shared_storage.rb +55 -0
  49. data/lib/fog/arubacloud/compute/requests/create_snapshot.rb +54 -0
  50. data/lib/fog/arubacloud/{requests/compute → compute/requests}/create_vm_pro.rb +9 -14
  51. data/lib/fog/arubacloud/{requests/compute → compute/requests}/create_vm_smart.rb +11 -15
  52. data/lib/fog/arubacloud/compute/requests/delete_custom_template.rb +43 -0
  53. data/lib/fog/arubacloud/compute/requests/delete_scheduled_operation.rb +43 -0
  54. data/lib/fog/arubacloud/compute/requests/delete_shared_storage.rb +49 -0
  55. data/lib/fog/arubacloud/compute/requests/delete_snapshot.rb +60 -0
  56. data/lib/fog/arubacloud/{requests/compute → compute/requests}/delete_vm.rb +13 -13
  57. data/lib/fog/arubacloud/compute/requests/disable_loadbalancer.rb +47 -0
  58. data/lib/fog/arubacloud/compute/requests/edit_shared_storage.rb +50 -0
  59. data/lib/fog/arubacloud/compute/requests/enable_loadbalancer.rb +47 -0
  60. data/lib/fog/arubacloud/compute/requests/get_custom_templates.rb +43 -0
  61. data/lib/fog/arubacloud/{requests/compute → compute/requests}/get_hypervisors.rb +8 -11
  62. data/lib/fog/arubacloud/compute/requests/get_lb_loads.rb +49 -0
  63. data/lib/fog/arubacloud/compute/requests/get_lb_stats.rb +49 -0
  64. data/lib/fog/arubacloud/compute/requests/get_loadbalancer.rb +47 -0
  65. data/lib/fog/arubacloud/compute/requests/get_notifications.rb +50 -0
  66. data/lib/fog/arubacloud/compute/requests/get_package_id.rb +60 -0
  67. data/lib/fog/arubacloud/{requests/compute → compute/requests}/get_purchased_ip_addresses.rb +7 -11
  68. data/lib/fog/arubacloud/compute/requests/get_scheduled_operations.rb +42 -0
  69. data/lib/fog/arubacloud/{requests/compute → compute/requests}/get_server_details.rb +7 -13
  70. data/lib/fog/arubacloud/{requests/compute → compute/requests}/get_servers.rb +11 -14
  71. data/lib/fog/arubacloud/compute/requests/get_shared_storage.rb +43 -0
  72. data/lib/fog/arubacloud/compute/requests/manage_custom_template.rb +72 -0
  73. data/lib/fog/arubacloud/compute/requests/modify_loadbalancer.rb +49 -0
  74. data/lib/fog/arubacloud/{requests/compute → compute/requests}/power_off_vm.rb +8 -11
  75. data/lib/fog/arubacloud/{requests/compute → compute/requests}/power_on_vm.rb +8 -11
  76. data/lib/fog/arubacloud/{requests/compute → compute/requests}/purchase_ip.rb +7 -11
  77. data/lib/fog/arubacloud/{requests/compute → compute/requests}/reinitialize_vm.rb +8 -14
  78. data/lib/fog/arubacloud/compute/requests/remove_contact.rb +48 -0
  79. data/lib/fog/arubacloud/compute/requests/remove_instance.rb +56 -0
  80. data/lib/fog/arubacloud/{requests/compute → compute/requests}/remove_ip.rb +7 -11
  81. data/lib/fog/arubacloud/compute/requests/remove_loadbalancer.rb +47 -0
  82. data/lib/fog/arubacloud/compute/requests/rename_shared_storage.rb +50 -0
  83. data/lib/fog/arubacloud/compute/requests/restore_vm.rb +61 -0
  84. data/lib/fog/arubacloud/compute/requests/suspend_scheduled_operations.rb +43 -0
  85. data/lib/fog/arubacloud/compute.rb +106 -22
  86. data/lib/fog/arubacloud/error.rb +4 -0
  87. data/lib/fog/arubacloud/service.rb +4 -2
  88. data/lib/fog/arubacloud/version.rb +3 -2
  89. data/lib/fog/arubacloud.rb +4 -12
  90. data/spec/fog/arubacloud/config_spec.rb +0 -0
  91. data/spec/fog/compute/arubacloud/models/disk_spec.rb +63 -0
  92. data/spec/fog/compute/arubacloud/models/disks_spec.rb +11 -0
  93. data/spec/fog/compute/arubacloud/models/ip_spec.rb +53 -0
  94. data/spec/fog/compute/arubacloud/models/ips_spec.rb +11 -0
  95. data/spec/fog/compute/arubacloud/models/loadbalancer_spec.rb +100 -0
  96. data/spec/fog/compute/arubacloud/models/loadbalancers_spec.rb +15 -0
  97. data/spec/fog/compute/arubacloud/models/network_adapter_spec.rb +33 -0
  98. data/spec/fog/compute/arubacloud/models/network_adapters_spec.rb +11 -0
  99. data/spec/fog/compute/arubacloud/models/schedule_spec.rb +102 -0
  100. data/spec/fog/compute/arubacloud/models/schedules_spec.rb +11 -0
  101. data/spec/fog/compute/arubacloud/models/server_spec.rb +155 -0
  102. data/spec/fog/compute/arubacloud/models/servers_spec.rb +15 -0
  103. data/spec/fog/compute/arubacloud/models/sharedstorage_spec.rb +86 -0
  104. data/spec/fog/compute/arubacloud/models/sharedstorages_spec.rb +10 -0
  105. data/spec/fog/compute/arubacloud/models/snapshot_spec.rb +17 -0
  106. data/spec/fog/compute/arubacloud/models/snapshots_spec.rb +11 -0
  107. data/spec/fog/compute/arubacloud/models/template_spec.rb +39 -0
  108. data/spec/fog/compute/arubacloud/models/templates_spec.rb +21 -0
  109. data/spec/fog/compute/arubacloud_spec.rb +21 -4
  110. data/spec/model_setup.rb +3 -1
  111. data/spec/spec_helper.rb +1 -1
  112. metadata +121 -48
  113. data/gemfiles/fog-arubacloud-0.0.1.gem +0 -0
  114. data/gemfiles/fog-arubacloud-0.0.2.gem +0 -0
  115. data/spec/fog/compute/arubacloud/server_spec.rb +0 -26
  116. data/spec/fog/compute/arubacloud/servers_spec.rb +0 -11
  117. data/tests/test_helper.rb +0 -8
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -10,21 +11,16 @@ require 'fog/arubacloud/error'
10
11
  require 'benchmark'
11
12
 
12
13
  module Fog
13
- module Compute
14
- class ArubaCloud
14
+ module ArubaCloud
15
+ class Compute
15
16
 
16
17
  # noinspection RubyResolve
17
18
  class Real
18
19
  def get_purchased_ip_addresses
19
20
  body = self.body('GetPurchasedIpAddresses')
20
- get_servers_options = {
21
- :http_method => :post,
22
- :method => 'GetPurchasedIpAddresses',
23
- :body => Fog::JSON.encode(body)
24
- }
25
21
  response = nil
26
22
  time = Benchmark.realtime {
27
- response = request(get_servers_options)
23
+ response = request(body, 'GetPurchasedIpAddresses', 'GetPurchasedIpAddresses Error')
28
24
  }
29
25
  Fog::Logger.debug("GetPurchasedIpAddresses time: #{time}")
30
26
  if response['Success']
@@ -74,6 +70,6 @@ module Fog
74
70
  end # get_purchased_ip_addresses
75
71
  end # Mock
76
72
 
77
- end # ArubaCloud
78
- end # Compute
79
- end # Fog
73
+ end # Compute
74
+ end # ArubaCloud
75
+ end # Fog
@@ -0,0 +1,42 @@
1
+ # coding: utf-8
2
+ #
3
+ # Author:: Dangleterre Michaël
4
+ # © Copyright ArubaCloud.
5
+ #
6
+ # LICENSE: MIT (http://opensource.org/licenses/MIT)
7
+ #
8
+
9
+ require 'fog/arubacloud/service'
10
+ require 'fog/arubacloud/error'
11
+ require 'benchmark'
12
+
13
+ module Fog
14
+ module ArubaCloud
15
+ class Compute
16
+ class Real
17
+ def get_scheduled_operations(datestart, dateend)
18
+ body = self.body('GetScheduledOperations').merge({:dateStart => datestart, :dateEnd => dateend})
19
+ response = nil
20
+ time = Benchmark.realtime {
21
+ response = request(body, 'GetScheduledOperations', 'GetScheduledOperations Error')
22
+ }
23
+ Fog::Logger.debug("GetScheduledOperations time: #{time}")
24
+ if response['Success']
25
+ response
26
+ else
27
+ raise Fog::ArubaCloud::Errors::RequestError.new('Error in request.')
28
+ end
29
+ end # get_scheduled_operations
30
+
31
+ class Mock
32
+ def get_scheduled_operations
33
+ raise Fog::Errors::MockNotImplemented.new(
34
+ 'Mock not implemented. Feel free to contribute.'
35
+ )
36
+ end # get_scheduled_operations
37
+ end # Mock
38
+ end # Real
39
+
40
+ end # Compute
41
+ end # ArubaCloud
42
+ end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -10,30 +11,23 @@ require 'fog/arubacloud/error'
10
11
  require 'benchmark'
11
12
 
12
13
  module Fog
13
- module Compute
14
- class ArubaCloud
14
+ module ArubaCloud
15
+ class Compute
15
16
 
16
17
  class Real
17
18
  # Return the server details
18
19
  # @return [Excon::Response]
19
20
  def get_server_details(server_id)
20
21
  body = self.body('GetServerDetails').merge({:ServerId => server_id})
21
- options = {
22
- :http_method => :post,
23
- :method => 'GetServerDetails',
24
- :body => Fog::JSON.encode(body)
25
- }
26
22
  response = nil
27
23
  time = Benchmark.realtime {
28
- response = request(options)
24
+ response = request(body, 'GetServerDetails', 'GetServerDetails, error')
29
25
  }
30
26
  Fog::Logger.debug("GetServerDetails time: #{time}")
31
27
  if response['Success']
32
28
  response
33
29
  else
34
- raise Fog::ArubaCloud::Errors::RequestError.new(
35
- "Error during GetServerDetails request. Error message: \n#{response}"
36
- )
30
+ raise Fog::ArubaCloud::Errors::RequestError.new( "Error during GetServerDetails request. Error message: \n#{response}" )
37
31
  end
38
32
  end # get_server_details
39
33
  end # Real
@@ -46,6 +40,6 @@ module Fog
46
40
  end # get_server_details
47
41
  end # Mock
48
42
 
49
- end # ArubaCloud
50
- end # Compute
43
+ end # Compute
44
+ end # ArubaCloud
51
45
  end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -10,26 +11,22 @@ require 'fog/arubacloud/error'
10
11
  require 'benchmark'
11
12
 
12
13
  module Fog
13
- module Compute
14
- class ArubaCloud
15
-
14
+ module ArubaCloud
15
+ class Compute
16
16
  class Real
17
17
  def get_servers
18
18
  body = self.body('GetServers')
19
- options = {
20
- :http_method => :post,
21
- :method => 'GetServers',
22
- :body => Fog::JSON.encode(body)
23
- }
24
19
  response = nil
25
20
  time = Benchmark.realtime {
26
- response = request(options)
21
+ response = request( body, 'GetServers', "GetServer Error" )
27
22
  }
28
- Fog::Logger.debug("GetServer time: #{time}")
23
+ Fog::Logger.debug("GetServers time: #{time}")
29
24
  if response['Success']
30
25
  response
31
26
  else
32
- raise Fog::ArubaCloud::Errors::RequestError.new(response)
27
+ raise Fog::ArubaCloud::Errors::RequestError.new(
28
+ "Error during GetServers request. Error message: \n#{response}"
29
+ )
33
30
  end
34
31
  end # get_servers
35
32
  end # Real
@@ -81,6 +78,6 @@ module Fog
81
78
  end # get_servers
82
79
  end # Mock
83
80
 
84
- end # ArubaCloud
85
- end # Compute
86
- end # Fog
81
+ end # Compute
82
+ end # ArubaCloud
83
+ end # Fog
@@ -0,0 +1,43 @@
1
+ # coding: utf-8
2
+ #
3
+ # Author:: Dangleterre Michaël
4
+ # © Copyright ArubaCloud.
5
+ #
6
+ # LICENSE: MIT (http://opensource.org/licenses/MIT)
7
+ #
8
+
9
+ require 'fog/arubacloud/service'
10
+ require 'fog/arubacloud/error'
11
+ require 'benchmark'
12
+
13
+
14
+ module Fog
15
+ module ArubaCloud
16
+ class Compute
17
+ class Real
18
+ def get_shared_storage
19
+ body = self.body('GetSharedStorages')
20
+ response = nil
21
+ time = Benchmark.realtime {
22
+ response = request(body, 'GetSharedStorages', 'GetSharedStorages Error')
23
+ }
24
+ Fog::Logger.debug("GetSharedStorages time: #{time}")
25
+ if response['Success']
26
+ response
27
+ else
28
+ raise Fog::ArubaCloud::Errors::RequestError.new('Error in request.')
29
+ end
30
+ end # get_shared_storage
31
+
32
+ class Mock
33
+ def get_shared_storage
34
+ raise Fog::Errors::MockNotImplemented.new(
35
+ 'Mock not implemented. Feel free to contribute.'
36
+ )
37
+ end # get_shared_storage
38
+ end # Mock
39
+ end # Real
40
+
41
+ end # Compute
42
+ end # ArubaCloud
43
+ end # Fog
@@ -0,0 +1,72 @@
1
+ # coding: utf-8
2
+ #
3
+ # Author:: Dangleterre Michaël
4
+ # © Copyright ArubaCloud.
5
+ #
6
+ # LICENSE: MIT (http://opensource.org/licenses/MIT)
7
+ #
8
+
9
+ require 'fog/arubacloud/service'
10
+ require 'fog/arubacloud/error'
11
+ require 'benchmark'
12
+
13
+
14
+ module Fog
15
+ module ArubaCloud
16
+ class Compute
17
+
18
+ class Real
19
+ def manage_custom_template(data, action='create')
20
+ body = {
21
+ :template => {
22
+ :ApplianceTypeID => data[:ApplianceTypeID],
23
+ :ArchitectureTypeID => data[:ArchitectureTypeID],
24
+ :OSFamilyID => data[:OSFamilyID],
25
+ :OSVersion => data[:OSVersion],
26
+ :Revision => data[:Revision],
27
+ :TemplateBound => [
28
+ :TemplateBound => [
29
+ {
30
+ :DefaultValue => data[:DefaultValue],
31
+ :MaxValue => data[:MaxValue],
32
+ :MinValue => data[:MinValue],
33
+ :ResourceType => data[:ResourceType],
34
+ :TemplateBoundID => data[:TemplateBoundID]
35
+ }
36
+ ]
37
+ ],
38
+ :TemplateDescription => data[:TemplateDescription],
39
+ :TemplateExternalDescription => data[:TemplateExternalDescription],
40
+ :TemplatePassword => data[:TemplatePassword],
41
+ :TemplateUsername => data[:TemplateUsername],
42
+ :VirtualMachineID => data[:VirtualMachineID]
43
+ }
44
+ }
45
+ if action.eql? 'create'
46
+ method_to_call = 'SetEnqueuePersonalTemplateCreation'
47
+ error_message = 'Error while attempting to delete custom template.'
48
+ elsif action.eql? 'edit'
49
+ method_to_call = 'SetUpdatePersonalTemplate'
50
+ error_message = 'Error while editing custom template.'
51
+ else
52
+ raise Fog::ArubaCloud::Errors::BadParameters.new('Action must be create or edit')
53
+ end
54
+ self.request(
55
+ body,
56
+ method_to_call,
57
+ error_message
58
+ )
59
+ end # edit_custom_template
60
+ end # Real
61
+
62
+ class Mock
63
+ def edit_custom_template
64
+ raise Fog::Errors::MockNotImplemented.new(
65
+ 'Mock not implemented. Feel free to contribute.'
66
+ )
67
+ end # edit_custom_template
68
+ end # Mock
69
+
70
+ end # Compute
71
+ end # ArubaCloud
72
+ end # Fog
@@ -0,0 +1,49 @@
1
+ # coding: utf-8
2
+ #
3
+ # Author:: Dangleterre Michaël
4
+ # © Copyright ArubaCloud.
5
+ #
6
+ # LICENSE: MIT (http://opensource.org/licenses/MIT)
7
+ #
8
+
9
+ require 'fog/arubacloud/service'
10
+ require 'fog/arubacloud/error'
11
+ require 'benchmark'
12
+
13
+
14
+ module Fog
15
+ module ArubaCloud
16
+ class Compute
17
+ class Real
18
+ def modify_loadbalancer(data)
19
+ body = self.body('SetModifyLoadBalancer').merge(
20
+ :LoadBalancerStartRequest => {
21
+ :loadBalancerID => data[:id],
22
+ :name => data[:name],
23
+ :healthCheckNotification => data[:healthchecknotification]
24
+ }
25
+ )
26
+ response = nil
27
+ time = Benchmark.realtime {
28
+ response = request(body , 'SetModifyLoadBalancer', 'SetModifyLoadBalancer Error')
29
+ }
30
+ Fog::Logger.debug("SetModifyLoadBalancer time: #{time}")
31
+ if response['Success']
32
+ response
33
+ else
34
+ raise Fog::ArubaCloud::Errors::RequestError.new('Error during the request.')
35
+ end
36
+ end # modify_loadbalancer
37
+
38
+ class Mock
39
+ def modify_loadbalancer
40
+ raise Fog::Errors::MockNotImplemented.new(
41
+ 'Mock not implemented. Feel free to contribute.'
42
+ )
43
+ end # modify_loadbalancer
44
+ end # Mock
45
+ end # Real
46
+
47
+ end # Compute
48
+ end # ArubaCloud
49
+ end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -9,20 +10,15 @@ require 'fog/arubacloud/service'
9
10
  require 'fog/arubacloud/error'
10
11
 
11
12
  module Fog
12
- module Compute
13
- class ArubaCloud
13
+ module ArubaCloud
14
+ class Compute
14
15
 
15
16
  class Real
16
17
  def power_off_vm(id)
17
18
  body = self.body('SetEnqueueServerStop').merge({:ServerId => "#{id}"})
18
- options = {
19
- :http_method => :post,
20
- :method => 'SetEnqueueServerStop',
21
- :body => Fog::JSON.encode(body)
22
- }
23
19
  response = nil
24
20
  time = Benchmark.realtime {
25
- response = request(options)
21
+ response = request(body , 'SetEnqueueServerStop', 'SetEnqueueServerStop Error')
26
22
  }
27
23
  Fog::Logger.debug("SetEnqueueServerStop time: #{time}")
28
24
  if response['Success']
@@ -46,6 +42,7 @@ module Fog
46
42
  response.body
47
43
  end
48
44
  end # Mock
49
- end # ArubaCloud
50
- end # Compute
51
- end # Fog
45
+
46
+ end # Compute
47
+ end # ArubaCloud
48
+ end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -8,19 +9,14 @@
8
9
  require 'fog/arubacloud/service'
9
10
 
10
11
  module Fog
11
- module Compute
12
- class ArubaCloud
12
+ module ArubaCloud
13
+ class Compute
13
14
  class Real
14
15
  def power_on_vm(id)
15
16
  body = self.body('SetEnqueueServerStart').merge({:ServerId => "#{id}"})
16
- options = {
17
- :http_method => :post,
18
- :method => 'SetEnqueueServerStart',
19
- :body => Fog::JSON.encode(body)
20
- }
21
17
  response = nil
22
18
  time = Benchmark.realtime {
23
- response = request(options)
19
+ response = request(body , 'SetEnqueueServerStart', 'SetEnqueueServerStart Error')
24
20
  }
25
21
  Fog::Logger.debug("SetEnqueueServerStart time: #{time}")
26
22
  if response['Success']
@@ -44,6 +40,7 @@ module Fog
44
40
  response.body
45
41
  end # power_on_vm
46
42
  end # Mock
47
- end # ArubaCloud
48
- end # Compute
49
- end # Fog
43
+
44
+ end # Compute
45
+ end # ArubaCloud
46
+ end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -8,19 +9,14 @@
8
9
  require 'fog/arubacloud/service'
9
10
 
10
11
  module Fog
11
- module Compute
12
- class ArubaCloud
12
+ module ArubaCloud
13
+ class Compute
13
14
  class Real
14
15
  def purchase_ip
15
16
  body = self.body('SetPurchaseIpAddress')
16
- options = {
17
- :http_method => :post,
18
- :method => 'SetPurchaseIpAddress',
19
- :body => Fog::JSON.encode(body)
20
- }
21
17
  response = nil
22
18
  time = Benchmark.realtime {
23
- response = request(options)
19
+ response = request(body , 'SetPurchaseIpAddress', 'SetPurchaseIpAddress Error')
24
20
  }
25
21
  Fog::Logger.debug("SetPurchaseIpAddress time: #{time}")
26
22
  if response['Success']
@@ -57,6 +53,6 @@ module Fog
57
53
  end # purchase_ip
58
54
  end # Mock
59
55
 
60
- end # ArubaCloud
61
- end # Compute
62
- end # Fog
56
+ end # Compute
57
+ end # ArubaCloud
58
+ end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -9,24 +10,17 @@ require 'fog/arubacloud/service'
9
10
  require 'benchmark'
10
11
 
11
12
  module Fog
12
- module Compute
13
- class ArubaCloud
13
+ module ArubaCloud
14
+ class Compute
14
15
  class Real
15
16
  # Reinitialize a Smart VM
16
17
  # @param id [String] the id of the virtual machine to reinitialize
17
18
  # @return response [Excon::Response]
18
19
  def reinitialize_vm(id)
19
- body = self.body('SetEnqueueReinitializeServer').merge({
20
- :ServerId => id
21
- })
22
- options = {
23
- :http_method => :post,
24
- :method => 'GetServers',
25
- :body => Fog::JSON.encode(body)
26
- }
20
+ body = self.body('SetEnqueueReinitializeServer').merge({ :ServerId => id })
27
21
  response = nil
28
22
  time = Benchmark.realtime {
29
- response = request(options)
23
+ response = request(body, 'SetEnqueueReinitializeServer', 'SetEnqueueReinitializeServer Error')
30
24
  }
31
25
  Fog::Logger.debug("SetEnqueueReinitializeServer time: #{time}")
32
26
  if response['Success']
@@ -51,6 +45,6 @@ module Fog
51
45
  end # reinitialize_vm
52
46
  end # Mock
53
47
 
54
- end # ArubaCloud
55
- end # Compute
56
- end # Fog
48
+ end # Compute
49
+ end # ArubaCloud
50
+ end # Fog
@@ -0,0 +1,48 @@
1
+ # coding: utf-8
2
+ #
3
+ # Author:: Dangleterre Michaël
4
+ # © Copyright ArubaCloud.
5
+ #
6
+ # LICENSE: MIT (http://opensource.org/licenses/MIT)
7
+ #
8
+
9
+ require 'fog/arubacloud/service'
10
+ require 'fog/arubacloud/error'
11
+ require 'benchmark'
12
+
13
+
14
+ module Fog
15
+ module ArubaCloud
16
+ class Compute
17
+ class Real
18
+ def remove_contact(data)
19
+ body = self.body('SetRemoveLoadBalancerContacts').merge(
20
+ :request => {
21
+ :loadBalancerID => data[:id],
22
+ :LoadBalancerContactsID => data[:loadbalancercontactid]
23
+ }
24
+ )
25
+ response = nil
26
+ time = Benchmark.realtime {
27
+ response = request(body, 'SetRemoveLoadBalancerContacts', 'SetRemoveLoadBalancerContacts Error')
28
+ }
29
+ Fog::Logger.debug("SetRemoveLoadBalancerContacts time: #{time}")
30
+ if response['Success']
31
+ response
32
+ else
33
+ raise Fog::ArubaCloud::Errors::RequestError.new('Error during the request.')
34
+ end
35
+ end # remove_contact
36
+
37
+ class Mock
38
+ def remove_contact
39
+ raise Fog::Errors::MockNotImplemented.new(
40
+ 'Mock not implemented. Feel free to contribute.'
41
+ )
42
+ end # remove_contact
43
+ end # Mock
44
+ end # Real
45
+
46
+ end # Compute
47
+ end # ArubaCloud
48
+ end # Fog
@@ -0,0 +1,56 @@
1
+ # coding: utf-8
2
+ #
3
+ # Author:: Dangleterre Michaël
4
+ # © Copyright ArubaCloud.
5
+ #
6
+ # LICENSE: MIT (http://opensource.org/licenses/MIT)
7
+ #
8
+
9
+ require 'fog/arubacloud/service'
10
+ require 'fog/arubacloud/error'
11
+ require 'benchmark'
12
+
13
+
14
+ module Fog
15
+ module ArubaCloud
16
+ class Compute
17
+ class Real
18
+ def remove_instance(data)
19
+ body = self.body('SetEnqueueLoadBalancerRemoveInstances').merge(
20
+ :Instances => {
21
+ :loadBalancerID => data[:id],
22
+ :Instances => [
23
+ {
24
+ :LoadBalancerInstance => [
25
+ {
26
+ :IPAddress => data[:ipaddress]
27
+ }
28
+ ]
29
+ }
30
+ ]
31
+ }
32
+ )
33
+ response = nil
34
+ time = Benchmark.realtime {
35
+ response = request(body, 'SetEnqueueLoadBalancerRemoveInstances', 'SetEnqueueLoadBalancerRemoveInstances Error')
36
+ }
37
+ Fog::Logger.debug("SetEnqueueLoadBalancerRemoveInstances time: #{time}")
38
+ if response['Success']
39
+ response
40
+ else
41
+ raise Fog::ArubaCloud::Errors::RequestError.new('Error during the request.')
42
+ end
43
+ end # remove_instance
44
+
45
+ class Mock
46
+ def remove_instance
47
+ raise Fog::Errors::MockNotImplemented.new(
48
+ 'Mock not implemented. Feel free to contribute.'
49
+ )
50
+ end # remove_instance
51
+ end # Mock
52
+ end # Real
53
+
54
+ end # Compute
55
+ end # ArubaCloud
56
+ end # Fog
@@ -1,3 +1,4 @@
1
+ # coding: utf-8
1
2
  #
2
3
  # Author:: Alessio Rocchi (<alessio.rocchi@staff.aruba.it>)
3
4
  # © Copyright ArubaCloud.
@@ -8,21 +9,16 @@
8
9
  require 'fog/arubacloud/service'
9
10
 
10
11
  module Fog
11
- module Compute
12
- class ArubaCloud
12
+ module ArubaCloud
13
+ class Compute
13
14
  class Real
14
15
  def remove_ip(id)
15
16
  body = self.body('SetRemoveIpAddress').merge(
16
17
  {:IpAddressResourceId => id}
17
18
  )
18
- options = {
19
- :http_method => :post,
20
- :method => 'SetRemoveIpAddress',
21
- :body => Fog::JSON.encode(body)
22
- }
23
19
  response = nil
24
20
  time = Benchmark.realtime {
25
- response = request(options)
21
+ response = request(body, 'SetRemoveIpAddress', 'SetRemoveIpAddress Error')
26
22
  }
27
23
  Fog::Logger.debug("SetRemoveIpAddress time: #{time}")
28
24
  if response['Success']
@@ -48,6 +44,6 @@ module Fog
48
44
  end # remove_ip
49
45
  end # Mock
50
46
 
51
- end # ArubaCloud
52
- end # Compute
53
- end # Fog
47
+ end # Compute
48
+ end # ArubaCloud
49
+ end # Fog