fog 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (219) hide show
  1. data/.gitignore +2 -2
  2. data/README.md +9 -10
  3. data/Rakefile +15 -299
  4. data/changelog.txt +153 -0
  5. data/docs/about/contributing.markdown +1 -0
  6. data/docs/dns/index.markdown +1 -1
  7. data/docs/index.markdown +8 -3
  8. data/fog.gemspec +3 -3
  9. data/lib/fog.rb +0 -5
  10. data/lib/fog/aws/auto_scaling.rb +1 -1
  11. data/lib/fog/aws/cloud_watch.rb +1 -1
  12. data/lib/fog/aws/compute.rb +2 -1
  13. data/lib/fog/aws/dynamodb.rb +30 -64
  14. data/lib/fog/aws/elb.rb +1 -1
  15. data/lib/fog/aws/glacier.rb +1 -1
  16. data/lib/fog/aws/iam.rb +1 -0
  17. data/lib/fog/aws/models/auto_scaling/group.rb +1 -1
  18. data/lib/fog/aws/models/compute/server.rb +2 -0
  19. data/lib/fog/aws/models/compute/volume.rb +0 -1
  20. data/lib/fog/aws/models/iam/user.rb +1 -1
  21. data/lib/fog/aws/parsers/compute/describe_instances.rb +3 -1
  22. data/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb +1 -1
  23. data/lib/fog/aws/parsers/storage/delete_multiple_objects.rb +50 -0
  24. data/lib/fog/aws/rds.rb +2 -2
  25. data/lib/fog/aws/requests/compute/describe_availability_zones.rb +3 -0
  26. data/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb +11 -8
  27. data/lib/fog/aws/requests/compute/modify_volume_attribute.rb +51 -0
  28. data/lib/fog/aws/requests/dns/change_resource_record_sets.rb +1 -0
  29. data/lib/fog/aws/requests/storage/delete_multiple_objects.rb +172 -0
  30. data/lib/fog/aws/signaturev4.rb +1 -1
  31. data/lib/fog/aws/sqs.rb +1 -1
  32. data/lib/fog/aws/storage.rb +2 -0
  33. data/lib/fog/bluebox/requests/compute/create_block.rb +1 -3
  34. data/lib/fog/brightbox/compute.rb +239 -84
  35. data/lib/fog/brightbox/models/compute/account.rb +9 -3
  36. data/lib/fog/brightbox/models/compute/server.rb +2 -1
  37. data/lib/fog/brightbox/models/compute/servers.rb +33 -1
  38. data/lib/fog/brightbox/oauth2.rb +164 -0
  39. data/lib/fog/brightbox/requests/compute/activate_console_server.rb +9 -2
  40. data/lib/fog/brightbox/requests/compute/add_listeners_load_balancer.rb +11 -2
  41. data/lib/fog/brightbox/requests/compute/add_nodes_load_balancer.rb +11 -2
  42. data/lib/fog/brightbox/requests/compute/add_servers_server_group.rb +9 -11
  43. data/lib/fog/brightbox/requests/compute/apply_to_firewall_policy.rb +11 -2
  44. data/lib/fog/brightbox/requests/compute/create_api_client.rb +11 -2
  45. data/lib/fog/brightbox/requests/compute/create_application.rb +11 -2
  46. data/lib/fog/brightbox/requests/compute/create_cloud_ip.rb +11 -1
  47. data/lib/fog/brightbox/requests/compute/create_firewall_policy.rb +13 -2
  48. data/lib/fog/brightbox/requests/compute/create_firewall_rule.rb +17 -2
  49. data/lib/fog/brightbox/requests/compute/create_image.rb +18 -2
  50. data/lib/fog/brightbox/requests/compute/create_load_balancer.rb +14 -2
  51. data/lib/fog/brightbox/requests/compute/create_server.rb +17 -2
  52. data/lib/fog/brightbox/requests/compute/create_server_group.rb +11 -2
  53. data/lib/fog/brightbox/requests/compute/destroy_api_client.rb +9 -2
  54. data/lib/fog/brightbox/requests/compute/destroy_application.rb +9 -2
  55. data/lib/fog/brightbox/requests/compute/destroy_cloud_ip.rb +9 -2
  56. data/lib/fog/brightbox/requests/compute/destroy_firewall_policy.rb +9 -2
  57. data/lib/fog/brightbox/requests/compute/destroy_firewall_rule.rb +9 -2
  58. data/lib/fog/brightbox/requests/compute/destroy_image.rb +9 -2
  59. data/lib/fog/brightbox/requests/compute/destroy_load_balancer.rb +9 -2
  60. data/lib/fog/brightbox/requests/compute/destroy_server.rb +9 -2
  61. data/lib/fog/brightbox/requests/compute/destroy_server_group.rb +9 -2
  62. data/lib/fog/brightbox/requests/compute/get_account.rb +7 -15
  63. data/lib/fog/brightbox/requests/compute/get_api_client.rb +9 -2
  64. data/lib/fog/brightbox/requests/compute/get_application.rb +9 -2
  65. data/lib/fog/brightbox/requests/compute/get_authenticated_user.rb +1 -3
  66. data/lib/fog/brightbox/requests/compute/get_cloud_ip.rb +9 -2
  67. data/lib/fog/brightbox/requests/compute/get_firewall_policy.rb +9 -2
  68. data/lib/fog/brightbox/requests/compute/get_firewall_rule.rb +9 -2
  69. data/lib/fog/brightbox/requests/compute/get_image.rb +9 -2
  70. data/lib/fog/brightbox/requests/compute/get_interface.rb +9 -2
  71. data/lib/fog/brightbox/requests/compute/get_load_balancer.rb +9 -2
  72. data/lib/fog/brightbox/requests/compute/get_scoped_account.rb +1 -5
  73. data/lib/fog/brightbox/requests/compute/get_server.rb +9 -2
  74. data/lib/fog/brightbox/requests/compute/get_server_group.rb +9 -2
  75. data/lib/fog/brightbox/requests/compute/get_server_type.rb +9 -2
  76. data/lib/fog/brightbox/requests/compute/get_user.rb +7 -15
  77. data/lib/fog/brightbox/requests/compute/get_zone.rb +9 -2
  78. data/lib/fog/brightbox/requests/compute/list_accounts.rb +6 -2
  79. data/lib/fog/brightbox/requests/compute/list_api_clients.rb +8 -2
  80. data/lib/fog/brightbox/requests/compute/list_applications.rb +8 -2
  81. data/lib/fog/brightbox/requests/compute/list_cloud_ips.rb +8 -2
  82. data/lib/fog/brightbox/requests/compute/list_firewall_policies.rb +8 -2
  83. data/lib/fog/brightbox/requests/compute/list_images.rb +8 -2
  84. data/lib/fog/brightbox/requests/compute/list_load_balancers.rb +8 -2
  85. data/lib/fog/brightbox/requests/compute/list_server_groups.rb +8 -2
  86. data/lib/fog/brightbox/requests/compute/list_server_types.rb +8 -2
  87. data/lib/fog/brightbox/requests/compute/list_servers.rb +8 -2
  88. data/lib/fog/brightbox/requests/compute/list_users.rb +8 -2
  89. data/lib/fog/brightbox/requests/compute/list_zones.rb +8 -2
  90. data/lib/fog/brightbox/requests/compute/map_cloud_ip.rb +11 -2
  91. data/lib/fog/brightbox/requests/compute/move_servers_server_group.rb +10 -12
  92. data/lib/fog/brightbox/requests/compute/remove_firewall_policy.rb +11 -2
  93. data/lib/fog/brightbox/requests/compute/remove_listeners_load_balancer.rb +11 -2
  94. data/lib/fog/brightbox/requests/compute/remove_nodes_load_balancer.rb +11 -2
  95. data/lib/fog/brightbox/requests/compute/remove_servers_server_group.rb +9 -10
  96. data/lib/fog/brightbox/requests/compute/reset_ftp_password_account.rb +22 -3
  97. data/lib/fog/brightbox/requests/compute/reset_ftp_password_scoped_account.rb +18 -0
  98. data/lib/fog/brightbox/requests/compute/reset_secret_api_client.rb +13 -1
  99. data/lib/fog/brightbox/requests/compute/reset_secret_application.rb +9 -2
  100. data/lib/fog/brightbox/requests/compute/shutdown_server.rb +9 -2
  101. data/lib/fog/brightbox/requests/compute/snapshot_server.rb +9 -2
  102. data/lib/fog/brightbox/requests/compute/start_server.rb +9 -2
  103. data/lib/fog/brightbox/requests/compute/stop_server.rb +9 -2
  104. data/lib/fog/brightbox/requests/compute/unmap_cloud_ip.rb +9 -2
  105. data/lib/fog/brightbox/requests/compute/update_account.rb +32 -34
  106. data/lib/fog/brightbox/requests/compute/update_api_client.rb +12 -2
  107. data/lib/fog/brightbox/requests/compute/update_application.rb +12 -2
  108. data/lib/fog/brightbox/requests/compute/update_cloud_ip.rb +13 -2
  109. data/lib/fog/brightbox/requests/compute/update_firewall_rule.rb +16 -1
  110. data/lib/fog/brightbox/requests/compute/update_image.rb +17 -2
  111. data/lib/fog/brightbox/requests/compute/update_load_balancer.rb +15 -2
  112. data/lib/fog/brightbox/requests/compute/update_scoped_account.rb +12 -19
  113. data/lib/fog/brightbox/requests/compute/update_server.rb +12 -2
  114. data/lib/fog/brightbox/requests/compute/update_server_group.rb +12 -2
  115. data/lib/fog/brightbox/requests/compute/update_user.rb +15 -2
  116. data/lib/fog/cloudstack/models/compute/server.rb +3 -1
  117. data/lib/fog/core.rb +1 -0
  118. data/lib/fog/core/connection.rb +1 -0
  119. data/lib/fog/google/storage.rb +13 -2
  120. data/lib/fog/libvirt/models/compute/server.rb +1 -0
  121. data/lib/fog/libvirt/requests/compute/list_domains.rb +2 -2
  122. data/lib/fog/openstack.rb +57 -58
  123. data/lib/fog/openstack/compute.rb +15 -14
  124. data/lib/fog/openstack/identity.rb +10 -2
  125. data/lib/fog/openstack/image.rb +1 -1
  126. data/lib/fog/openstack/models/compute/flavor.rb +5 -1
  127. data/lib/fog/openstack/models/compute/security_group.rb +1 -1
  128. data/lib/fog/openstack/models/compute/server.rb +5 -0
  129. data/lib/fog/openstack/models/identity/users.rb +1 -2
  130. data/lib/fog/openstack/requests/compute/create_flavor.rb +4 -1
  131. data/lib/fog/openstack/requests/compute/create_security_group.rb +1 -1
  132. data/lib/fog/openstack/requests/compute/get_limits.rb +93 -0
  133. data/lib/fog/openstack/requests/compute/list_tenants.rb +1 -0
  134. data/lib/fog/openstack/requests/compute/release_address.rb +13 -1
  135. data/lib/fog/openstack/requests/compute/reset_server_state.rb +24 -0
  136. data/lib/fog/openstack/requests/identity/create_role.rb +1 -1
  137. data/lib/fog/openstack/requests/identity/set_tenant.rb +21 -0
  138. data/lib/fog/openstack/volume.rb +2 -1
  139. data/lib/fog/rackspace/models/compute_v2/server.rb +27 -0
  140. data/lib/fog/rackspace/models/compute_v2/servers.rb +8 -0
  141. data/lib/fog/rackspace/models/dns/record.rb +14 -1
  142. data/lib/fog/rackspace/models/storage/file.rb +68 -2
  143. data/lib/fog/rackspace/requests/compute_v2/create_server.rb +3 -0
  144. data/lib/fog/version.rb +5 -0
  145. data/lib/fog/vsphere/compute.rb +74 -8
  146. data/lib/fog/vsphere/models/compute/cluster.rb +31 -0
  147. data/lib/fog/vsphere/models/compute/clusters.rb +26 -0
  148. data/lib/fog/vsphere/models/compute/datacenter.rb +35 -0
  149. data/lib/fog/vsphere/models/compute/datacenters.rb +23 -0
  150. data/lib/fog/vsphere/models/compute/datastore.rb +24 -0
  151. data/lib/fog/vsphere/models/compute/datastores.rb +25 -0
  152. data/lib/fog/vsphere/models/compute/folder.rb +28 -0
  153. data/lib/fog/vsphere/models/compute/folders.rb +27 -0
  154. data/lib/fog/vsphere/models/compute/interface.rb +39 -0
  155. data/lib/fog/vsphere/models/compute/interfaces.rb +33 -0
  156. data/lib/fog/vsphere/models/compute/network.rb +21 -0
  157. data/lib/fog/vsphere/models/compute/networks.rb +25 -0
  158. data/lib/fog/vsphere/models/compute/resource_pool.rb +23 -0
  159. data/lib/fog/vsphere/models/compute/resource_pools.rb +26 -0
  160. data/lib/fog/vsphere/models/compute/server.rb +78 -12
  161. data/lib/fog/vsphere/models/compute/servers.rb +16 -20
  162. data/lib/fog/vsphere/models/compute/template.rb +13 -0
  163. data/lib/fog/vsphere/models/compute/templates.rb +23 -0
  164. data/lib/fog/vsphere/models/compute/volume.rb +45 -0
  165. data/lib/fog/vsphere/models/compute/volumes.rb +33 -0
  166. data/lib/fog/vsphere/requests/compute/create_vm.rb +114 -0
  167. data/lib/fog/vsphere/requests/compute/get_cluster.rb +25 -0
  168. data/lib/fog/vsphere/requests/compute/get_datacenter.rb +29 -0
  169. data/lib/fog/vsphere/requests/compute/get_datastore.rb +25 -0
  170. data/lib/fog/vsphere/requests/compute/get_folder.rb +73 -0
  171. data/lib/fog/vsphere/requests/compute/get_network.rb +25 -0
  172. data/lib/fog/vsphere/requests/compute/get_resource_pool.rb +26 -0
  173. data/lib/fog/vsphere/requests/compute/get_virtual_machine.rb +62 -0
  174. data/lib/fog/vsphere/requests/compute/list_clusters.rb +37 -0
  175. data/lib/fog/vsphere/requests/compute/list_datacenters.rb +34 -0
  176. data/lib/fog/vsphere/requests/compute/list_datastores.rb +40 -0
  177. data/lib/fog/vsphere/requests/compute/list_folders.rb +45 -0
  178. data/lib/fog/vsphere/requests/compute/list_networks.rb +38 -0
  179. data/lib/fog/vsphere/requests/compute/list_resource_pools.rb +39 -0
  180. data/lib/fog/vsphere/requests/compute/list_virtual_machines.rb +132 -166
  181. data/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb +52 -0
  182. data/lib/fog/vsphere/requests/compute/list_vm_volumes.rb +51 -0
  183. data/lib/fog/vsphere/requests/compute/vm_clone.rb +6 -8
  184. data/lib/fog/vsphere/requests/compute/vm_destroy.rb +1 -8
  185. data/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb +1 -2
  186. data/lib/tasks/changelog_task.rb +98 -0
  187. data/lib/tasks/documentation_task.rb +155 -0
  188. data/lib/tasks/test_task.rb +46 -0
  189. data/tests/aws/models/iam/users_tests.rb +16 -2
  190. data/tests/aws/requests/auto_scaling/notification_configuration_tests.rb +1 -0
  191. data/tests/aws/requests/auto_scaling/tag_tests.rb +1 -0
  192. data/tests/aws/requests/compute/instance_tests.rb +2 -0
  193. data/tests/aws/requests/compute/volume_tests.rb +8 -0
  194. data/tests/aws/requests/storage/object_tests.rb +18 -1
  195. data/tests/aws/requests/storage/versioning_tests.rb +70 -0
  196. data/tests/brightbox/compute_tests.rb +96 -4
  197. data/tests/brightbox/models/compute/account_tests.rb +15 -0
  198. data/tests/brightbox/oauth2_tests.rb +103 -0
  199. data/tests/brightbox/requests/compute/account_tests.rb +9 -2
  200. data/tests/brightbox/requests/compute/interface_tests.rb +18 -4
  201. data/tests/dns/models/record_tests.rb +17 -3
  202. data/tests/openstack/requests/compute/address_tests.rb +22 -19
  203. data/tests/openstack/requests/compute/flavor_tests.rb +4 -2
  204. data/tests/openstack/requests/compute/limit_tests.rb +60 -0
  205. data/tests/openstack/requests/compute/quota_tests.rb +16 -3
  206. data/tests/openstack/requests/compute/security_group_tests.rb +1 -1
  207. data/tests/rackspace/models/compute_v2/servers_tests.rb +6 -0
  208. data/tests/rackspace/models/storage/file_tests.rb +172 -0
  209. data/tests/rackspace/requests/dns/helper.rb +12 -26
  210. data/tests/vsphere/compute_tests.rb +3 -3
  211. data/tests/vsphere/models/compute/server_tests.rb +1 -2
  212. data/tests/vsphere/requests/compute/list_virtual_machines_tests.rb +5 -13
  213. data/tests/vsphere/requests/compute/vm_clone_tests.rb +2 -2
  214. metadata +59 -11
  215. data/lib/fog/vsphere/requests/compute/datacenters.rb +0 -34
  216. data/lib/fog/vsphere/requests/compute/find_vm_by_ref.rb +0 -41
  217. data/lib/fog/vsphere/requests/compute/vm_create.rb +0 -97
  218. data/tests/vsphere/requests/compute/find_vm_by_ref_tests.rb +0 -26
  219. data/tests/vsphere/requests/compute/vm_create_tests.rb +0 -20
