brightbox-cli 2.2.0 → 2.3.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 (111) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/Gemfile.lock +5 -2
  4. data/brightbox-cli.gemspec +1 -1
  5. data/lib/brightbox/cli/config.rb +19 -0
  6. data/lib/brightbox-cli/accounts.rb +2 -2
  7. data/lib/brightbox-cli/api.rb +4 -4
  8. data/lib/brightbox-cli/commands/accounts/default.rb +1 -1
  9. data/lib/brightbox-cli/commands/accounts/list.rb +1 -1
  10. data/lib/brightbox-cli/commands/config/client-add.rb +2 -2
  11. data/lib/brightbox-cli/commands/config/client-default.rb +3 -3
  12. data/lib/brightbox-cli/commands/config/client-list.rb +6 -6
  13. data/lib/brightbox-cli/commands/config/client-remove.rb +4 -4
  14. data/lib/brightbox-cli/commands/config/user-add.rb +2 -2
  15. data/lib/brightbox-cli/commands/login.rb +53 -0
  16. data/lib/brightbox-cli/config/accounts.rb +5 -0
  17. data/lib/brightbox-cli/config/authentication_tokens.rb +10 -3
  18. data/lib/brightbox-cli/config/cache.rb +8 -12
  19. data/lib/brightbox-cli/config/clients.rb +14 -38
  20. data/lib/brightbox-cli/config/sections.rb +70 -13
  21. data/lib/brightbox-cli/config/user_application.rb +13 -5
  22. data/lib/brightbox-cli/config.rb +22 -14
  23. data/lib/brightbox-cli/connection_manager.rb +2 -2
  24. data/lib/brightbox-cli/gli_global_hooks.rb +25 -28
  25. data/lib/brightbox-cli/version.rb +1 -1
  26. data/lib/brightbox_cli.rb +4 -0
  27. data/spec/cassettes/Brightbox_BBConfig/_add_section/when_config_exists_and_overwrite_duplicates_is_false/does_not_update_the_config_file.yml +199 -0
  28. data/spec/cassettes/Brightbox_BBConfig/_add_section/when_config_exists_and_overwrite_duplicates_is_true/does_not_update_the_config_file.yml +199 -0
  29. data/spec/cassettes/Brightbox_BBConfig_add_login/when_altering_a_custom_option/does_not_alter_the_configuration.yml +99 -0
  30. data/spec/cassettes/Brightbox_BBConfig_add_login/when_altering_a_custom_option/updates_access_token.yml +99 -0
  31. data/spec/cassettes/Brightbox_BBConfig_add_login/when_altering_a_custom_option/updates_refresh_token.yml +99 -0
  32. data/spec/cassettes/Brightbox_BBConfig_add_login/when_configured_with_custom_options/does_not_alter_the_configuration.yml +99 -0
  33. data/spec/cassettes/Brightbox_BBConfig_add_login/when_configured_with_custom_options/updates_access_token.yml +99 -0
  34. data/spec/cassettes/Brightbox_BBConfig_add_login/when_configured_with_custom_options/updates_refresh_token.yml +99 -0
  35. data/spec/cassettes/Brightbox_BBConfig_add_login/when_logged_in_previously/does_not_alter_the_configuration.yml +149 -0
  36. data/spec/cassettes/Brightbox_BBConfig_add_login/when_logged_in_previously/updates_access_token.yml +149 -0
  37. data/spec/cassettes/Brightbox_BBConfig_add_login/when_logged_in_previously/updates_refresh_token.yml +149 -0
  38. data/spec/cassettes/Brightbox_BBConfig_add_login/when_no_config_exists/creates_the_configuration.yml +101 -0
  39. data/spec/cassettes/Brightbox_BBConfig_add_login/when_no_config_exists/refreshed_tokens.yml +101 -0
  40. data/spec/cassettes/Brightbox_BBConfig_add_login/when_using_an_email_and_suffix/creates_the_configuration.yml +101 -0
  41. data/spec/cassettes/Brightbox_BBConfig_add_login/when_using_an_email_and_suffix/refreshed_tokens.yml +101 -0
  42. data/spec/cassettes/brightbox_accounts/list/_when_access_token_expired_/does_not_report_invalid_token_errors.yml +64 -18
  43. data/spec/cassettes/brightbox_accounts/list/_when_no_tokens_/does_not_report_invalid_token_errors.yml +62 -16
  44. data/spec/cassettes/brightbox_login/when_alternative_client_credentials_are_given/does_not_error.yml +101 -0
  45. data/spec/cassettes/brightbox_login/when_alternative_client_credentials_are_given/does_not_prompt_to_rerun_the_command.yml +101 -0
  46. data/spec/cassettes/brightbox_login/when_alternative_client_credentials_are_given/prompts_for_the_password.yml +101 -0
  47. data/spec/cassettes/brightbox_login/when_alternative_client_credentials_are_given/requests_access_tokens.yml +101 -0
  48. data/spec/cassettes/brightbox_login/when_alternative_client_credentials_are_given/sets_up_the_config.yml +101 -0
  49. data/spec/cassettes/brightbox_login/when_custom_api/auth_URLs_are_given/does_not_error.yml +101 -0
  50. data/spec/cassettes/brightbox_login/when_custom_api/auth_URLs_are_given/does_not_prompt_to_rerun_the_command.yml +101 -0
  51. data/spec/cassettes/brightbox_login/when_custom_api/auth_URLs_are_given/prompts_for_the_password.yml +101 -0
  52. data/spec/cassettes/brightbox_login/when_custom_api/auth_URLs_are_given/requests_access_tokens.yml +101 -0
  53. data/spec/cassettes/brightbox_login/when_custom_api/auth_URLs_are_given/sets_up_the_config.yml +101 -0
  54. data/spec/cassettes/brightbox_login/when_default_account_is_passed/does_not_error.yml +51 -0
  55. data/spec/cassettes/brightbox_login/when_default_account_is_passed/does_not_prompt_to_rerun_the_command.yml +51 -0
  56. data/spec/cassettes/brightbox_login/when_default_account_is_passed/prompts_for_the_password.yml +51 -0
  57. data/spec/cassettes/brightbox_login/when_default_account_is_passed/requests_access_tokens.yml +51 -0
  58. data/spec/cassettes/brightbox_login/when_default_account_is_passed/sets_up_the_config.yml +51 -0
  59. data/spec/cassettes/brightbox_login/when_no_config_is_present/does_not_error.yml +101 -0
  60. data/spec/cassettes/brightbox_login/when_no_config_is_present/does_not_prompt_to_rerun_the_command.yml +101 -0
  61. data/spec/cassettes/brightbox_login/when_no_config_is_present/requests_access_tokens.yml +101 -0
  62. data/spec/cassettes/brightbox_login/when_no_config_is_present/sets_up_the_config.yml +101 -0
  63. data/spec/cassettes/brightbox_login/when_no_password_is_given/does_not_error.yml +101 -0
  64. data/spec/cassettes/brightbox_login/when_no_password_is_given/does_not_prompt_to_rerun_the_command.yml +101 -0
  65. data/spec/cassettes/brightbox_login/when_no_password_is_given/prompts_for_the_password.yml +101 -0
  66. data/spec/cassettes/brightbox_login/when_no_password_is_given/requests_access_tokens.yml +101 -0
  67. data/spec/cassettes/brightbox_login/when_no_password_is_given/sets_up_the_config.yml +101 -0
  68. data/spec/commands/accounts/list_spec.rb +1 -0
  69. data/spec/commands/login_spec.rb +239 -0
  70. data/spec/configs/user_app.ini +0 -2
  71. data/spec/spec_helper.rb +1 -0
  72. data/spec/support/config_helpers.rb +5 -0
  73. data/spec/unit/brightbox/account/all_spec.rb +1 -3
  74. data/spec/unit/brightbox/api/conn_spec.rb +3 -0
  75. data/spec/unit/brightbox/api/find_spec.rb +3 -0
  76. data/spec/unit/brightbox/bb_config/account_spec.rb +2 -0
  77. data/spec/unit/brightbox/bb_config/add_login_spec.rb +222 -0
  78. data/spec/unit/brightbox/bb_config/client_name_spec.rb +4 -12
  79. data/spec/unit/brightbox/bb_config/client_named_spec.rb +1 -1
  80. data/spec/unit/brightbox/bb_config/config_directory_exists_spec.rb +5 -2
  81. data/spec/unit/brightbox/bb_config/config_directory_spec.rb +4 -2
  82. data/spec/unit/brightbox/bb_config/config_spec.rb +4 -8
  83. data/spec/unit/brightbox/bb_config/default_account_spec.rb +10 -6
  84. data/spec/unit/brightbox/bb_config/find_or_set_default_account_spec.rb +2 -0
  85. data/spec/unit/brightbox/bb_config/renew_tokens_spec.rb +3 -0
  86. data/spec/unit/brightbox/bb_config/section_names_spec.rb +46 -0
  87. data/spec/unit/brightbox/bb_config/using_client_spec.rb +12 -12
  88. data/spec/unit/brightbox/bb_config_spec.rb +0 -1
  89. data/spec/unit/brightbox/cloud_ip/find_spec.rb +3 -0
  90. data/spec/unit/brightbox/config/user_application/to_fog_spec.rb +33 -29
  91. data/spec/unit/brightbox/config/user_application/valid_spec.rb +0 -32
  92. data/spec/unit/brightbox/connection_manager/fetch_connection_spec.rb +7 -3
  93. data/spec/unit/brightbox/firewall_policy/apply_to_spec.rb +3 -0
  94. data/spec/unit/brightbox/firewall_policy/create_spec.rb +3 -0
  95. data/spec/unit/brightbox/firewall_policy/destroy_spec.rb +3 -0
  96. data/spec/unit/brightbox/firewall_policy/find_or_call_spec.rb +3 -0
  97. data/spec/unit/brightbox/firewall_policy/find_spec.rb +3 -0
  98. data/spec/unit/brightbox/firewall_rule/create_spec.rb +3 -0
  99. data/spec/unit/brightbox/firewall_rule/destroy_spec.rb +3 -0
  100. data/spec/unit/brightbox/firewall_rule/find_spec.rb +3 -0
  101. data/spec/unit/brightbox/firewall_rule/from_policy_spec.rb +3 -0
  102. data/spec/unit/brightbox/server/destroy_spec.rb +4 -0
  103. data/spec/unit/brightbox/server/find_or_call_spec.rb +3 -0
  104. data/spec/unit/brightbox/server/find_spec.rb +4 -0
  105. data/spec/unit/brightbox/server/shutdown_spec.rb +4 -0
  106. data/spec/unit/brightbox/server/start_spec.rb +4 -0
  107. data/spec/unit/brightbox/server/stop_spec.rb +4 -0
  108. data/spec/unit/brightbox/server/update_spec.rb +4 -0
  109. data/spec/unit/brightbox/server_group/find_spec.rb +3 -0
  110. data/spec/unit/brightbox/user_collaboration/get_for_account_spec.rb +3 -0
  111. metadata +90 -3
