brightbox-cli 1.1.0 → 1.2.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 (237) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -0
  3. data/CHANGELOG.md +18 -0
  4. data/Gemfile.lock +18 -19
  5. data/bin/_brightbox-bash-completer +42 -0
  6. data/brightbox-cli.gemspec +5 -5
  7. data/lib/brightbox-cli/accounts.rb +1 -3
  8. data/lib/brightbox-cli/api.rb +27 -8
  9. data/lib/brightbox-cli/cloud_ips.rb +11 -15
  10. data/lib/brightbox-cli/collaborating_account.rb +23 -26
  11. data/lib/brightbox-cli/collaboration.rb +1 -1
  12. data/lib/brightbox-cli/commands/{accounts-accept-invite.rb → accounts/accept-invite.rb} +2 -3
  13. data/lib/brightbox-cli/commands/{accounts-default.rb → accounts/default.rb} +1 -3
  14. data/lib/brightbox-cli/commands/{accounts-list.rb → accounts/list.rb} +1 -1
  15. data/lib/brightbox-cli/commands/{accounts-remove.rb → accounts/remove.rb} +1 -2
  16. data/lib/brightbox-cli/commands/{accounts-reset-ftp-password.rb → accounts/reset-ftp-password.rb} +10 -5
  17. data/lib/brightbox-cli/commands/{accounts-show.rb → accounts/show.rb} +14 -6
  18. data/lib/brightbox-cli/commands/{cloudips-create.rb → cloudips/create.rb} +4 -4
  19. data/lib/brightbox-cli/commands/{cloudips-destroy.rb → cloudips/destroy.rb} +1 -1
  20. data/lib/brightbox-cli/commands/{cloudips-list.rb → cloudips/list.rb} +2 -10
  21. data/lib/brightbox-cli/commands/{cloudips-map.rb → cloudips/map.rb} +2 -8
  22. data/lib/brightbox-cli/commands/{cloudips-show.rb → cloudips/show.rb} +13 -3
  23. data/lib/brightbox-cli/commands/{cloudips-unmap.rb → cloudips/unmap.rb} +1 -1
  24. data/lib/brightbox-cli/commands/{cloudips-update.rb → cloudips/update.rb} +5 -6
  25. data/lib/brightbox-cli/commands/collaborations.rb +3 -9
  26. data/lib/brightbox-cli/commands/{config-client-add.rb → config/client-add.rb} +2 -2
  27. data/lib/brightbox-cli/commands/{config-client-default.rb → config/client-default.rb} +1 -1
  28. data/lib/brightbox-cli/commands/{config-client-list.rb → config/client-list.rb} +3 -3
  29. data/lib/brightbox-cli/commands/{config-client-remove.rb → config/client-remove.rb} +4 -1
  30. data/lib/brightbox-cli/commands/{config-user-add.rb → config/user-add.rb} +1 -1
  31. data/lib/brightbox-cli/commands/{firewall-policies-apply.rb → firewall/policies-apply.rb} +3 -4
  32. data/lib/brightbox-cli/commands/{firewall-policies-create.rb → firewall/policies-create.rb} +3 -4
  33. data/lib/brightbox-cli/commands/{firewall-policies-destroy.rb → firewall/policies-destroy.rb} +2 -3
  34. data/lib/brightbox-cli/commands/{firewall-policies-list.rb → firewall/policies-list.rb} +2 -9
  35. data/lib/brightbox-cli/commands/{firewall-policies-remove.rb → firewall/policies-remove.rb} +2 -3
  36. data/lib/brightbox-cli/commands/{firewall-policies-show.rb → firewall/policies-show.rb} +11 -3
  37. data/lib/brightbox-cli/commands/{firewall-policies-update.rb → firewall/policies-update.rb} +3 -3
  38. data/lib/brightbox-cli/commands/{firewall-rules-create.rb → firewall/rules-create.rb} +4 -4
  39. data/lib/brightbox-cli/commands/{firewall-rules-destroy.rb → firewall/rules-destroy.rb} +2 -4
  40. data/lib/brightbox-cli/commands/{firewall-rules-list.rb → firewall/rules-list.rb} +2 -2
  41. data/lib/brightbox-cli/commands/{firewall-rules-show.rb → firewall/rules-show.rb} +10 -4
  42. data/lib/brightbox-cli/commands/{firewall-rules-update.rb → firewall/rules-update.rb} +3 -3
  43. data/lib/brightbox-cli/commands/{groups-add-server.rb → groups/add-server.rb} +2 -2
  44. data/lib/brightbox-cli/commands/{groups-create.rb → groups/create.rb} +3 -3
  45. data/lib/brightbox-cli/commands/{groups-destroy.rb → groups/destroy.rb} +2 -2
  46. data/lib/brightbox-cli/commands/groups/list.rb +14 -0
  47. data/lib/brightbox-cli/commands/{groups-move_servers.rb → groups/move_servers.rb} +1 -2
  48. data/lib/brightbox-cli/commands/{groups-remove-servers.rb → groups/remove-servers.rb} +1 -1
  49. data/lib/brightbox-cli/commands/{groups-show.rb → groups/show.rb} +1 -1
  50. data/lib/brightbox-cli/commands/{groups-update.rb → groups/update.rb} +5 -10
  51. data/lib/brightbox-cli/commands/{images-destroy.rb → images/destroy.rb} +2 -2
  52. data/lib/brightbox-cli/commands/{images-list.rb → images/list.rb} +2 -10
  53. data/lib/brightbox-cli/commands/{images-register.rb → images/register.rb} +6 -6
  54. data/lib/brightbox-cli/commands/{images-show.rb → images/show.rb} +2 -11
  55. data/lib/brightbox-cli/commands/{images-update.rb → images/update.rb} +8 -8
  56. data/lib/brightbox-cli/commands/{lbs-add-nodes.rb → lbs/add-nodes.rb} +2 -2
  57. data/lib/brightbox-cli/commands/{lbs-create.rb → lbs/create.rb} +16 -10
  58. data/lib/brightbox-cli/commands/{lbs-destroy.rb → lbs/destroy.rb} +1 -1
  59. data/lib/brightbox-cli/commands/{lbs-list.rb → lbs/list.rb} +2 -10
  60. data/lib/brightbox-cli/commands/{lbs-remove-nodes.rb → lbs/remove-nodes.rb} +2 -2
  61. data/lib/brightbox-cli/commands/{lbs-show.rb → lbs/show.rb} +4 -7
  62. data/lib/brightbox-cli/commands/{lbs-update.rb → lbs/update.rb} +16 -10
  63. data/lib/brightbox-cli/commands/{servers-activate-console.rb → servers/activate-console.rb} +3 -3
  64. data/lib/brightbox-cli/commands/{servers-create.rb → servers/create.rb} +4 -4
  65. data/lib/brightbox-cli/commands/{servers-destroy.rb → servers/destroy.rb} +2 -2
  66. data/lib/brightbox-cli/commands/{servers-list.rb → servers/list.rb} +7 -8
  67. data/lib/brightbox-cli/commands/{servers-show.rb → servers/show.rb} +1 -6
  68. data/lib/brightbox-cli/commands/{servers-shutdown.rb → servers/shutdown.rb} +1 -1
  69. data/lib/brightbox-cli/commands/{servers-snapshot.rb → servers/snapshot.rb} +1 -1
  70. data/lib/brightbox-cli/commands/{servers-start.rb → servers/start.rb} +1 -1
  71. data/lib/brightbox-cli/commands/{servers-stop.rb → servers/stop.rb} +1 -1
  72. data/lib/brightbox-cli/commands/{servers-update.rb → servers/update.rb} +2 -2
  73. data/lib/brightbox-cli/commands/sql/instances_create.rb +66 -0
  74. data/lib/brightbox-cli/commands/sql/instances_destroy.rb +28 -0
  75. data/lib/brightbox-cli/commands/sql/instances_list.rb +27 -0
  76. data/lib/brightbox-cli/commands/sql/instances_reset_password.rb +33 -0
  77. data/lib/brightbox-cli/commands/sql/instances_show.rb +26 -0
  78. data/lib/brightbox-cli/commands/sql/instances_snapshot.rb +25 -0
  79. data/lib/brightbox-cli/commands/sql/instances_update.rb +45 -0
  80. data/lib/brightbox-cli/commands/sql/snapshots_destroy.rb +31 -0
  81. data/lib/brightbox-cli/commands/sql/snapshots_list.rb +25 -0
  82. data/lib/brightbox-cli/commands/sql/snapshots_show.rb +26 -0
  83. data/lib/brightbox-cli/commands/sql/snapshots_update.rb +37 -0
  84. data/lib/brightbox-cli/commands/sql/types.rb +53 -0
  85. data/lib/brightbox-cli/commands/types.rb +1 -1
  86. data/lib/brightbox-cli/commands/users/list.rb +17 -0
  87. data/lib/brightbox-cli/commands/{users-show.rb → users/show.rb} +5 -13
  88. data/lib/brightbox-cli/commands/{users-update.rb → users/update.rb} +3 -3
  89. data/lib/brightbox-cli/config.rb +4 -7
  90. data/lib/brightbox-cli/config/accounts.rb +3 -6
  91. data/lib/brightbox-cli/config/api_client.rb +12 -4
  92. data/lib/brightbox-cli/config/authentication_tokens.rb +8 -14
  93. data/lib/brightbox-cli/config/clients.rb +6 -7
  94. data/lib/brightbox-cli/config/section_name_deduplicator.rb +4 -5
  95. data/lib/brightbox-cli/config/sections.rb +7 -10
  96. data/lib/brightbox-cli/config/user_application.rb +15 -7
  97. data/lib/brightbox-cli/connection_manager.rb +1 -2
  98. data/lib/brightbox-cli/database_server.rb +100 -0
  99. data/lib/brightbox-cli/database_snapshot.rb +36 -0
  100. data/lib/brightbox-cli/database_type.rb +44 -0
  101. data/lib/brightbox-cli/detailed_server.rb +8 -7
  102. data/lib/brightbox-cli/error_parser.rb +8 -4
  103. data/lib/brightbox-cli/firewall_rule.rb +5 -5
  104. data/lib/brightbox-cli/firewall_rules.rb +2 -3
  105. data/lib/brightbox-cli/gli_global_hooks.rb +7 -7
  106. data/lib/brightbox-cli/images.rb +13 -14
  107. data/lib/brightbox-cli/legacy/args_adjuster.rb +5 -6
  108. data/lib/brightbox-cli/load_balancers.rb +10 -13
  109. data/lib/brightbox-cli/logging.rb +3 -3
  110. data/lib/brightbox-cli/nilable_hash.rb +1 -1
  111. data/lib/brightbox-cli/ruby_core_ext.rb +1 -2
  112. data/lib/brightbox-cli/server_groups.rb +5 -5
  113. data/lib/brightbox-cli/servers.rb +9 -9
  114. data/lib/brightbox-cli/tables.rb +24 -25
  115. data/lib/brightbox-cli/types.rb +6 -5
  116. data/lib/brightbox-cli/user_collaboration.rb +2 -3
  117. data/lib/brightbox-cli/users.rb +3 -3
  118. data/lib/brightbox-cli/version.rb +1 -1
  119. data/lib/brightbox_cli.rb +10 -2
  120. data/locales/en.yml +205 -0
  121. data/spec/cassettes/Brightbox_Account/_all/when_connected_using_an_application/returns_a_collection_of_Accounts.yml +10 -10
  122. data/spec/cassettes/Brightbox_Account/_all/when_connected_using_an_application/returns_resources_on_the_same_connection.yml +4 -4
  123. data/spec/cassettes/Brightbox_Account/_all/when_connected_using_an_client/returns_a_collection_of_Accounts.yml +8 -8
  124. data/spec/cassettes/Brightbox_Account/_all/when_connected_using_an_client/returns_resources_on_the_same_connection.yml +4 -4
  125. data/spec/cassettes/Brightbox_BBConfig/_add_section/when_first_and_only_client/saves_changes_to_the_config_file.yml +4 -4
  126. data/spec/cassettes/Brightbox_BBConfig/_add_section/when_first_and_only_client/saves_the_default_account.yml +4 -4
  127. data/spec/cassettes/Brightbox_BBConfig/_add_section/when_first_and_only_client/saves_the_new_client_as_the_default.yml +4 -4
  128. data/spec/cassettes/Brightbox_BBConfig/_find_or_set_default_account/when_client_is_not_authenticated/does_not_raise_an_error.yml +176 -176
  129. data/spec/cassettes/Brightbox_BBConfig/_find_or_set_default_account/when_client_may_access_one_account/updates_the_setting.yml +176 -176
  130. data/spec/cassettes/Brightbox_BBConfig/_renew_tokens/when_config_in_use_is_not_the_default/uses_correct_credentials.yml +2 -2
  131. data/spec/cassettes/Brightbox_BBConfig/_renew_tokens/when_using_a_user_app_with_a_cached_refresh_token/caches_the_new_tokens.yml +2 -2
  132. data/spec/cassettes/Brightbox_BBConfig/_renew_tokens/when_using_a_user_app_with_an_expired_refresh_token/caches_the_new_tokens.yml +4 -4
  133. data/spec/cassettes/Brightbox_BBConfig/_renew_tokens/when_using_a_user_app_with_no_tokens/caches_the_new_tokens.yml +2 -2
  134. data/spec/cassettes/Brightbox_BBConfig/_renew_tokens/when_using_a_user_app_with_no_tokens/prompts_user_to_retry_command.yml +2 -2
  135. data/spec/cassettes/Brightbox_BBConfig/_renew_tokens/when_using_an_API_client_with_no_tokens/caches_a_new_access_token.yml +2 -2
  136. data/spec/cassettes/Brightbox_CloudIP/_find_all_/when_a_Cloud_IP_exists/returns_a_suitable.yml +28 -28
  137. data/spec/cassettes/Brightbox_FirewallPolicy/_apply_to/should_apply_firewall_policy.yml +24 -24
  138. data/spec/cassettes/Brightbox_FirewallPolicy/_create/should_create_firewall_policy.yml +24 -24
  139. data/spec/cassettes/Brightbox_FirewallPolicy/_destroy/should_destroy_firewall_policy.yml +28 -28
  140. data/spec/cassettes/Brightbox_FirewallPolicy/_find_all_/when_a_policy_exists/should_list_firewall_policy.yml +24 -24
  141. data/spec/cassettes/Brightbox_FirewallPolicy/_find_or_call/when_a_policy_exists/should_show_firewall_policy.yml +20 -20
  142. data/spec/cassettes/Brightbox_FirewallRule/_create/when_policy_exists/creates_the_rule_successfully.yml +24 -24
  143. data/spec/cassettes/Brightbox_FirewallRule/_destroy/when_rule_exists/destroys_a_rule.yml +20 -20
  144. data/spec/cassettes/Brightbox_FirewallRule/_find/when_rule_exists/can_display_the_result.yml +24 -24
  145. data/spec/cassettes/Brightbox_FirewallRule/_from_policy/when_policy_exists_with_a_rule/lists_all_rules.yml +32 -32
  146. data/spec/cassettes/Brightbox_Server/_destroy/when_server_exists/should_work.yml +20 -20
  147. data/spec/cassettes/Brightbox_Server/_find_all_/when_a_server_exists/should_print_server_list.yml +28 -28
  148. data/spec/cassettes/Brightbox_Server/_show/when_server_exists/shows_detailed_attributes_of_a_server.yml +32 -32
  149. data/spec/cassettes/Brightbox_Server/_shutdown/should_work.yml +32 -32
  150. data/spec/cassettes/Brightbox_Server/_start/should_work.yml +44 -44
  151. data/spec/cassettes/Brightbox_Server/_stop/should_work.yml +32 -32
  152. data/spec/cassettes/Brightbox_Server/_update/when_passing_new_group_membership/should_update_with_group.yml +40 -40
  153. data/spec/cassettes/Brightbox_ServerGroup/_find_all_/when_a_group_exists/list_server_groups.yml +24 -24
  154. data/spec/cassettes/Firewall_policies/update/when_the_policy_does_not_exist/prints_error_to_STDERR.yml +6 -6
  155. data/spec/cassettes/brightbox_accounts/list/_when_access_token_expired_/does_not_report_invalid_token_errors.yml +18 -18
  156. data/spec/cassettes/brightbox_accounts/list/_when_both_tokens_expired_/does_not_report_invalid_token_errors.yml +18 -18
  157. data/spec/cassettes/brightbox_accounts/list/_when_invalid_tokens_/does_not_report_invalid_token_errors.yml +18 -18
  158. data/spec/cassettes/brightbox_accounts/list/_when_no_tokens_/does_not_report_invalid_token_errors.yml +16 -16
  159. data/spec/cassettes/brightbox_accounts/list/_when_no_tokens_/reports_they_were_updated.yml +14 -14
  160. data/spec/cassettes/brightbox_accounts/list/_when_no_tokens_and_password_incorrect_/does_not_report_invalid_token_errors.yml +14 -14
  161. data/spec/cassettes/brightbox_accounts/list/_when_no_tokens_and_password_incorrect_/reports_unable_to_authenticate.yml +12 -12
  162. data/spec/cassettes/brightbox_accounts/list/does_not_error.yml +6 -6
  163. data/spec/cassettes/brightbox_cloudips/map/when_destination_is_a_server_ID/passes_the_interface_identifier_to_the_API.yml +542 -0
  164. data/spec/cassettes/brightbox_cloudips/map/when_destination_is_another_value/passes_the_identifier_to_the_API.yml +317 -0
  165. data/spec/cassettes/brightbox_config/client_add/when_adding_a_new_client/does_not_error.yml +154 -154
  166. data/spec/cassettes/brightbox_config/client_add/when_adding_a_new_client/sets_up_the_config.yml +154 -154
  167. data/spec/cassettes/brightbox_config/client_add/when_new_client_is_first_and_only_client/does_not_change_the_default_client.yml +154 -154
  168. data/spec/cassettes/brightbox_config/client_add/when_new_client_is_first_and_only_client/does_not_error.yml +154 -154
  169. data/spec/cassettes/brightbox_config/client_add/when_new_client_is_first_and_only_client/sets_this_as_the_default_client.yml +154 -154
  170. data/spec/cassettes/brightbox_config/client_add/when_new_client_is_first_and_only_client/sets_up_the_config.yml +154 -154
  171. data/spec/cassettes/brightbox_config/user_add/when_NO_config_file_on_disk/sets_up_the_config.yml +10 -10
  172. data/spec/cassettes/brightbox_config/user_add/when_a_default_client_is_already_set/does_not_change_the_default_client.yml +4 -4
  173. data/spec/cassettes/brightbox_config/user_add/when_application_details_in_config/does_not_error.yml +4 -4
  174. data/spec/cassettes/brightbox_config/user_add/when_application_details_in_config/sets_up_the_config.yml +4 -4
  175. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_only_one_active_account/display_an_warning_about_preselected_default.yml +4 -4
  176. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_only_one_active_account/does_not_error.yml +4 -4
  177. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_only_one_active_account/selects_the_active_account_for_the_default.yml +4 -4
  178. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_only_one_active_account/sets_up_the_config.yml +4 -4
  179. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_to_multiple_accounts/display_an_warning_about_preselected_default.yml +4 -4
  180. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_to_multiple_accounts/does_not_error.yml +4 -4
  181. data/spec/cassettes/brightbox_config/user_add/when_application_has_access_to_multiple_accounts/sets_up_the_config.yml +4 -4
  182. data/spec/cassettes/brightbox_config/user_add/when_new_client_is_first_and_only_client/does_not_error.yml +4 -4
  183. data/spec/cassettes/brightbox_config/user_add/when_new_client_is_first_and_only_client/does_not_prompt_to_rerun_the_command.yml +4 -4
  184. data/spec/cassettes/brightbox_config/user_add/when_new_client_is_first_and_only_client/requests_access_tokens.yml +4 -4
  185. data/spec/cassettes/brightbox_config/user_add/when_new_client_is_first_and_only_client/sets_this_as_the_default_client.yml +4 -4
  186. data/spec/cassettes/brightbox_config/user_add/when_new_client_is_first_and_only_client/sets_up_the_config.yml +10 -10
  187. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments/does_not_error.yml +4 -4
  188. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments/does_not_prompt_to_rerun_the_command.yml +4 -4
  189. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments/requests_access_tokens.yml +4 -4
  190. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments/sets_up_the_config.yml +6 -6
  191. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments_and_api_url/does_not_error.yml +4 -4
  192. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments_and_api_url/requests_access_tokens.yml +4 -4
  193. data/spec/cassettes/brightbox_config/user_add/when_passing_in_required_arguments_and_api_url/sets_up_the_config.yml +4 -4
  194. data/spec/cassettes/brightbox_database-servers/create/--allow-access_10_0_0_0/correctly_sends_API_parameters.yml +93 -0
  195. data/spec/cassettes/brightbox_database-servers/create/--allow-access_srv-12345_grp-12345/correctly_sends_API_parameters.yml +93 -0
  196. data/spec/cassettes/brightbox_database-servers/create/--engine_mysql/correctly_sends_API_parameters.yml +93 -0
  197. data/spec/cassettes/brightbox_database-servers/create/--engine_mysql_--engine-version_5_6/correctly_sends_API_parameters.yml +93 -0
  198. data/spec/cassettes/brightbox_database-servers/create/without_arguments/reports_the_new_admin_password.yml +93 -0
  199. data/spec/cassettes/brightbox_database-servers/create/without_arguments/reports_the_new_admin_username.yml +93 -0
  200. data/spec/cassettes/brightbox_database-servers/snapshot/when_database_server_active/correctly_sends_API_parameters.yml +181 -0
  201. data/spec/cassettes/brightbox_database-servers/snapshot/when_database_server_can_not_be_snapshotted/reports_an_error_to_the_user.yml +91 -0
  202. data/spec/cassettes/brightbox_database-snapshots/list/when_resources_are_available/does_not_output_to_stderr.yml +93 -0
  203. data/spec/cassettes/brightbox_database-snapshots/list/when_resources_are_available/outputs_table_details_to_stdout.yml +93 -0
  204. data/spec/cassettes/brightbox_database-snapshots/show/when_resource_exists/does_not_output_to_stderr.yml +93 -0
  205. data/spec/commands/accounts/list_spec.rb +1 -1
  206. data/spec/commands/cloudips/map_spec.rb +23 -4
  207. data/spec/commands/config/user_add_spec.rb +1 -1
  208. data/spec/commands/sql/instances/create_spec.rb +69 -0
  209. data/spec/commands/sql/instances/snapshot_spec.rb +36 -0
  210. data/spec/commands/sql/snapshots/list_spec.rb +29 -0
  211. data/spec/commands/sql/snapshots/show_spec.rb +29 -0
  212. data/spec/commands/sql/types/list_spec.rb +18 -0
  213. data/spec/spec_helper.rb +1 -3
  214. data/spec/support/vcr.rb +1 -1
  215. data/spec/unit/brightbox/api/conn_spec.rb +1 -1
  216. data/spec/unit/brightbox/bb_config/add_section_spec.rb +1 -1
  217. data/spec/unit/brightbox/bb_config/renew_tokens_spec.rb +1 -1
  218. data/spec/unit/brightbox/database_server_spec.rb +9 -0
  219. data/spec/unit/brightbox/database_snapshot_spec.rb +9 -0
  220. data/spec/unit/brightbox/database_type_spec.rb +9 -0
  221. data/spec/unit/brightbox/firewall_policy/create_spec.rb +1 -1
  222. data/spec/unit/brightbox/firewall_policy/destroy_spec.rb +1 -1
  223. data/spec/unit/brightbox/firewall_rule/create_spec.rb +1 -1
  224. data/spec/unit/brightbox/firewall_rule/destroy_spec.rb +1 -1
  225. data/spec/unit/brightbox/firewall_rule/find_spec.rb +1 -1
  226. data/spec/unit/brightbox/firewall_rule/from_policy_spec.rb +1 -1
  227. data/spec/unit/brightbox/server/destroy_spec.rb +1 -1
  228. data/spec/unit/brightbox/server/find_or_call_spec.rb +1 -1
  229. data/spec/unit/brightbox/server/shutdown_spec.rb +1 -1
  230. data/spec/unit/brightbox/server/start_spec.rb +1 -1
  231. data/spec/unit/brightbox/server/stop_spec.rb +1 -1
  232. data/spec/unit/brightbox/server/update_spec.rb +1 -1
  233. data/spec/unit/brightbox/server_group/find_spec.rb +1 -1
  234. data/spec/unit/brightbox/user_collaboration/get_for_account_spec.rb +3 -3
  235. metadata +160 -115
  236. data/lib/brightbox-cli/commands/groups-list.rb +0 -21
  237. data/lib/brightbox-cli/commands/users-list.rb +0 -25