@@ -2,7 +2,13 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Lists summary details of server types available to the account.
6
+ #
7
+ #
8
+ # @return [Hash] The JSON response parsed to a Hash
9
+ #
10
+ # @see https://api.gb1.brightbox.com/1.0/#server_type_list_server_types
11
+ #
6
12
  def list_server_types
7
13
  request("get", "/1.0/server_types", [200])
8
14
  end
@@ -10,4 +16,4 @@ module Fog
10
16
  end
11
17
  end
12
18
  end
13
- end
19
+ end
@@ -2,7 +2,13 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Lists summary details of servers owned by the account.
6
+ #
7
+ #
8
+ # @return [Hash] The JSON response parsed to a Hash
9
+ #
10
+ # @see https://api.gb1.brightbox.com/1.0/#server_list_servers
11
+ #
6
12
  def list_servers
7
13
  request("get", "/1.0/servers", [200])
8
14
  end
@@ -10,4 +16,4 @@ module Fog
10
16
  end
11
17
  end
12
18
  end
13
- end
19
+ end
@@ -2,7 +2,13 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Lists summary details of user.
6
+ #
7
+ #
8
+ # @return [Hash] The JSON response parsed to a Hash
9
+ #
10
+ # @see https://api.gb1.brightbox.com/1.0/#user_list_users
11
+ #
6
12
  def list_users
