fog 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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