@@ -1,286 +1,286 @@
1
- ---
1
+ ---
2
2
  recorded_with: VCR 2.5.0
3
- http_interactions:
4
- - request:
3
+ http_interactions:
4
+ - request:
5
5
  method: post
6
6
  uri: http://api.brightbox.dev/token
7
- body:
7
+ body:
8
8
  string: "{\"grant_type\":\"none\",\"client_id\":\"cli-12345\"}"
9
- headers:
10
- User-Agent:
9
+ headers:
10
+ User-Agent:
11
11
  - fog/1.15.0
12
- Content-Type:
12
+ Content-Type:
13
13
  - application/json
14
- Authorization:
14
+ Authorization:
15
15
  - Basic Y2xpLTEyMzQ1OnF5Nnh4bnZ5NG8wdGd2NQ==
16
- response:
17
- status:
16
+ response:
17
+ status:
18
18
  code: 200
19
- message:
20
- headers:
21
- X-Frame-Options:
19
+ message:
20
+ headers:
21
+ X-Frame-Options:
22
22
  - sameorigin
23
- Date:
23
+ Date:
24
24
  - Fri, 06 Sep 2013 15:58:58 GMT
25
- X-UA-Compatible:
25
+ X-UA-Compatible:
26
26
  - IE=Edge