7
13
  request("get", "/1.0/users", [200])
8
14
  end
@@ -10,4 +16,4 @@ module Fog
10
16
  end
11
17
  end
12
18
  end
13
- end
19
+ end
@@ -2,7 +2,13 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Lists summary details of zones available to the account.
6
+ #
7
+ #
8
+ # @return [Hash] The JSON response parsed to a Hash
9
+ #
10
+ # @see https://api.gb1.brightbox.com/1.0/#zone_list_zones
11
+ #
6
12
  def list_zones
7
13
  request("get", "/1.0/zones", [200])
8
14
  end
@@ -10,4 +16,4 @@ module Fog
10
16
  end
11
17
  end
12
18
  end
13
- end
19
+ end
@@ -2,7 +2,16 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Maps (or points) a cloud IP address at a server's interface or a load balancer to allow them to respond to public requests.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ # @param [Hash] options
9
+ # @option options [String] :destination The ID of an Interface or LoadBalancer to map the Cloud IP against
10
+ #
11
+ # @return [Hash, nil] The JSON response parsed to a Hash or nil if no options passed
12
+ #
13
+ # @see https://api.gb1.brightbox.com/1.0/#cloud_ip_map_cloud_ip
14
+ #
6
15
  def map_cloud_ip(identifier, options)