@@ -0,0 +1,101 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"b184fe6f9beecf62178e8ca840a3b68a"'
35
+ X-Request-Id:
36
+ - bb173ed2ba64ab7c8ab22edf7f23f680
37
+ X-Runtime:
38
+ - '0.089382'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:51 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"e494b869f62c6d21d4fede766f4f33936ee3e50c","token_type":"Bearer","refresh_token":"1d69d988bc9fde48171ce7a90a2c141364e9781d","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:51 GMT
51
+ - request:
52
+ method: get
53
+ uri: http://api.brightbox.dev/1.0/accounts
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - fog-core/1.32.1
60
+ Authorization:
61
+ - Bearer e494b869f62c6d21d4fede766f4f33936ee3e50c
62
+ Content-Type:
63
+ - application/json
64
+ response:
65
+ status:
66
+ code: 200
67
+ message:
68
+ headers:
69
+ X-Oauth-Scopes:
70
+ - infrastructure, orbit
71
+ Content-Type:
72
+ - application/json; charset=utf-8
73
+ X-Ua-Compatible:
74
+ - IE=Edge
75
+ Etag:
76
+ - '"c9a269456e92ca15ff834e08ba6414ad"'
77
+ Cache-Control:
78
+ - max-age=0, private, must-revalidate
79
+ X-Request-Id:
80
+ - ba1d235f2c79f7e84e0b666cb39fa3a1
81
+ X-Runtime:
82
+ - '0.129332'
83
+ Server:
84
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
85
+ Date:
86
+ - Mon, 12 Oct 2015 14:53:51 GMT
87
+ Content-Length:
88
+ - '1611'
89
+ Connection:
90
+ - Keep-Alive
91
+ body:
92
+ encoding: UTF-8
93
+ string: '[{"id":"acc-12345","resource_type":"account","url":"https://api.gb1.brightbox.com/1.0/accounts/acc-12345","name":"CLI
94
+ test account","status":"active","ram_limit":3200000,"ram_used":0,"dbs_ram_limit":32768,"dbs_ram_used":0,"cloud_ips_limit":32,"cloud_ips_used":0,"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":"CLI
95
+ test API client","description":"","revoked_at":null,"permissions_group":"full"}],"images":[],"servers":[],"load_balancers":[],"database_servers":[],"database_snapshots":[],"cloud_ips":[],"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
96
+ new servers are added to this group unless specified otherwise.","created_at":"2015-10-12T09:23:03Z","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":"2015-10-12T09:23:03Z","description":"Applied
97
+ to the default server group."}],"owner":{"id":"usr-12345","resource_type":"user","url":"https://api.gb1.brightbox.com/1.0/users/usr-12345","name":"Jason
98
+ Null","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"}]}]'
99
+ http_version:
100
+ recorded_at: Mon, 12 Oct 2015 14:53:51 GMT
101
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,101 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"ab0001e60be068e6ddb5c711fbda4e0c"'
35
+ X-Request-Id:
36
+ - ea74db5e02a444732d675a7ef24bea12
37
+ X-Runtime:
38
+ - '0.092380'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:52 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"97f06bbe4ad27cca54d8f654f713458456d9f8e0","token_type":"Bearer","refresh_token":"e120ddcb3f6ed618cf3b4420b9c5d1e6f1557965","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:52 GMT
51
+ - request:
52
+ method: get
53
+ uri: http://api.brightbox.dev/1.0/accounts
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - fog-core/1.32.1
60
+ Authorization:
61
+ - Bearer 97f06bbe4ad27cca54d8f654f713458456d9f8e0
62
+ Content-Type:
63
+ - application/json
64
+ response:
65
+ status:
66
+ code: 200
67
+ message:
68
+ headers:
69
+ X-Oauth-Scopes:
70
+ - infrastructure, orbit
71
+ Content-Type:
72
+ - application/json; charset=utf-8
73
+ X-Ua-Compatible:
74
+ - IE=Edge
75
+ Etag:
76
+ - '"c9a269456e92ca15ff834e08ba6414ad"'
77
+ Cache-Control:
78
+ - max-age=0, private, must-revalidate
79
+ X-Request-Id:
80
+ - 9f0bf27e5fb8ff7cfb40d3e014a30349
81
+ X-Runtime:
82
+ - '0.131785'
83
+ Server:
84
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
85
+ Date:
86
+ - Mon, 12 Oct 2015 14:53:52 GMT
87
+ Content-Length:
88
+ - '1611'
89
+ Connection:
90
+ - Keep-Alive
91
+ body:
92
+ encoding: UTF-8
93
+ string: '[{"id":"acc-12345","resource_type":"account","url":"https://api.gb1.brightbox.com/1.0/accounts/acc-12345","name":"CLI
94
+ test account","status":"active","ram_limit":3200000,"ram_used":0,"dbs_ram_limit":32768,"dbs_ram_used":0,"cloud_ips_limit":32,"cloud_ips_used":0,"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":"CLI
95
+ test API client","description":"","revoked_at":null,"permissions_group":"full"}],"images":[],"servers":[],"load_balancers":[],"database_servers":[],"database_snapshots":[],"cloud_ips":[],"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
96
+ new servers are added to this group unless specified otherwise.","created_at":"2015-10-12T09:23:03Z","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":"2015-10-12T09:23:03Z","description":"Applied
97
+ to the default server group."}],"owner":{"id":"usr-12345","resource_type":"user","url":"https://api.gb1.brightbox.com/1.0/users/usr-12345","name":"Jason
98
+ Null","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"}]}]'
99
+ http_version:
100
+ recorded_at: Mon, 12 Oct 2015 14:53:52 GMT
101
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,101 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"414b925cd8111cf5e7554c69cc901075"'
35
+ X-Request-Id:
36
+ - 998b40c09fbb530cbbb6bb35c5cbbfdb
37
+ X-Runtime:
38
+ - '0.170053'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:52 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"def6238f30ac65ee3f3aae7d61e39f17a3fcf9fd","token_type":"Bearer","refresh_token":"4e8bbe751340be8e33e336e83d9e3f18fbdb5587","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:52 GMT
51
+ - request:
52
+ method: get
53
+ uri: http://api.brightbox.dev/1.0/accounts
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - fog-core/1.32.1
60
+ Authorization:
61
+ - Bearer def6238f30ac65ee3f3aae7d61e39f17a3fcf9fd
62
+ Content-Type:
63
+ - application/json
64
+ response:
65
+ status:
66
+ code: 200
67
+ message:
68
+ headers:
69
+ X-Oauth-Scopes:
70
+ - infrastructure, orbit
71
+ Content-Type:
72
+ - application/json; charset=utf-8
73
+ X-Ua-Compatible:
74
+ - IE=Edge
75
+ Etag:
76
+ - '"c9a269456e92ca15ff834e08ba6414ad"'
77
+ Cache-Control:
78
+ - max-age=0, private, must-revalidate
79
+ X-Request-Id:
80
+ - 981e198b3decea2f8de71692e9f82885
81
+ X-Runtime:
82
+ - '0.046297'
83
+ Server:
84
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
85
+ Date:
86
+ - Mon, 12 Oct 2015 14:53:52 GMT
87
+ Content-Length:
88
+ - '1611'
89
+ Connection:
90
+ - Keep-Alive
91
+ body:
92
+ encoding: UTF-8
93
+ string: '[{"id":"acc-12345","resource_type":"account","url":"https://api.gb1.brightbox.com/1.0/accounts/acc-12345","name":"CLI
94
+ test account","status":"active","ram_limit":3200000,"ram_used":0,"dbs_ram_limit":32768,"dbs_ram_used":0,"cloud_ips_limit":32,"cloud_ips_used":0,"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":"CLI
95
+ test API client","description":"","revoked_at":null,"permissions_group":"full"}],"images":[],"servers":[],"load_balancers":[],"database_servers":[],"database_snapshots":[],"cloud_ips":[],"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
96
+ new servers are added to this group unless specified otherwise.","created_at":"2015-10-12T09:23:03Z","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":"2015-10-12T09:23:03Z","description":"Applied
97
+ to the default server group."}],"owner":{"id":"usr-12345","resource_type":"user","url":"https://api.gb1.brightbox.com/1.0/users/usr-12345","name":"Jason
98
+ Null","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"}]}]'
99
+ http_version:
100
+ recorded_at: Mon, 12 Oct 2015 14:53:52 GMT
101
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,51 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"a16c9b8526ee6e4669e82b455a69e8a7"'
35
+ X-Request-Id:
36
+ - 31b0bf6392a4dc38014a9b7a60651b1c
37
+ X-Runtime:
38
+ - '0.089294'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:53 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"a5dcbaa16f20832bc6df0b709efacc624cd7e58b","token_type":"Bearer","refresh_token":"6577ac9f6c4c1176fd82b0eaf1dacc207b37f496","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:53 GMT
51
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,51 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"7df478da10966a7cb72fa10f399716cb"'
35
+ X-Request-Id:
36
+ - c4345675cdc991a05f79cf1681bf13fd
37
+ X-Runtime:
38
+ - '0.087381'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:53 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"070f61decf530b8159aa75d80e61fc0c157b1efb","token_type":"Bearer","refresh_token":"b2073600848dd5fa6ea69115dd96730330190fb3","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:53 GMT
51
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,51 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"fa3845918ffb7d84a78127e5df396c48"'
35
+ X-Request-Id:
36
+ - f33d8feeecca56adcc0004fc3bf90171
37
+ X-Runtime:
38
+ - '0.178754'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:52 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"cf9042dc6082feee0390b00cdb4e6a0c08f74ca3","token_type":"Bearer","refresh_token":"0977441e798173b94028b76eaf6bcb6e08dafc8e","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:52 GMT
51
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,51 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"1a46df03e9abec9d52037c2a6bf2bfbd"'
35
+ X-Request-Id:
36
+ - ed3b7f46d7e3ddc63672ee422c87e57f
37
+ X-Runtime:
38
+ - '0.089019'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:53 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"a64a130f3a6f32529e539b3b0ba9cb0bd829160d","token_type":"Bearer","refresh_token":"c2239ef492e6d13d95c04e1f2ab7d99b16e0c202","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:53 GMT
51
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,51 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"cfd6ec3349977a04bb9c8336f4322a5b"'
35
+ X-Request-Id:
36
+ - e64625fb0bd10945460712e70048ad67
37
+ X-Runtime:
38
+ - '0.088462'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:53 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"a555fa363cb14838b2efc870494ec6aa2360808b","token_type":"Bearer","refresh_token":"1a27aae58a7f3f185cb8fa75a0a150a3504a8606","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:53 GMT
51
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,101 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.brightbox.dev/token
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"grant_type":"password","username":"jason.null@brightbox.com","password":"N:B3e%7Cmh"}'
9
+ headers:
10
+ User-Agent:
11
+ - fog-core/1.32.1
12
+ Authorization:
13
+ - Basic YXBwLTEyMzQ1Om1vY2J1aXBiaWFhNms2Yw==
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message:
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Cache-Control:
24
+ - no-store
25
+ X-Oauth-Scopes:
26
+ - infrastructure, orbit
27
+ Content-Length:
28
+ - '190'
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Ua-Compatible:
32
+ - IE=Edge
33
+ Etag:
34
+ - '"6652ec9e77033d7422d201c370226350"'
35
+ X-Request-Id:
36
+ - 7172bd9f9890d209834fd14f071047f6
37
+ X-Runtime:
38
+ - '0.090607'
39
+ Server:
40
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
41
+ Date:
42
+ - Mon, 12 Oct 2015 14:53:49 GMT
43
+ Connection:
44
+ - Keep-Alive
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"access_token":"17e9282e40b8a2f1366107a068a1632bb65d3dec","token_type":"Bearer","refresh_token":"b77913a13cccfdd44294b4b161494a652d48b635","scope":"infrastructure,
48
+ orbit","expires_in":7200}'
49
+ http_version:
50
+ recorded_at: Mon, 12 Oct 2015 14:53:49 GMT
51
+ - request:
52
+ method: get
53
+ uri: http://api.brightbox.dev/1.0/accounts
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - fog-core/1.32.1
60
+ Authorization:
61
+ - Bearer 17e9282e40b8a2f1366107a068a1632bb65d3dec
62
+ Content-Type:
63
+ - application/json
64
+ response:
65
+ status:
66
+ code: 200
67
+ message:
68
+ headers:
69
+ X-Oauth-Scopes:
70
+ - infrastructure, orbit
71
+ Content-Type:
72
+ - application/json; charset=utf-8
73
+ X-Ua-Compatible:
74
+ - IE=Edge
75
+ Etag:
76
+ - '"c9a269456e92ca15ff834e08ba6414ad"'
77
+ Cache-Control:
78
+ - max-age=0, private, must-revalidate
79
+ X-Request-Id:
80
+ - 8e143bd22e4fed15e9df60b3e631ecee
81
+ X-Runtime:
82
+ - '0.124907'
83
+ Server:
84
+ - WEBrick/1.3.1 (Ruby/1.9.3/2014-11-13)
85
+ Date:
86
+ - Mon, 12 Oct 2015 14:53:50 GMT
87
+ Content-Length:
88
+ - '1611'
89
+ Connection:
90
+ - Keep-Alive
91
+ body:
92
+ encoding: UTF-8
93
+ string: '[{"id":"acc-12345","resource_type":"account","url":"https://api.gb1.brightbox.com/1.0/accounts/acc-12345","name":"CLI
94
+ test account","status":"active","ram_limit":3200000,"ram_used":0,"dbs_ram_limit":32768,"dbs_ram_used":0,"cloud_ips_limit":32,"cloud_ips_used":0,"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":"CLI
95
+ test API client","description":"","revoked_at":null,"permissions_group":"full"}],"images":[],"servers":[],"load_balancers":[],"database_servers":[],"database_snapshots":[],"cloud_ips":[],"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
96
+ new servers are added to this group unless specified otherwise.","created_at":"2015-10-12T09:23:03Z","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":"2015-10-12T09:23:03Z","description":"Applied
97
+ to the default server group."}],"owner":{"id":"usr-12345","resource_type":"user","url":"https://api.gb1.brightbox.com/1.0/users/usr-12345","name":"Jason
98
+ Null","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"}]}]'
99
+ http_version:
100
+ recorded_at: Mon, 12 Oct 2015 14:53:50 GMT
101
+ recorded_with: VCR 2.5.0