27
- X-Request-Id:
27
+ X-Request-Id:
28
28
  - 8c2cd78990e554ee6df5b57df9f3babf
29
- Content-Type:
29
+ Content-Type:
30
30
  - application/json;charset=utf-8
31
- X-Runtime:
31
+ X-Runtime:
32
32
  - "0.237022"
33
- Content-Length:
33
+ Content-Length:
34
34
  - "77"
35
- ETag:
35
+ ETag:
36
36
  - "\"430906f14dbb1d6e1227c369fbbc9f05\""
37
- X-XSS-Protection:
37
+ X-XSS-Protection:
38
38
  - 1; mode=block
39
- Connection:
39
+ Connection:
40
40
  - keep-alive
41
- Cache-Control:
41
+ Cache-Control:
42
42
  - no-store
43
- body:
43
+ body:
44
44
  string: "{\"access_token\":\"67e22969d707ebaf5590272b5e64dc4ed9b31fdd\",\"expires_in\":7200}"
45
- http_version:
45
+ http_version:
46
46
  recorded_at: Fri, 06 Sep 2013 15:58:58 GMT
47
- - request:
47
+ - request:
48
48
  method: get
49
49
  uri: http://api.brightbox.dev/1.0/account
50
- body:
50
+ body:
51
51
  string: ""