7
16
  return nil if identifier.nil? || identifier == ""
8
17
  request("post", "/1.0/cloud_ips/#{identifier}/map", [202], options)
@@ -11,4 +20,4 @@ module Fog
11
20
  end
12
21
  end
13
22
  end
14
- end
23
+ end
@@ -2,21 +2,19 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
6
- # Moves a number of servers between two server groups
5
+ # Removes a number of server from the server group and adds them to another server group given in parameters.
7
6
  #
8
- # >> Compute[:brightbox].remove_servers_server_group "grp-12345", :destination => "grp-67890", :servers => [{:server => "srv-abcde"}]
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ # @param [Hash] options
9
+ # @option options [Array<Hash>] :servers Array of Hashes containing `{"server" => server_id}` for each server to remove
10
+ # @option options [String] :destination ServerGroup to move servers to
9
11
  #
10
- # == Parameters:
11
- # * identifier - The identifier (String) of the server group to remove from
12
- # * options (Hash)
13
- # * destination (String)- The identifier of the server group to move to
14
- # * servers (Array) - Array of Hashes containing {"server" => server_id} for each server to remove
15
- # [\[{"server" => "srv-abcde"}, {"server" => "srv-fghij"}\]]
12
+ # @return [Hash, nil] The JSON response parsed to a Hash or nil if no options passed
16
13
  #