52
- headers:
53
- User-Agent:
52
+ headers:
53
+ User-Agent:
54
54
  - fog/1.15.0
55
- Content-Type:
55
+ Content-Type:
56
56
  - application/json
57
- Authorization:
57
+ Authorization:
58
58
  - OAuth 0ab4badeb10018d07c1f6c33690ee011f36b4183
59
- response:
60
- status:
59
+ response:
60
+ status:
61
61
  code: 200
62
- message:
63
- headers:
64
- Date:
62
+ message:
63
+ headers:
64
+ Date:
65
65
  - Fri, 06 Sep 2013 15:58:58 GMT
66
- X-UA-Compatible:
66
+ X-UA-Compatible:
67
67
  - IE=Edge
68
- X-Request-Id:
68
+ X-Request-Id:
69
69
  - b4edcfd134f91075932a85564772e730
70
- Content-Type:
70
+ Content-Type:
71
71
  - application/json; charset=utf-8
72
- X-Runtime:
72
+ X-Runtime:
73
73
  - "0.116152"
74
- ETag:
74
+ ETag:
75
75
  - "\"a9e93d5f3268805675b0c5c935311a85\""
76
- Connection:
76
+ Connection:
77
77
  - close
78
- Cache-Control:
78
+ Cache-Control:
79
79
  - max-age=0, private, must-revalidate