17
- # == Returns:
14
+ # @see https://api.gb1.brightbox.com/1.0/#server_group_move_servers_server_group
18
15
  #
19
- # A Ruby hash of the server response
16
+ # @example
17
+ # Compute[:brightbox].remove_servers_server_group "grp-12345", :destination => "grp-67890", :servers => [{"server" => "srv-abcde"}, {"server" => "srv-fghij"}]
20
18
  #
21
19
  def move_servers_server_group(identifier, options)
22
20
  return nil if identifier.nil? || identifier == ""
@@ -26,4 +24,4 @@ module Fog
26
24
  end
27
25
  end
28
26
  end
29
- end
27
+ end
@@ -2,7 +2,16 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Removes firewall policy from given server group
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ # @param [Hash] options
9
+ # @option options [String] :server_group Server Group to remove
10
+ #
11
+ # @return [Hash, nil] The JSON response parsed to a Hash or nil if no options passed
12
+ #
13
+ # @see https://api.gb1.brightbox.com/1.0/#firewall_policy_remove_firewall_policy
14
+ #
6
15
  def remove_firewall_policy(identifier, options)
7
16
  return nil if identifier.nil? || identifier == ""
8
17
  request("post", "/1.0/firewall_policies/#{identifier}/remove", [202], options)
@@ -11,4 +20,4 @@ module Fog
11
20
  end