80
- body:
80
+ body:
81
81
  string: "{\"id\":\"acc-12345\",\"resource_type\":\"account\",\"url\":\"https://api.gb1.brightbox.com/1.0/accounts/acc-12345\",\"name\":\"Aurnqfvgsbeyiprni\",\"status\":\"active\",\"address_1\":\"Kaycee Throughway\",\"address_2\":\"\",\"city\":\"South Hellenport\",\"county\":\"\",\"postcode\":\"60364-9886\",\"country_code\":\"GB\",\"country_name\":\"United Kingdom\",\"vat_registration_number\":\"\",\"telephone_number\":\"+444238318140\",\"telephone_verified\":false,\"verified_telephone\":null,\"verified_at\":null,\"verified_ip\":null,\"created_at\":\"2013-09-04T07:53:13Z\",\"ram_limit\":32768,\"ram_used\":0,\"cloud_ips_limit\":20,\"cloud_ips_used\":1,\"load_balancers_limit\":5,\"load_balancers_used\":0,\"valid_credit_card\":false,\"library_ftp_host\":\"ftp.library.gb1.brightbox.com\",\"library_ftp_user\":\"acc-12345\",\"library_ftp_password\":null,\"clients\":[{\"id\":\"cli-12345\",\"resource_type\":\"api_client\",\"url\":\"https://api.gb1.brightbox.com/1.0/api_clients/cli-12345\",\"name\":null,\"description\":null,\"revoked_at\":null}],\"images\":[],\"servers\":[],\"load_balancers\":[],\"cloud_ips\":[{\"id\":\"cip-12345\",\"resource_type\":\"cloud_ip\",\"url\":\"https://api.gb1.brightbox.com/1.0/cloud_ips/cip-12345\",\"status\":\"unmapped\",\"public_ip\":\"56.67.59.219\",\"reverse_dns\":\"cip-12345-67-59-219.gb1.brightbox.com\",\"name\":null}],\"server_groups\":[{\"id\":\"grp-12345\",\"resource_type\":\"server_group\",\"url\":\"https://api.gb1.brightbox.com/1.0/server_groups/grp-12345\",\"name\":\"default\",\"description\":\"All new servers are added to this group unless specified otherwise.\",\"created_at\":\"2013-09-04T07:53:13Z\",\"default\":true}],\"firewall_policies\":[{\"id\":\"fwp-12345\",\"resource_type\":\"firewall_policy\",\"url\":\"https://api.gb1.brightbox.com/1.0/firewall_policies/fwp-12345\",\"default\":true,\"name\":\"default\",\"created_at\":\"2013-09-04T07:53:14Z\",\"description\":\"Applied to the default server group.\"}],\"owner\":{\"id\":\"usr-12345\",\"resource_type\":\"user\",\"url\":\"https://api.gb1.brightbox.com/1.0/users/usr-12345\",\"name\":\"Dylan Fay DDS\",\"email_address\":\"jason.null@brightbox.com\"},\"users\":[],\"zones\":[{\"id\":\"zon-12345\",\"resource_type\":\"zone\",\"url\":\"https://api.gb1.brightbox.com/1.0/zones/zon-12345\",\"handle\":\"gb1-a\"},{\"id\":\"zon-12345\",\"resource_type\":\"zone\",\"url\":\"https://api.gb1.brightbox.com/1.0/zones/zon-12345\",\"handle\":\"gb1-b\"}]}"
82
- http_version:
82
+ http_version:
83
83
  recorded_at: Fri, 06 Sep 2013 15:58:58 GMT
84
- - request:
84
+ - request:
85
85
  method: get
86
86
  uri: http://api.brightbox.dev/1.0/accounts
87
- body:
87
+ body:
88
88
  string: ""
89
- headers:
90
- User-Agent:
89
+ headers:
90
+ User-Agent:
91
91
  - fog/1.15.0
92
- Content-Type:
92
+ Content-Type:
93
93
  - application/json
94
- Authorization:
94
+ Authorization:
95
95
  - OAuth 67e22969d707ebaf5590272b5e64dc4ed9b31fdd
96
- response:
97
- status:
96
+ response:
97
+ status:
98
98
  code: 401
99
- message:
100
- headers:
101
- Date:
99
+ message:
100
+ headers:
101
+ Date:
102
102
  - Tue, 17 Sep 2013 17:07:36 GMT
103
- X-UA-Compatible:
103
+ X-UA-Compatible:
104
104
  - IE=Edge
105
- X-Request-Id:
105
+ X-Request-Id:
106
106
  - 14082450ec1ec70923bc9c91e9adce53
107
- Content-Type:
107
+ Content-Type:
108
108
  - application/json; charset=utf-8
109
- X-Runtime:
109
+ X-Runtime:
110
110
  - "0.017801"
111
- WWW-Authenticate:
111
+ WWW-Authenticate:
112
112
  - OAuth error="invalid_token"
113
- Connection:
113
+ Connection:
114
114
  - close
115
- Cache-Control:
115
+ Cache-Control:
116
116
  - no-cache
117
- body:
117
+ body:
118
118
  string: "{\"error\":\"invalid_token\",\"error_description\":\"The OAuth token can not be found\"}"
119
- http_version:
119
+ http_version:
120
120
  recorded_at: Tue, 17 Sep 2013 17:07:36 GMT
121
- - request:
121
+ - request:
122
122
  method: post
123
123
  uri: http://api.brightbox.dev/token
124
- body:
124
+ body:
125
125
  string: "{\"grant_type\":\"none\",\"client_id\":\"cli-12345\"}"
126
- headers:
127
- User-Agent:
126
+ headers:
127
+ User-Agent:
128
128
  - fog/1.15.0
129
- Content-Type:
129
+ Content-Type:
130
130
  - application/json
131
- Authorization:
131
+ Authorization:
132
132
  - Basic Y2xpLTEyMzQ1OnF5Nnh4bnZ5NG8wdGd2NQ==
133
- response:
134
- status:
133
+ response:
134
+ status:
135
135
  code: 200
136
- message:
137
- headers:
138
- X-Frame-Options:
136
+ message:
137
+ headers:
138
+ X-Frame-Options:
139
139
  - sameorigin
140
- Date:
140
+ Date:
141
141
  - Tue, 17 Sep 2013 17:07:36 GMT
142
- X-UA-Compatible:
142
+ X-UA-Compatible:
143
143
  - IE=Edge
144
- X-Request-Id:
144
+ X-Request-Id:
145
145
  - b7a48ca0b5632951eaf7464ca0698b08
146
- Content-Type:
146
+ Content-Type:
147
147
  - application/json;charset=utf-8
148
- X-Runtime:
148
+ X-Runtime:
149
149
  - "0.111296"
150
- Content-Length:
150
+ Content-Length:
151
151
  - "77"
152
- ETag:
152
+ ETag:
153
153
  - "\"c0dd0bb66771d924e5b9d845a8f5b6a4\""
154
- X-XSS-Protection:
154
+ X-XSS-Protection:
155
155
  - 1; mode=block
156
- Connection:
156
+ Connection:
157
157
  - keep-alive
158
- Cache-Control:
158
+ Cache-Control:
159
159
  - no-store
160
- body:
160
+ body:
161
161
  string: "{\"access_token\":\"316f5c33ab293daeb01b759fa32fe758ef1cccc0\",\"expires_in\":7200}"
162
- http_version:
162
+ http_version:
163
163
  recorded_at: Tue, 17 Sep 2013 17:07:36 GMT
164
- - request:
164
+ - request:
165
165
  method: get
166
166
  uri: http://api.brightbox.dev/1.0/accounts
167
- body:
167
+ body:
168
168
  string: ""
169
- headers:
170
- User-Agent:
169
+ headers:
170
+ User-Agent:
171
171
  - fog/1.15.0
172
- Content-Type:
172
+ Content-Type:
173
173
  - application/json
174
- Authorization:
174
+ Authorization:
175
175
  - OAuth 316f5c33ab293daeb01b759fa32fe758ef1cccc0