12
21
  end
13
22
  end
14
- end
23
+ end
@@ -2,7 +2,16 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Removes a number of listeners from a load balancer to cease balancing across nodes for those settings.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ # @param [Hash] options
9
+ # @option options [Array] :listeners Array of Listener parameters
10
+ #
11
+ # @return [Hash, nil] The JSON response parsed to a Hash or nil if no options passed
12
+ #
13
+ # @see https://api.gb1.brightbox.com/1.0/#load_balancer_remove_listeners_load_balancer
14
+ #
6
15
  def remove_listeners_load_balancer(identifier, options)
7
16
  return nil if identifier.nil? || identifier == ""
8
17
  request("post", "/1.0/load_balancers/#{identifier}/remove_listeners", [202], options)
@@ -11,4 +20,4 @@ module Fog
11
20
  end
12
21
  end
13
22
  end
14
- end
23
+ end
@@ -2,7 +2,16 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Remove a number of nodes from the load balancer
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ # @param [Hash] options
9
+ # @option options [Array] :nodes Array of Node parameters
10
+ #
11
+ # @return [Hash, nil] The JSON response parsed to a Hash or nil if no options passed
12
+ #
13
+ # @see https://api.gb1.brightbox.com/1.0/#load_balancer_remove_nodes_load_balancer
14
+ #
6
15
  def remove_nodes_load_balancer(identifier, options)