176
- response:
177
- status:
176
+ response:
177
+ status:
178
178
  code: 200
179
- message:
180
- headers:
181
- Date:
179
+ message:
180
+ headers:
181
+ Date:
182
182
  - Tue, 17 Sep 2013 17:07:37 GMT
183
- X-UA-Compatible:
183
+ X-UA-Compatible:
184
184
  - IE=Edge
185
- X-Request-Id:
185
+ X-Request-Id:
186
186
  - 7f4fd962f1dc00a3b1bfdd6e4d81a36f
187
- Content-Type:
187
+ Content-Type:
188
188
  - application/json; charset=utf-8
189
- X-Runtime:
189
+ X-Runtime:
190
190
  - "0.255430"
191
- ETag:
191
+ ETag:
192
192
  - "\"7d4ad7857ea408897b8a2149197611ba\""
193
- Connection:
193
+ Connection:
194
194
  - close
195
- Cache-Control:
195
+ Cache-Control:
196
196
  - max-age=0, private, must-revalidate
197
- body:
197
+ body:
198
198
  string: "[{\"id\":\"acc-12345\",\"resource_type\":\"account\",\"url\":\"https://api.gb1.brightbox.com/1.0/accounts/acc-12345\",\"name\":\"Asaibdsjnpdgrdcqo\",\"status\":\"active\",\"ram_limit\":32768,\"ram_used\":0,\"cloud_ips_limit\":20,\"cloud_ips_used\":1,\"load_balancers_limit\":5,\"load_balancers_used\":0,\"clients\":[{\"id\":\"cli-12345\",\"resource_type\":\"api_client\",\"url\":\"https://api.gb1.brightbox.com/1.0/api_clients/cli-12345\",\"name\":null,\"description\":null,\"revoked_at\":null}],\"images\":[],\"servers\":[],\"load_balancers\":[],\"cloud_ips\":[{\"id\":\"cip-12345\",\"resource_type\":\"cloud_ip\",\"url\":\"https://api.gb1.brightbox.com/1.0/cloud_ips/cip-12345\",\"status\":\"unmapped\",\"public_ip\":\"153.37.92.121\",\"reverse_dns\":\"cip-12345-37-92-121.gb1.brightbox.com\",\"name\":null}],\"server_groups\":[{\"id\":\"grp-12345\",\"resource_type\":\"server_group\",\"url\":\"https://api.gb1.brightbox.com/1.0/server_groups/grp-12345\",\"name\":\"default\",\"description\":\"All new servers are added to this group unless specified otherwise.\",\"created_at\":\"2013-09-17T08:44:16Z\",\"default\":true}],\"firewall_policies\":[{\"id\":\"fwp-12345\",\"resource_type\":\"firewall_policy\",\"url\":\"https://api.gb1.brightbox.com/1.0/firewall_policies/fwp-12345\",\"default\":true,\"name\":\"default\",\"created_at\":\"2013-09-17T08:44:16Z\",\"description\":\"Applied to the default server group.\"}],\"owner\":{\"id\":\"usr-12345\",\"resource_type\":\"user\",\"url\":\"https://api.gb1.brightbox.com/1.0/users/usr-12345\",\"name\":\"Kobe Swaniawski Sr.\",\"email_address\":\"jason.null@brightbox.com\"},\"users\":[],\"zones\":[{\"id\":\"zon-12345\",\"resource_type\":\"zone\",\"url\":\"https://api.gb1.brightbox.com/1.0/zones/zon-12345\",\"handle\":\"gb1-a\"},{\"id\":\"zon-12345\",\"resource_type\":\"zone\",\"url\":\"https://api.gb1.brightbox.com/1.0/zones/zon-12345\",\"handle\":\"gb1-b\"}]}]"
199
- http_version:
199
+ http_version:
200
200
  recorded_at: Tue, 17 Sep 2013 17:07:37 GMT
201
- - request:
201
+ - request:
202
202
  method: post
203
203
  uri: http://api.brightbox.dev/token
204
- body:
204
+ body:
205
205
  string: "{\"client_id\":\"cli-12345\",\"grant_type\":\"none\"}"
206
- headers:
207
- User-Agent:
206
+ headers:
207
+ User-Agent:
208
208
  - fog/1.15.0
209
- Content-Type:
209
+ Content-Type:
210
210
  - application/json
211
- Authorization:
211
+ Authorization:
212
212
  - Basic Y2xpLTEyMzQ1OnF5Nnh4bnZ5NG8wdGd2NQ==
213
- response:
214
- status:
213
+ response:
214
+ status:
215
215
  code: 200
216
- message:
217
- headers:
218
- X-Frame-Options:
216
+ message:
217
+ headers:
218
+ X-Frame-Options:
219
219
  - sameorigin
220
- Date:
220
+ Date:
221
221
  - Fri, 27 Sep 2013 15:26:08 GMT
222
- X-UA-Compatible:
222
+ X-UA-Compatible:
223
223
  - IE=Edge
224
- X-Request-Id:
224
+ X-Request-Id:
225
225
  - 80c5f7718095bc829861e5efe3c22e10
226
- Content-Type:
226
+ Content-Type:
227
227
  - application/json;charset=utf-8
228
- X-Runtime:
228
+ X-Runtime:
229
229
  - "0.113466"
230
- Content-Length:
230
+ Content-Length:
231
231
  - "77"
232
- ETag:
232
+ ETag:
233
233
  - "\"bf41904d7ce116b70d2eb58dd2e2e209\""
234
- X-XSS-Protection:
234
+ X-XSS-Protection:
235
235
  - 1; mode=block
236
- Connection:
236
+ Connection:
237
237
  - keep-alive
238
- Cache-Control:
238
+ Cache-Control:
239
239
  - no-store
240
- body:
240
+ body:
241
241
  string: "{\"access_token\":\"f6fd5a480ae3cef0e20bfaad9f7eb1ea64ee35fc\",\"expires_in\":7200}"
242
- http_version:
242
+ http_version:
243
243
  recorded_at: Fri, 27 Sep 2013 15:26:08 GMT
244
- - request:
244
+ - request:
245
245
  method: post
246
246
  uri: http://api.brightbox.dev/token
247
- body:
247
+ body:
248
248
  string: "{\"client_id\":\"cli-12345\",\"grant_type\":\"none\"}"