7
16
  return nil if identifier.nil? || identifier == ""
8
17
  request("post", "/1.0/load_balancers/#{identifier}/remove_nodes", [202], options)
@@ -11,4 +20,4 @@ module Fog
11
20
  end
12
21
  end
13
22
  end
14
- end
23
+ end
@@ -2,19 +2,18 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
6
- # Remove a number of servers from a server group
5
+ # Remove a number of servers from the server group.
7
6
  #
8
- # >> Compute[:brightbox].remove_servers_server_group "grp-12345", :servers => [{:server => "srv-abcde"}]
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ # @param [Hash] options
9
+ # @option options [Array<Hash>] :servers Array of Hashes containing {"server" => server_id} for each server
9
10
  #
10
- # == Parameters:
11
- # * identifier (String) - The identifier of the server group to remove from
12
- # * options (Array) - An Array of Hashes containing {"server" => server_id} for each server to remove
13
- # [\[{"server" => "srv-abcde"}, {"server" => "srv-fghij"}\]]
11
+ # @return [Hash, nil] The JSON response parsed to a Hash or nil if no options passed
14
12
  #
15
- # == Returns:
13
+ # @see https://api.gb1.brightbox.com/1.0/#server_group_remove_servers_server_group
16
14
  #
17
- # A Ruby hash of the server response
15
+ # @example
16
+ # Compute[:brightbox].remove_servers_server_group "grp-12345", :servers => [{"server" => "srv-abcde"}, {"server" => "srv-fghij"}]
18
17
  #
19
18
  def remove_servers_server_group(identifier, options)
20
19
  return nil if identifier.nil? || identifier == ""
@@ -24,4 +23,4 @@ module Fog
24
23
  end
25
24
  end
26
25
  end
27
- end
26
+ end
@@ -3,11 +3,30 @@ module Fog
3
3
  class Brightbox
4
4
  class Real
5
5
 
6
- def reset_ftp_password_account
7
- request("post", "/1.0/account/reset_ftp_password", [200])
6
+ # Reset the image library ftp password for the account.
7
+ #
8
+ # @note The response is the only time the new password is available in plaintext.
9
+ #
10
+ # @overload reset_ftp_password_account(identifier)
11
+ # @param [String] identifier Unique reference to identify the resource
12
+ #
13
+ # @overload reset_ftp_password_account()
14
+ # @deprecated Use {Fog::Compute::Brightbox::Real#get_scoped_account} instead
15
+ #
16
+ # @return [Hash] The JSON response parsed to a Hash
17
+ #
18
+ # @see https://api.gb1.brightbox.com/1.0/#account_reset_ftp_password_account
19
+ #
20
+ def reset_ftp_password_account(identifier = nil)
21
+ if identifier.nil? || identifier.empty?
22
+ Fog::Logger.deprecation("reset_ftp_password_account() without a parameter is deprecated, use reset_ftp_password_scoped_account instead [light_black](#{caller.first})[/]")
23
+ reset_ftp_password_scoped_account
24
+ else
25
+ request("post", "/1.0/accounts/#{identifier}/reset_ftp_password", [200])
26
+ end
8
27
  end
9
28
 
10
29
  end
11
30
  end
12
31
  end
13
- end
32
+ end
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module Compute
3
+ class Brightbox
4
+ class Real
5
+ # Resets the image library ftp password for the scoped account
6
+ #
7
+ # @note The response is the only time the new password is available in plaintext.
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ def reset_ftp_password_scoped_account
12
+ request("post", "/1.0/account/reset_ftp_password", [200])
13
+ end
14
+ end
15
+
16
+ end
17
+ end
18
+ end
@@ -3,6 +3,18 @@ module Fog
3
3
  class Brightbox
4
4
  class Real
5
5
 
6
+ # Resets the secret used by the API client to a new generated value.
7
+ #
8
+ # The response is the only time the new secret is available in plaintext.
9
+ #
10
+ # Already authenticated tokens will still continue to be valid until expiry.
11
+ #
12
+ # @param [String] identifier Unique reference to identify the resource
13
+ #
14
+ # @return [Hash] The JSON response parsed to a Hash
15
+ #
16
+ # @see https://api.gb1.brightbox.com/1.0/#api_client_reset_secret_api_client
17
+ #
6
18
  def reset_secret_api_client(identifier)
7
19
  return nil if identifier.nil? || identifier == ""
8
20
  request("post", "/1.0/api_clients/#{identifier}/reset_secret", [200])
@@ -11,4 +23,4 @@ module Fog
11
23
  end
12
24
  end
13
25
  end
14
- end
26
+ end
@@ -2,7 +2,14 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Resets the secret used by the application to a new generated value.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ # @see https://api.gb1.brightbox.com/1.0/#application_reset_secret_application
12
+ #
6
13
  def reset_secret_application(identifier)
7
14
  return nil if identifier.nil? || identifier == ""
8
15
  request("post", "/1.0/applications/#{identifier}/reset_secret", [200])
@@ -11,4 +18,4 @@ module Fog
11
18
  end
12
19
  end
13
20
  end
14
- end
21
+ end
@@ -2,7 +2,14 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Will issue a safe shutdown request for the server.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ # @see https://api.gb1.brightbox.com/1.0/#server_shutdown_server
12
+ #
6
13
  def shutdown_server(identifier)
7
14
  return nil if identifier.nil? || identifier == ""
8
15
  request("post", "/1.0/servers/#{identifier}/shutdown", [202])
@@ -11,4 +18,4 @@ module Fog
11
18
  end
12
19
  end
13
20
  end
14
- end
21
+ end
@@ -2,7 +2,14 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Will issue a request to snapshot the Server
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ # @see https://api.gb1.brightbox.com/1.0/#server_snapshot_server
12
+ #
6
13
  def snapshot_server(identifier)
7
14
  return nil if identifier.nil? || identifier == ""
8
15
  request("post", "/1.0/servers/#{identifier}/snapshot", [202])
@@ -11,4 +18,4 @@ module Fog
11
18
  end
12
19
  end
13
20
  end
14
- end
21
+ end
@@ -2,7 +2,14 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Will issue a start request for the server to become active.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ # @see https://api.gb1.brightbox.com/1.0/#server_start_server
12
+ #
6
13
  def start_server(identifier)
7
14
  return nil if identifier.nil? || identifier == ""
8
15
  request("post", "/1.0/servers/#{identifier}/start", [202])
@@ -11,4 +18,4 @@ module Fog
11
18
  end
12
19
  end
13
20
  end
14
- end
21
+ end
@@ -2,7 +2,14 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Will issue a stop request for the server to become inactive.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ # @see https://api.gb1.brightbox.com/1.0/#server_stop_server
12
+ #
6
13
  def stop_server(identifier)
7
14
  return nil if identifier.nil? || identifier == ""
8
15
  request("post", "/1.0/servers/#{identifier}/stop", [202])
@@ -11,4 +18,4 @@ module Fog
11
18
  end
12
19
  end
13
20
  end
14
- end
21
+ end
@@ -2,7 +2,14 @@ module Fog
2
2
  module Compute
3
3
  class Brightbox
4
4
  class Real
5
-
5
+ # Unmaps a cloud IP address from its current destination making it available to remap. This remains in the account's pool of addresses.
6
+ #
7
+ # @param [String] identifier Unique reference to identify the resource
8
+ #
9
+ # @return [Hash] The JSON response parsed to a Hash
10
+ #
11
+ # @see https://api.gb1.brightbox.com/1.0/#cloud_ip_unmap_cloud_ip
12
+ #
6
13
  def unmap_cloud_ip(identifier)
7
14
  return nil if identifier.nil? || identifier == ""
8
15
  request("post", "/1.0/cloud_ips/#{identifier}/unmap", [202])
@@ -11,4 +18,4 @@ module Fog
11
18
  end
12
19
  end
13
20
  end
14
- end
21
+ end