249
- headers:
250
- User-Agent:
249
+ headers:
250
+ User-Agent:
251
251
  - fog/1.15.0
252
- Content-Type:
252
+ Content-Type:
253
253
  - application/json
254
- Authorization:
254
+ Authorization:
255
255
  - Basic Y2xpLTEyMzQ1OnF5Nnh4bnZ5NG8wdGd2NQ==
256
- response:
257
- status:
256
+ response:
257
+ status:
258
258
  code: 200
259
- message:
260
- headers:
261
- X-Frame-Options:
259
+ message:
260
+ headers:
261
+ X-Frame-Options:
262
262
  - sameorigin
263
- Date:
263
+ Date:
264
264
  - Fri, 27 Sep 2013 15:26:08 GMT
265
- X-UA-Compatible:
265
+ X-UA-Compatible:
266
266
  - IE=Edge
267
- X-Request-Id:
267
+ X-Request-Id:
268
268
  - 466539ee260d6d6410afaccca016594b
269
- Content-Type:
269
+ Content-Type:
270
270
  - application/json;charset=utf-8
271
- X-Runtime:
271
+ X-Runtime:
272
272
  - "0.116505"
273
- Content-Length:
273
+ Content-Length:
274
274
  - "77"
275
- ETag:
275
+ ETag:
276
276
  - "\"2be0e2e1cff2d86cf1808efa13cb7a6d\""
277
- X-XSS-Protection:
277
+ X-XSS-Protection:
278
278
  - 1; mode=block
279
- Connection:
279
+ Connection:
280
280
  - keep-alive
281
- Cache-Control:
281
+ Cache-Control:
282
282
  - no-store
283
- body:
283
+ body:
284
284
  string: "{\"access_token\":\"ca1342a7d900f917c9f55e1f3bb8cd2f52f09ec3\",\"expires_in\":7200}"
285
- http_version:
285
+ http_version:
286
286
  recorded_at: Fri, 27 Sep 2013 15:26:08 GMT
@@ -16,7 +16,7 @@ http_interactions:
16
16
  response:
17
17
  status:
18
18
  code: 200
19
- message:
19
+ message:
20
20
  headers:
21
21
  X-Frame-Options:
22
22
  - sameorigin
@@ -43,7 +43,7 @@ http_interactions:
43
43
  body:
44
44
  encoding: UTF-8
45
45
  string: '{"access_token":"eff6b0ebf3ab2a0cbcbacc58a2ea4478d2e52c93","expires_in":7200,"refresh_token":"946c0b873298d391f53f5b7d2751e6a735f6535c"}'
46
- http_version:
46
+ http_version:
47
47
  recorded_at: Fri, 06 Sep 2013 08:40:50 GMT
48
48
  - request:
49
49
  method: get
@@ -61,7 +61,7 @@ http_interactions:
61
61
  response:
62
62
  status:
63
63
  code: 401
64
- message:
64
+ message:
65
65
  headers:
66
66
  WWW-Authenticate:
67
67
  - OAuth error="invalid_token"
@@ -83,7 +83,7 @@ http_interactions:
83
83
  encoding: UTF-8
84
84
  string: '{"error":"invalid_token","error_description":"The OAuth token can not
85
85
  be found"}'
86
- http_version:
86
+ http_version:
87
87
  recorded_at: Fri, 06 Sep 2013 08:40:50 GMT
88
88
  - request:
89
89
  method: post
@@ -101,7 +101,7 @@ http_interactions:
101
101
  response:
102
102
  status:
103
103
  code: 200
104
- message:
104
+ message:
105
105
  headers:
106
106
  X-Frame-Options:
107
107
  - sameorigin
@@ -128,7 +128,7 @@ http_interactions:
128
128
  body:
129
129
  encoding: UTF-8
130
130
  string: '{"access_token":"f7d882463fb3e652703d09227a2368e6e83812a7","expires_in":7200}'
131
- http_version:
131
+ http_version:
132
132
  recorded_at: Fri, 06 Sep 2013 08:40:50 GMT
133
133
  - request:
134
134
  method: get
@@ -146,7 +146,7 @@ http_interactions:
146
146
  response:
147
147
  status:
148
148
  code: 200
149
- message:
149
+ message:
150
150
  headers:
151
151
  Content-Type:
152
152
  - application/json; charset=utf-8
@@ -170,7 +170,7 @@ http_interactions:
170
170
  new servers are added to this group unless specified otherwise.","created_at":"2013-09-04T07:53:13Z","default":true}],"firewall_policies":[{"id":"fwp-12345","resource_type":"firewall_policy","url":"https://api.gb1.brightbox.com/1.0/firewall_policies/fwp-12345","default":true,"name":"default","created_at":"2013-09-04T07:53:14Z","description":"Applied
171
171
  to the default server group."}],"owner":{"id":"usr-12345","resource_type":"user","url":"https://api.gb1.brightbox.com/1.0/users/usr-12345","name":"Dylan
172
172
  Fay DDS","email_address":"jason.null@brightbox.com"},"users":[],"zones":[{"id":"zon-12345","resource_type":"zone","url":"https://api.gb1.brightbox.com/1.0/zones/zon-12345","handle":"gb1-a"},{"id":"zon-12345","resource_type":"zone","url":"https://api.gb1.brightbox.com/1.0/zones/zon-12345","handle":"gb1-b"}]}]'
173
- http_version:
173
+ http_version:
174
174
  recorded_at: Fri, 06 Sep 2013 08:40:52 GMT
175
175
  - request:
176
176
  method: post
@@ -188,7 +188,7 @@ http_interactions:
188
188
  response:
189
189
  status:
190
190
  code: 400
191
- message:
191
+ message:
192
192
  headers:
193
193
  X-Frame-Options:
194
194
  - sameorigin
@@ -216,6 +216,6 @@ http_interactions:
216
216
  is invalid, expired, or revoked (e.g. invalid assertion, expired authorization
217
217
  token, bad end-user password credentials, or mismatching authorization code
218
218
  and redirection URI)."}'
219
- http_version:
219
+ http_version:
220
220
  recorded_at: Tue, 17 Sep 2013 17:07:38 GMT
221
221
  recorded_with: VCR 2.5.0