fog 1.21.0 → 1.22.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. checksums.yaml +8 -8
  2. data/.gitignore +3 -0
  3. data/.travis.yml +4 -2
  4. data/.yardopts +1 -0
  5. data/CHANGELOG.md +8278 -0
  6. data/CONTRIBUTORS.md +37 -0
  7. data/Gemfile +2 -0
  8. data/RELEASE.md +2 -1
  9. data/Rakefile +4 -1
  10. data/fog.gemspec +4 -5
  11. data/gemfiles/Gemfile-edge +17 -0
  12. data/{Gemfile.1.8.7 → gemfiles/Gemfile-ruby-1.8.7} +4 -1
  13. data/lib/fog/aws/core.rb +0 -9
  14. data/lib/fog/aws/dynamodb.rb +0 -1
  15. data/lib/fog/aws/iam.rb +29 -5
  16. data/lib/fog/aws/parsers/compute/describe_dhcp_options.rb +1 -2
  17. data/lib/fog/aws/parsers/iam/list_mfa_devices.rb +34 -0
  18. data/lib/fog/aws/requests/compute/run_instances.rb +8 -2
  19. data/lib/fog/aws/requests/data_pipeline/describe_objects.rb +5 -4
  20. data/lib/fog/aws/requests/iam/list_mfa_devices.rb +55 -0
  21. data/lib/fog/aws/storage.rb +0 -9
  22. data/lib/fog/cloudsigma/docs/getting_started.md +2 -2
  23. data/lib/fog/cloudstack/models/compute/servers.rb +3 -0
  24. data/lib/fog/ecloud/compute.rb +1 -1
  25. data/lib/fog/fogdocker/requests/compute/container_action.rb +1 -1
  26. data/lib/fog/fogdocker/requests/compute/container_all.rb +1 -1
  27. data/lib/fog/fogdocker/requests/compute/container_commit.rb +1 -1
  28. data/lib/fog/fogdocker/requests/compute/container_create.rb +1 -1
  29. data/lib/fog/fogdocker/requests/compute/container_get.rb +1 -1
  30. data/lib/fog/fogdocker/requests/compute/image_all.rb +1 -1
  31. data/lib/fog/fogdocker/requests/compute/image_create.rb +1 -1
  32. data/lib/fog/fogdocker/requests/compute/image_get.rb +1 -1
  33. data/lib/fog/glesys/compute.rb +6 -6
  34. data/lib/fog/google/README.md +1 -1
  35. data/lib/fog/google/compute.rb +63 -3
  36. data/lib/fog/google/examples/create.rb +1 -1
  37. data/lib/fog/google/examples/eric-fail.rb +13 -7
  38. data/lib/fog/google/examples/load-balance.rb +100 -0
  39. data/lib/fog/google/models/compute/address.rb +62 -0
  40. data/lib/fog/google/models/compute/addresses.rb +34 -0
  41. data/lib/fog/google/models/compute/disk.rb +13 -5
  42. data/lib/fog/google/models/compute/firewall.rb +48 -0
  43. data/lib/fog/google/models/compute/firewalls.rb +27 -0
  44. data/lib/fog/google/models/compute/flavor.rb +16 -5
  45. data/lib/fog/google/models/compute/flavors.rb +10 -4
  46. data/lib/fog/google/models/compute/forwarding_rule.rb +88 -0
  47. data/lib/fog/google/models/compute/forwarding_rules.rb +45 -0
  48. data/lib/fog/google/models/compute/http_health_check.rb +85 -0
  49. data/lib/fog/google/models/compute/http_health_checks.rb +26 -0
  50. data/lib/fog/google/models/compute/network.rb +45 -0
  51. data/lib/fog/google/models/compute/networks.rb +27 -0
  52. data/lib/fog/google/models/compute/operation.rb +41 -5
  53. data/lib/fog/google/models/compute/operations.rb +18 -3
  54. data/lib/fog/google/models/compute/project.rb +32 -0
  55. data/lib/fog/google/models/compute/projects.rb +22 -0
  56. data/lib/fog/google/models/compute/region.rb +34 -0
  57. data/lib/fog/google/models/compute/regions.rb +27 -0
  58. data/lib/fog/google/models/compute/route.rb +52 -0
  59. data/lib/fog/google/models/compute/routes.rb +27 -0
  60. data/lib/fog/google/models/compute/server.rb +24 -7
  61. data/lib/fog/google/models/compute/servers.rb +2 -2
  62. data/lib/fog/google/models/compute/snapshot.rb +22 -7
  63. data/lib/fog/google/models/compute/snapshots.rb +4 -2
  64. data/lib/fog/google/models/compute/target_pool.rb +112 -0
  65. data/lib/fog/google/models/compute/target_pools.rb +45 -0
  66. data/lib/fog/google/requests/compute/add_target_pool_health_checks.rb +34 -0
  67. data/lib/fog/google/requests/compute/add_target_pool_instances.rb +34 -0
  68. data/lib/fog/google/requests/compute/delete_forwarding_rule.rb +36 -0
  69. data/lib/fog/google/requests/compute/delete_http_health_check.rb +30 -0
  70. data/lib/fog/google/requests/compute/delete_region_operation.rb +33 -0
  71. data/lib/fog/google/requests/compute/delete_route.rb +26 -0
  72. data/lib/fog/google/requests/compute/delete_snapshot.rb +2 -7
  73. data/lib/fog/google/requests/compute/delete_target_pool.rb +36 -0
  74. data/lib/fog/google/requests/compute/get_forwarding_rule.rb +33 -0
  75. data/lib/fog/google/requests/compute/get_http_health_check.rb +30 -0
  76. data/lib/fog/google/requests/compute/get_project.rb +25 -0
  77. data/lib/fog/google/requests/compute/get_region.rb +26 -0
  78. data/lib/fog/google/requests/compute/get_region_operation.rb +36 -0
  79. data/lib/fog/google/requests/compute/get_route.rb +26 -0
  80. data/lib/fog/google/requests/compute/get_target_pool.rb +33 -0
  81. data/lib/fog/google/requests/compute/get_target_pool_health.rb +35 -0
  82. data/lib/fog/google/requests/compute/insert_address.rb +4 -4
  83. data/lib/fog/google/requests/compute/insert_firewall.rb +20 -6
  84. data/lib/fog/google/requests/compute/insert_forwarding_rule.rb +31 -0
  85. data/lib/fog/google/requests/compute/insert_http_health_check.rb +32 -0
  86. data/lib/fog/google/requests/compute/insert_network.rb +6 -4
  87. data/lib/fog/google/requests/compute/insert_route.rb +38 -0
  88. data/lib/fog/google/requests/compute/insert_server.rb +15 -0
  89. data/lib/fog/google/requests/compute/insert_target_pool.rb +31 -0
  90. data/lib/fog/google/requests/compute/list_aggregated_addresses.rb +25 -0
  91. data/lib/fog/google/requests/compute/list_aggregated_machine_types.rb +25 -0
  92. data/lib/fog/google/requests/compute/list_forwarding_rules.rb +36 -0
  93. data/lib/fog/google/requests/compute/list_http_health_checks.rb +29 -0
  94. data/lib/fog/google/requests/compute/list_region_operations.rb +29 -0
  95. data/lib/fog/google/requests/compute/list_regions.rb +29 -0
  96. data/lib/fog/google/requests/compute/list_routes.rb +25 -0
  97. data/lib/fog/google/requests/compute/list_target_pools.rb +30 -0
  98. data/lib/fog/google/requests/compute/remove_target_pool_health_checks.rb +34 -0
  99. data/lib/fog/google/requests/compute/remove_target_pool_instance.rb +34 -0
  100. data/lib/fog/google/requests/compute/remove_target_pool_instances.rb +34 -0
  101. data/lib/fog/google/requests/compute/set_common_instance_metadata.rb +30 -0
  102. data/lib/fog/google/requests/compute/set_forwarding_rule_target.rb +32 -0
  103. data/lib/fog/google/requests/compute/set_tags.rb +4 -1
  104. data/lib/fog/hp/examples/compute.md +3 -3
  105. data/lib/fog/hp/examples/compute_v2.md +6 -3
  106. data/lib/fog/hp/examples/networking.md +1 -1
  107. data/lib/fog/hp/models/network/router.rb +1 -1
  108. data/lib/fog/joyent/analytics.rb +2 -2
  109. data/lib/fog/joyent/compute.rb +2 -2
  110. data/lib/fog/joyent/models/compute/server.rb +2 -0
  111. data/lib/fog/ninefold/compute.rb +6 -6
  112. data/lib/fog/openstack/compute.rb +3 -3
  113. data/lib/fog/openstack/core.rb +4 -4
  114. data/lib/fog/openstack/examples/network/network_subnets_routers.rb +2 -2
  115. data/lib/fog/openstack/identity.rb +1 -1
  116. data/lib/fog/openstack/image.rb +1 -1
  117. data/lib/fog/openstack/metering.rb +1 -1
  118. data/lib/fog/openstack/models/network/router.rb +21 -4
  119. data/lib/fog/openstack/network.rb +1 -1
  120. data/lib/fog/openstack/orchestration.rb +2 -2
  121. data/lib/fog/openstack/requests/network/create_router.rb +30 -9
  122. data/lib/fog/openstack/requests/network/delete_router.rb +1 -1
  123. data/lib/fog/openstack/requests/network/update_router.rb +28 -41
  124. data/lib/fog/openstack/requests/storage/get_object_https_url.rb +12 -2
  125. data/lib/fog/openstack/storage.rb +1 -1
  126. data/lib/fog/openstack/volume.rb +1 -1
  127. data/lib/fog/rackspace/auto_scale.rb +1 -1
  128. data/lib/fog/rackspace/block_storage.rb +2 -2
  129. data/lib/fog/rackspace/cdn.rb +1 -1
  130. data/lib/fog/rackspace/compute.rb +1 -1
  131. data/lib/fog/rackspace/compute_v2.rb +2 -2
  132. data/lib/fog/rackspace/core.rb +2 -1
  133. data/lib/fog/rackspace/databases.rb +2 -2
  134. data/lib/fog/rackspace/dns.rb +1 -1
  135. data/lib/fog/rackspace/identity.rb +1 -1
  136. data/lib/fog/rackspace/load_balancers.rb +2 -2
  137. data/lib/fog/rackspace/models/compute_v2/server.rb +18 -6
  138. data/lib/fog/rackspace/models/dns/records.rb +22 -0
  139. data/lib/fog/rackspace/models/monitoring/alarm.rb +3 -1
  140. data/lib/fog/rackspace/models/queues/message.rb +2 -2
  141. data/lib/fog/rackspace/models/storage/metadata.rb +0 -5
  142. data/lib/fog/rackspace/monitoring.rb +1 -1
  143. data/lib/fog/rackspace/queues.rb +1 -1
  144. data/lib/fog/rackspace/requests/compute_v2/create_server.rb +5 -2
  145. data/lib/fog/rackspace/service.rb +1 -1
  146. data/lib/fog/rackspace/storage.rb +1 -1
  147. data/lib/fog/rage4/models/dns/record.rb +2 -0
  148. data/lib/fog/rage4/requests/dns/create_record.rb +2 -0
  149. data/lib/fog/rage4/requests/dns/update_record.rb +2 -0
  150. data/lib/fog/serverlove/compute.rb +2 -2
  151. data/lib/fog/vcloud_director/models/compute/tasks.rb +1 -0
  152. data/lib/fog/version.rb +1 -1
  153. data/lib/fog/vsphere/core.rb +23 -0
  154. data/lib/fog/vsphere/models/compute/interface.rb +3 -3
  155. data/lib/fog/vsphere/requests/compute/create_vm.rb +2 -2
  156. data/lib/fog/vsphere/requests/compute/list_interface_types.rb +1 -2
  157. data/lib/tasks/changelog_task.rb +191 -89
  158. data/lib/tasks/github_release_task.rb +67 -0
  159. data/spec/fog/xml/connection_spec.rb +34 -0
  160. data/tests/aws/requests/iam/mfa_tests.rb +23 -0
  161. data/tests/aws/signed_params_tests.rb +9 -5
  162. data/tests/google/helpers/disk_helper.rb +1 -1
  163. data/tests/google/requests/compute/disk_tests.rb +3 -21
  164. data/tests/helper.rb +1 -1
  165. data/tests/openstack/models/network/router_tests.rb +3 -2
  166. data/tests/openstack/requests/network/router_tests.rb +10 -12
  167. data/tests/openstack/requests/storage/object_tests.rb +23 -7
  168. data/tests/rackspace/models/compute_v2/server_tests.rb +1 -1
  169. data/tests/rackspace/models/monitoring/alarm_tests.rb +3 -0
  170. data/tests/rage4/requests/dns/dns_tests.rb +32 -0
  171. metadata +66 -172
  172. data/changelog.txt +0 -8265
  173. data/providers/brightbox/.gitignore +0 -1
  174. data/providers/brightbox/Gemfile +0 -3
  175. data/providers/brightbox/LICENSE.txt +0 -22
  176. data/providers/brightbox/README.md +0 -50
  177. data/providers/brightbox/Rakefile +0 -8
  178. data/providers/brightbox/fog-brightbox.gemspec +0 -28
  179. data/providers/brightbox/lib/fog/brightbox.rb +0 -1
  180. data/providers/brightbox/lib/fog/brightbox/compute.rb +0 -305
  181. data/providers/brightbox/lib/fog/brightbox/compute/image_selector.rb +0 -45
  182. data/providers/brightbox/lib/fog/brightbox/compute/shared.rb +0 -230
  183. data/providers/brightbox/lib/fog/brightbox/core.rb +0 -11
  184. data/providers/brightbox/lib/fog/brightbox/models/compute/account.rb +0 -69
  185. data/providers/brightbox/lib/fog/brightbox/models/compute/accounts.rb +0 -29
  186. data/providers/brightbox/lib/fog/brightbox/models/compute/api_client.rb +0 -37
  187. data/providers/brightbox/lib/fog/brightbox/models/compute/api_clients.rb +0 -24
  188. data/providers/brightbox/lib/fog/brightbox/models/compute/application.rb +0 -24
  189. data/providers/brightbox/lib/fog/brightbox/models/compute/applications.rb +0 -28
  190. data/providers/brightbox/lib/fog/brightbox/models/compute/cloud_ip.rb +0 -68
  191. data/providers/brightbox/lib/fog/brightbox/models/compute/cloud_ips.rb +0 -34
  192. data/providers/brightbox/lib/fog/brightbox/models/compute/collaboration.rb +0 -49
  193. data/providers/brightbox/lib/fog/brightbox/models/compute/collaborations.rb +0 -47
  194. data/providers/brightbox/lib/fog/brightbox/models/compute/database_server.rb +0 -97
  195. data/providers/brightbox/lib/fog/brightbox/models/compute/database_servers.rb +0 -28
  196. data/providers/brightbox/lib/fog/brightbox/models/compute/database_snapshot.rb +0 -52
  197. data/providers/brightbox/lib/fog/brightbox/models/compute/database_snapshots.rb +0 -24
  198. data/providers/brightbox/lib/fog/brightbox/models/compute/database_type.rb +0 -19
  199. data/providers/brightbox/lib/fog/brightbox/models/compute/database_types.rb +0 -26
  200. data/providers/brightbox/lib/fog/brightbox/models/compute/firewall_policies.rb +0 -29
  201. data/providers/brightbox/lib/fog/brightbox/models/compute/firewall_policy.rb +0 -63
  202. data/providers/brightbox/lib/fog/brightbox/models/compute/firewall_rule.rb +0 -54
  203. data/providers/brightbox/lib/fog/brightbox/models/compute/firewall_rules.rb +0 -24
  204. data/providers/brightbox/lib/fog/brightbox/models/compute/flavor.rb +0 -32
  205. data/providers/brightbox/lib/fog/brightbox/models/compute/flavors.rb +0 -28
  206. data/providers/brightbox/lib/fog/brightbox/models/compute/image.rb +0 -64
  207. data/providers/brightbox/lib/fog/brightbox/models/compute/images.rb +0 -28
  208. data/providers/brightbox/lib/fog/brightbox/models/compute/load_balancer.rb +0 -107
  209. data/providers/brightbox/lib/fog/brightbox/models/compute/load_balancers.rb +0 -28
  210. data/providers/brightbox/lib/fog/brightbox/models/compute/server.rb +0 -217
  211. data/providers/brightbox/lib/fog/brightbox/models/compute/server_group.rb +0 -94
  212. data/providers/brightbox/lib/fog/brightbox/models/compute/server_groups.rb +0 -29
  213. data/providers/brightbox/lib/fog/brightbox/models/compute/servers.rb +0 -61
  214. data/providers/brightbox/lib/fog/brightbox/models/compute/user.rb +0 -43
  215. data/providers/brightbox/lib/fog/brightbox/models/compute/user_collaboration.rb +0 -44
  216. data/providers/brightbox/lib/fog/brightbox/models/compute/user_collaborations.rb +0 -31
  217. data/providers/brightbox/lib/fog/brightbox/models/compute/users.rb +0 -27
  218. data/providers/brightbox/lib/fog/brightbox/models/compute/zone.rb +0 -22
  219. data/providers/brightbox/lib/fog/brightbox/models/compute/zones.rb +0 -29
  220. data/providers/brightbox/lib/fog/brightbox/oauth2.rb +0 -166
  221. data/providers/brightbox/lib/fog/brightbox/requests/compute/accept_user_collaboration.rb +0 -21
  222. data/providers/brightbox/lib/fog/brightbox/requests/compute/activate_console_server.rb +0 -21
  223. data/providers/brightbox/lib/fog/brightbox/requests/compute/add_listeners_load_balancer.rb +0 -24
  224. data/providers/brightbox/lib/fog/brightbox/requests/compute/add_nodes_load_balancer.rb +0 -24
  225. data/providers/brightbox/lib/fog/brightbox/requests/compute/add_servers_server_group.rb +0 -34
  226. data/providers/brightbox/lib/fog/brightbox/requests/compute/apply_to_firewall_policy.rb +0 -24
  227. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_api_client.rb +0 -23
  228. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_application.rb +0 -23
  229. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_cloud_ip.rb +0 -24
  230. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_collaboration.rb +0 -23
  231. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_database_server.rb +0 -25
  232. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_firewall_policy.rb +0 -26
  233. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_firewall_rule.rb +0 -29
  234. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_image.rb +0 -30
  235. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_load_balancer.rb +0 -26
  236. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_server.rb +0 -29
  237. data/providers/brightbox/lib/fog/brightbox/requests/compute/create_server_group.rb +0 -23
  238. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_api_client.rb +0 -28
  239. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_application.rb +0 -28
  240. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_cloud_ip.rb +0 -28
  241. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_collaboration.rb +0 -28
  242. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_database_server.rb +0 -26
  243. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_database_snapshot.rb +0 -26
  244. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_firewall_policy.rb +0 -28
  245. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_firewall_rule.rb +0 -28
  246. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_image.rb +0 -28
  247. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_load_balancer.rb +0 -28
  248. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_server.rb +0 -28
  249. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_server_group.rb +0 -28
  250. data/providers/brightbox/lib/fog/brightbox/requests/compute/delete_user_collaboration.rb +0 -28
  251. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_account.rb +0 -29
  252. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_api_client.rb +0 -21
  253. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_application.rb +0 -21
  254. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_authenticated_user.rb +0 -17
  255. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_cloud_ip.rb +0 -21
  256. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_collaboration.rb +0 -21
  257. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_database_server.rb +0 -19
  258. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_database_snapshot.rb +0 -19
  259. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_database_type.rb +0 -21
  260. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_firewall_policy.rb +0 -21
  261. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_firewall_rule.rb +0 -21
  262. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_image.rb +0 -21
  263. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_interface.rb +0 -21
  264. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_load_balancer.rb +0 -21
  265. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_scoped_account.rb +0 -15
  266. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_server.rb +0 -21
  267. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_server_group.rb +0 -21
  268. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_server_type.rb +0 -21
  269. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_user.rb +0 -29
  270. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_user_collaboration.rb +0 -21
  271. data/providers/brightbox/lib/fog/brightbox/requests/compute/get_zone.rb +0 -21
  272. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_accounts.rb +0 -17
  273. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_api_clients.rb +0 -19
  274. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_applications.rb +0 -19
  275. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_cloud_ips.rb +0 -19
  276. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_collaborations.rb +0 -19
  277. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_database_servers.rb +0 -17
  278. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_database_snapshots.rb +0 -17
  279. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_database_types.rb +0 -19
  280. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_firewall_policies.rb +0 -19
  281. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_images.rb +0 -19
  282. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_load_balancers.rb +0 -19
  283. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_server_groups.rb +0 -19
  284. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_server_types.rb +0 -19
  285. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_servers.rb +0 -19
  286. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_user_collaborations.rb +0 -19
  287. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_users.rb +0 -19
  288. data/providers/brightbox/lib/fog/brightbox/requests/compute/list_zones.rb +0 -19
  289. data/providers/brightbox/lib/fog/brightbox/requests/compute/map_cloud_ip.rb +0 -24
  290. data/providers/brightbox/lib/fog/brightbox/requests/compute/move_servers_server_group.rb +0 -36
  291. data/providers/brightbox/lib/fog/brightbox/requests/compute/reject_user_collaboration.rb +0 -21
  292. data/providers/brightbox/lib/fog/brightbox/requests/compute/remove_firewall_policy.rb +0 -24
  293. data/providers/brightbox/lib/fog/brightbox/requests/compute/remove_listeners_load_balancer.rb +0 -24
  294. data/providers/brightbox/lib/fog/brightbox/requests/compute/remove_nodes_load_balancer.rb +0 -24
  295. data/providers/brightbox/lib/fog/brightbox/requests/compute/remove_servers_server_group.rb +0 -34
  296. data/providers/brightbox/lib/fog/brightbox/requests/compute/resend_collaboration.rb +0 -21
  297. data/providers/brightbox/lib/fog/brightbox/requests/compute/reset_ftp_password_account.rb +0 -32
  298. data/providers/brightbox/lib/fog/brightbox/requests/compute/reset_ftp_password_scoped_account.rb +0 -18
  299. data/providers/brightbox/lib/fog/brightbox/requests/compute/reset_password_database_server.rb +0 -19
  300. data/providers/brightbox/lib/fog/brightbox/requests/compute/reset_secret_api_client.rb +0 -25
  301. data/providers/brightbox/lib/fog/brightbox/requests/compute/reset_secret_application.rb +0 -21
  302. data/providers/brightbox/lib/fog/brightbox/requests/compute/shutdown_server.rb +0 -21
  303. data/providers/brightbox/lib/fog/brightbox/requests/compute/snapshot_database_server.rb +0 -19
  304. data/providers/brightbox/lib/fog/brightbox/requests/compute/snapshot_server.rb +0 -21
  305. data/providers/brightbox/lib/fog/brightbox/requests/compute/start_server.rb +0 -21
  306. data/providers/brightbox/lib/fog/brightbox/requests/compute/stop_server.rb +0 -21
  307. data/providers/brightbox/lib/fog/brightbox/requests/compute/unmap_cloud_ip.rb +0 -21
  308. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_account.rb +0 -61
  309. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_api_client.rb +0 -26
  310. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_application.rb +0 -26
  311. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_cloud_ip.rb +0 -27
  312. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_database_server.rb +0 -25
  313. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_database_snapshot.rb +0 -26
  314. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_firewall_policy.rb +0 -26
  315. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_firewall_rule.rb +0 -31
  316. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_image.rb +0 -31
  317. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_load_balancer.rb +0 -29
  318. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_scoped_account.rb +0 -31
  319. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_server.rb +0 -28
  320. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_server_group.rb +0 -26
  321. data/providers/brightbox/lib/fog/brightbox/requests/compute/update_user.rb +0 -29
  322. data/providers/brightbox/lib/fog/brightbox/version.rb +0 -5
  323. data/providers/brightbox/test/fog/compute/brightbox_test.rb +0 -37
  324. data/test/fog/xml/connection_test.rb +0 -30
@@ -1,5 +1,6 @@
1
1
  * Aaron Bell <aarontbell@gmail.com>
2
2
  * Aaron Suggs <aaron@ktheory.com>
3
+ * Abhishek Chanda <abhishek.becs@gmail.com>
3
4
  * Adam Bozanich <adam.boz@gmail.com>
4
5
  * Adam Greene <adam@sweetspotdiabetes.com>
5
6
  * Adam Heinz <amh@metricwise.net>
@@ -63,6 +64,7 @@
63
64
  * Arthur Gunawan <acgun3@gmail.com>
64
65
  * Arvid Andersson <arvid@winstondesign.se>
65
66
  * Ash Wilson <ash.wilson@rackspace.com>
67
+ * Ash Wilson <smashwilson@gmail.com>
66
68
  * Athir Nuaimi <anuaimi@devfoundry.com>
67
69
  * Avrohom Katz <iambpentameter@gmail.com>
68
70
  * BK Box <bk@theboxes.org>
@@ -74,6 +76,7 @@
74
76
  * Ben Hundley <ben.hundley@gmail.com>
75
77
  * Ben Turley <ben@scan.me>
76
78
  * Benjamin Manns <benmanns@gmail.com>
79
+ * Benson Kalahar <bensonk42@gmail.com>
77
80
  * Benton Roberts <benton@bentonroberts.com>
78
81
  * Benton Roberts <broberts@mdsol.com>
79
82
  * Blake Gentry <blakesgentry@gmail.com>
@@ -88,6 +91,7 @@
88
91
  * Bradley Schaefer <bradley.schaefer@gmail.com>
89
92
  * Brandon Dunne <bdunne@redhat.com>
90
93
  * Brendan Fosberry <brendan.fosberry@rackspace.com>
94
+ * Brett Porter <brett@apache.org>
91
95
  * Brian D. Burns <iosctr@gmail.com>
92
96
  * Brian Dorry <bdorry@Brian-Dorrys-MacBook-Pro.local>
93
97
  * Brian Hartsock <brian.hartsock@gmail.com>
@@ -102,6 +106,7 @@
102
106
  * Carl Allen <callen@book.com>
103
107
  * Carl Caum <carl@carlcaum.com>
104
108
  * Carl Hicks <carl.hicks@gmail.com>
109
+ * Carl Loa Odin <carl.loa.odin@klarna.com>
105
110
  * Carl Woodward <carl@88cartell.com>
106
111
  * Carl Woodward <carl@Carls-MacBook-Pro.local>
107
112
  * Carlos Sanchez <csanchez@maestrodev.com>
@@ -117,10 +122,12 @@
117
122
  * Chris Frederick <chris@maginatics.com>
118
123
  * Chris Hasenpflug <github@chris.hasenpflug.us>
119
124
  * Chris Howe <howech@infochimps.com>
125
+ * Chris Kershaw <ckershaw@6fusion.com>
120
126
  * Chris Mague <github@mague.com>
121
127
  * Chris Roberts <chrisroberts.code@gmail.com>
122
128
  * Chris Wuest <chris.wuest@rackspace.com>
123
129
  * Chris Wuest <chris@chriswuest.com>
130
+ * Christian Berendt <berendt@b1-systems.de>
124
131
  * Christian Paredes <cp@redbluemagenta.com>
125
132
  * Christoph Schiessl <chs@proactive.cc>
126
133
  * Christoph Witzany <christoph@web.crofting.com>
@@ -128,6 +135,7 @@
128
135
  * Christopher Meiklejohn <christopher.meiklejohn@gmail.com>
129
136
  * Christopher Oliver <coliver@coliverlaptop.(none)>
130
137
  * Christopher Oliver <coliver@datapipe.com>
138
+ * Christopher Snell <chris.snell@gmail.com>
131
139
  * Claudio Poli <masterkain@gmail.com>
132
140
  * Coby Randquist <randquistcp@gmail.com>
133
141
  * Cody Herriges <c.a.herriges@gmail.com>
@@ -186,11 +194,13 @@
186
194
  * Eric Hankins <ehankins@rednovalabs.com>
187
195
  * Eric Herot <eric.github@herot.com>
188
196
  * Eric Hodel <drbrain@segment7.net>
197
+ * Eric Johnson <erjohnso@google.com>
189
198
  * Eric Lindvall <eric@5stops.com>
190
199
  * Eric Stonfer <ericstonfer@yahoo.com>
191
200
  * Eric Stonfer <estonfer@gmail.com>
192
201
  * Eric Stonfer <estonfer_ldap@ccppup-ae-a001-p.ae.ccp.cable.comcast.com>
193
202
  * Eric Wong <ericsyw@gmail.com>
203
+ * Erik Mackdanz <erik@infochimps.com>
194
204
  * Erik Michaels-Ober <sferik@gmail.com>
195
205
  * Erik Terpstra <erterpstra@gmail.com>
196
206
  * Eugene Howe & Josh Lane <ehowe@engineyard.com>
@@ -221,6 +231,7 @@
221
231
  * Glenn Tweedie <glenn.tweedie@agworld.com.au>
222
232
  * Greg Blomquist <gblomqui@redhat.com>
223
233
  * Greg Sutcliffe <greg.Sutcliffe@gmail.com>
234
+ * Greg Sutcliffe <gsutclif@redhat.com>
224
235
  * Grégory Karékinian <greg@karekinian.com>
225
236
  * Grzesiek Kolodziejczyk <gkolodziejczyk@gmail.com>
226
237
  * Gustavo Villalta <gvillalta99@gmail.com>
@@ -254,6 +265,7 @@
254
265
  * James Stremick <james.stremick@gmail.com>
255
266
  * James W. Brinkerhoff <jwb@paravolve.net>
256
267
  * Jamie H <jamie@limetree.org>
268
+ * Jamie Paton <jamiep@activestate.com>
257
269
  * Jason Faulkner <jay@jvf.cc>
258
270
  * Jason Hansen & Josh Lane <jhansen@engineyard.com>
259
271
  * Jason Montleon <jmontleo@redhat.com>
@@ -262,6 +274,7 @@
262
274
  * Jay Faulkner <jay.faulkner@rackspace.com>
263
275
  * Jay Perry <jperry@brightcove.com>
264
276
  * Jeff McCune <jeff@puppetlabs.com>
277
+ * Jeffrey C. Ollie <jeff@ocjtech.us>
265
278
  * Jens Braeuer <jens@numberfour.eu>
266
279
  * Jeremy Deininger <jeremy@rightscale.com>
267
280
  * Jesse Davis <jdavis@vcharge-energy.com>
@@ -269,6 +282,7 @@
269
282
  * Jesse Proudman <jesse.proudman@blueboxgrp.com>
270
283
  * Jesse Proudman <jproudman@nova.(none)>
271
284
  * Jesse Scott <jesse.c.scott@gmail.com>
285
+ * Jim Berlage <jberlage@mdsol.com>
272
286
  * Jim Salinas <jim.salinas@rackspace.com>
273
287
  * Joachim Nolten <joachim@viewbook.com>
274
288
  * Joe Kinsella <joe.kinsella@gmail.com>
@@ -304,11 +318,13 @@
304
318
  * Josh Kearney <josh@jk0.org>
305
319
  * Josh Lane & Ines Sombra <jlane@engineyard.com>
306
320
  * Josh Lane & Jason Hansen <jlane@engineyard.com>
321
+ * Josh Lane & Thom Mahoney <jlane@engineyard.com>
307
322
  * Josh Lane <jlane@engineyard.com>
308
323
  * Josh Lane <lane.joshlane@gmail.com>
309
324
  * Josh Lane <me@joshualane.com>
310
325
  * Josh Pasqualetto <josh.pasqualetto@sonian.net>
311
326
  * Josh Yotty <jyotty@bluebox.net>
327
+ * Joshua Garnett <josh@kixeye.com>
312
328
  * Joshua Gross <joshua@surfeasy.com>
313
329
  * Joshua Krall <joshuakrall@pobox.com>
314
330
  * Joshua Napoli <jnapoli@swipely-napoli.home>
@@ -336,14 +352,18 @@
336
352
  * Kevin McFadden <kmcfadden@gmail.com>
337
353
  * Kevin Menard <nirvdrum@gmail.com>
338
354
  * Kevin Moore <kevin@thinkpixellab.com>
355
+ * Kevin Olbrich <kolbrich@6fusion.com>
339
356
  * Konstantin Haase <konstantin.mailinglists@googlemail.com>
357
+ * Konstantinos Natsakis <k.natsakis@xe.gr>
340
358
  * Kunal Parikh <kunal@techthumb.in>
359
+ * Kunal Thakar <kthakar@twilio.com>
341
360
  * Kyla Kolb <kkolb@mitre.org>
342
361
  * Kyle Drake <kyledrake@gmail.com>
343
362
  * Kyle Rames <kyle.rames@rackspace.com>
344
363
  * Kyle Rames <kyle@rames.org>
345
364
  * Lance Carlson <lancecarlson@gmail.com>
346
365
  * Lance Ivy <lance@cainlevy.net>
366
+ * Larry Gilbert <larry@l2g.to>
347
367
  * Larry Wright <larrywright@gmail.com>
348
368
  * Lars Pind <lars@pinds.com>
349
369
  * Laurent Bigonville <bigon@bigon.be>
@@ -374,6 +394,7 @@
374
394
  * Mark Phillips <mark.phillips2@bskyb.com>
375
395
  * Mark Rushakoff <mark.rushakoff@gmail.com>
376
396
  * Mark Turner <mark@amerine.net>
397
+ * Markus Schwed <maschwed@anynines.com>
377
398
  * Marshall Yount <marshall@yountlabs.com>
378
399
  * Martin Emde <martin.emde@gmail.com>
379
400
  * Martin Englund <martin@englund.nu>
@@ -408,6 +429,7 @@
408
429
  * Michael Keirnan <mgk@noteflight.com>
409
430
  * Michael Linderman <mlinderm@stanford.edu>
410
431
  * Michael Rykov <mrykov@gmail.com>
432
+ * Michael Sprauer <Sprauer@Inline.de>
411
433
  * Michael Zeng <michaelzeng@swipely.com>
412
434
  * Michał Krzyżanowski <michal.krzyzanowski+github@gmail.com>
413
435
  * Michiel Sikkes <michiel.sikkes@gmail.com>
@@ -416,6 +438,7 @@
416
438
  * Mike Gehard <mgehard@pivotallabs.com>
417
439
  * Mike Hagedorn <mike@silverchairsolutions.com>
418
440
  * Mike Manewitz <mike.manewitz@gmail.com>
441
+ * Mike Marion <mike.marion@gmail.com>
419
442
  * Mike Moore <mike@blowmage.com>
420
443
  * Mike Pountney <Mike.Pountney@gmail.com>
421
444
  * Ming Jin <skyairmj@gmail.com>
@@ -463,6 +486,7 @@
463
486
  * Paul Vudmaska <Paul.Vudmaska@Rackspace.com>
464
487
  * Paulo Henrique Lopes Ribeiro <plribeiro3000@gmail.com>
465
488
  * Pavel Repin <prepin@gmail.com>
489
+ * Pedro Belo <pedro@heroku.com>
466
490
  * Pedro Nascimento <pnascimento@gmail.com>
467
491
  * Pedro Perez <pedro@bvox.net>
468
492
  * Peter Bonnell <peter@circuitllc.com>
@@ -488,6 +512,7 @@
488
512
  * Pratik Naik <pratiknaik@gmail.com>
489
513
  * Rad Gruchalski <radek@gruchalski.com>
490
514
  * Raphael Costa <raphael@raphaelcosta.net>
515
+ * Reda NOUSHI <reda_noushi@yahoo.com>
491
516
  * Reinaldo Junior <juniorz@gmail.com>
492
517
  * Rich Lane <rlane@club.cc.cmu.edu>
493
518
  * Rick Bradley <rick@rickbradley.com>
@@ -502,6 +527,7 @@
502
527
  * Ruben Koster <ruben.koster@innovationfactory.eu>
503
528
  * Rupak Ganguly <rupakg@gmail.com>
504
529
  * Rusty Geldmacher <rgeldmacher@sermo.com>
530
+ * Ryan Davies <ryan@ryandavies.co.nz>
505
531
  * Ryan Richard <ryanrichard07@gmail.com>
506
532
  * Ryan Stout <ryanstout@gmail.com>
507
533
  * Sairam <sairam@kunala.com>
@@ -514,6 +540,7 @@
514
540
  * Samuel Merritt <spam@andcheese.org>
515
541
  * Sarah Vessels <sarah.vessels@cirrusmio.com>
516
542
  * Sascha Korth <sascha.korth@zweitag.de>
543
+ * Scott Carleton <scott@artsicle.com>
517
544
  * Scott Gonyea <me@aitrus.org>
518
545
  * Sean Caffery <sean.caffery@c3businesssolutions.com>
519
546
  * Sean Handley <sean.handley@gmail.com>
@@ -573,16 +600,19 @@
573
600
  * Toby Hede <tobyhede@info-architects.net>
574
601
  * Todd Willey <todd@rubidine.com>
575
602
  * Todd Willey <xtoddx@gmail.com>
603
+ * Tom Hulihan <hulihan.tom159@gmail.com>
576
604
  * Tom Mornini <tmornini@engineyard.com>
577
605
  * Tom Stuart <tom@experthuman.com>
578
606
  * Tomasz Bak <tomasz.bak@nsn.com>
579
607
  * Tomokazu Hirai <tomokazu.hirai@kddi-web.com>
608
+ * Toni Stjepanovic <toni.stjepanovic@gmail.com>
580
609
  * Topper Bowers <topper@toppingdesign.com>
581
610
  * Tor-Ake Fransson <torakef@gmail.com>
582
611
  * Trae Robrock <trobrock@gmail.com>
583
612
  * Trevor Bramble <inbox@trevorbramble.com>
584
613
  * Trevor Bramble <tbramble@bluebox.net>
585
614
  * Trotter Cashion <cashion@gmail.com>
615
+ * Tõnis Simo <anton.estum@gmail.com>
586
616
  * Ulf Mansson <ulf.mansson@recordedfuture.com>
587
617
  * Vadim Spivak <vspivak@vmware.com>
588
618
  * Viktor Petersson <vpetersson@wireload.net>
@@ -603,6 +633,7 @@
603
633
  * William Lawson <lawson.bj@gmail.com>
604
634
  * Wyatt Walter <wyattwalter@gmail.com>
605
635
  * Xavier Fontrodona <xavier.fontrodona@safelayer.com>
636
+ * Yann Hamon <Yann@trailburning.com>
606
637
  * Yauheni Kryudziuk <yauheni.kryudziuk@xing.com>
607
638
  * Your Name <seanhart@funzio.com>
608
639
  * Zachary Danger Campbell <zacharydangercampbell@gmail.com>
@@ -612,6 +643,7 @@
612
643
  * Zuhaib M Siddique <zuhaib@hipchat.com>
613
644
  * Zuhaib Siddique <zuhaib.siddique@leapfile.com>
614
645
  * aabes <a_abes@yahoo.com>
646
+ * abenari <abenari@redhat.com>
615
647
  * alex <alex@alex-HP-ProBook-4510s.(none)>
616
648
  * althras <althras@gmail.com>
617
649
  * angus <ags@sdx.com.au>
@@ -627,6 +659,7 @@
627
659
  * bonkydog <bonkydog@bonkydog.com>
628
660
  * brookemckim <brooke.mckim@gmail.com>
629
661
  * bugagazavr <kirik910@gmail.com>
662
+ * caryp <cary@rightscale.com>
630
663
  * ccloes <chad_cloes@intuit.com>
631
664
  * coliver <coliver@datapipe.com>
632
665
  * crazed <cr4z3d@gmail.com>
@@ -656,6 +689,7 @@
656
689
  * jc00ke <jesse@jc00ke.com>
657
690
  * jimworm <jimworm@gmail.com>
658
691
  * joe <jmorgan@rednovalabs.com>
692
+ * joe morgan <jmorgan@rednovalabs.com>
659
693
  * joewilliams <joe@der-dieb.local>
660
694
  * jordangbull <jordangbull@gmail.com>
661
695
  * jschneiderhan <jon-erik.schneiderhan@meyouhealth.com>
@@ -663,6 +697,7 @@
663
697
  * kbockmanrs <kevin@rightscale.com>
664
698
  * kfafel <keith.fafel@gmail.com>
665
699
  * leehuffman <lhuffman@bluebox.net>
700
+ * leonidlm <leonidlm@gmail.com>
666
701
  * lostboy <paul.crabtree@gmail.com>
667
702
  * marios <marios@marios.(none)>
668
703
  * marios <marios@redhat.com>
@@ -677,10 +712,12 @@
677
712
  * phillc <spyyderz@gmail.com>
678
713
  * questionnet <zacccp@mail.ru>
679
714
  * radekg <radek@gruchalski.com>
715
+ * rebelagentm <rebelagentm@yahoo.com>
680
716
  * ronen barzel <ronen@barzel.org>
681
717
  * rsalm <rs@iki.fi>
682
718
  * ryanlower <rpjlower@gmail.com>
683
719
  * sashap <sasha@mythictechnologies.com>
720
+ * sawanoboly <sawanoboriyu@higanworks.com>
684
721
  * seanhandley <seanhandley@hackmanchester.com>
685
722
  * seeingidog <ian@ruby-code.com>
686
723
  * thattommyhall <thattommyhall@gmail.com>
data/Gemfile CHANGED
@@ -3,6 +3,8 @@ source "https://rubygems.org"
3
3
  group :development, :test do
4
4
  # This is here because gemspec doesn't support require: false
5
5
  gem 'coveralls', :require => false
6
+ gem "netrc", :require => false
7
+ gem "octokit", :require => false
6
8
  end
7
9
 
8
10
  gemspec
data/RELEASE.md CHANGED
@@ -21,7 +21,7 @@ To request a new release please raise an issue.
21
21
  services)
22
22
  * Ensure working on **master**
23
23
  * Update the version number (`lib/fog/version.rb`)
24
- * Run `rake changelog` to update `changelog.txt`
24
+ * Run `rake changelog` to update `CHANGELOG.md`
25
25
  * Run `rake release` to prepare the release which does:
26
26
  * Prepares the release (`rake release:prepare`)
27
27
  * Builds the gem
@@ -30,6 +30,7 @@ services)
30
30
  * Publishes the release (`rake release:publish`)
31
31
  * Pushes commit and tag to Github (Requires Credentials)
32
32
  * Pushes gem to Rubygems (Requires Credentials)
33
+ * Run `rake github_release` to add release to [github release feed](https://github.com/fog/fog/releases.atom) (Requires Credentials)
33
34
 
34
35
  ## Announce the release
35
36
 
data/Rakefile CHANGED
@@ -51,7 +51,7 @@ task :default => :test
51
51
  task :travis => ['test', 'test:travis', 'coveralls_push_workaround']
52
52
 
53
53
  Rake::TestTask.new do |t|
54
- t.pattern = File.join("**", "test", "**", "*_test.rb")
54
+ t.pattern = File.join("**", "spec", "**", "*_spec.rb")
55
55
  end
56
56
 
57
57
  namespace :test do
@@ -210,6 +210,9 @@ end
210
210
  require "tasks/changelog_task"
211
211
  Fog::Rake::ChangelogTask.new
212
212
 
213
+ require "tasks/github_release_task"
214
+ Fog::Rake::GithubReleaseTask.new
215
+
213
216
  task :coveralls_push_workaround do
214
217
  use_coveralls = (Gem::Version.new(RUBY_VERSION) > Gem::Version.new('1.9.2'))
215
218
  if (ENV['COVERAGE'] != 'false') && use_coveralls
@@ -6,8 +6,8 @@ Gem::Specification.new do |s|
6
6
  ## If your rubyforge_project name is different, then edit it and comment out
7
7
  ## the sub! line in the Rakefile
8
8
  s.name = 'fog'
9
- s.version = '1.21.0'
10
- s.date = '2014-03-18'
9
+ s.version = '1.22.0'
10
+ s.date = '2014-04-17'
11
11
  s.rubyforge_project = 'fog'
12
12
 
13
13
  ## Make sure your summary is short. The description may be as long
@@ -57,17 +57,16 @@ Gem::Specification.new do |s|
57
57
  s.add_development_dependency('rbvmomi')
58
58
  s.add_development_dependency('yard')
59
59
  s.add_development_dependency('thor')
60
- s.add_development_dependency('rbovirt', '>= 0.0.24')
60
+ s.add_development_dependency('rbovirt', '0.0.24')
61
61
  s.add_development_dependency('shindo', '~> 0.3.4')
62
62
  s.add_development_dependency('fission')
63
63
  s.add_development_dependency('pry')
64
64
  s.add_development_dependency('google-api-client', '~> 0.6', '>= 0.6.2')
65
- s.add_development_dependency('unf')
66
65
 
67
66
  if ENV["FOG_USE_LIBVIRT"]
68
67
  s.add_development_dependency('ruby-libvirt','~> 0.5.0')
69
68
  end
70
69
 
71
- s.files = `git ls-files`.split("\n")
70
+ s.files = `git ls-files`.split("\n") - `git ls-files -- providers/`.split("\n")
72
71
  s.test_files = `git ls-files -- {spec,tests}/*`.split("\n")
73
72
  end
@@ -0,0 +1,17 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Embedded provider gems
4
+ gem "fog-brightbox", :path => "../providers/brightbox"
5
+
6
+ # Shared components
7
+ gem "fog-core", :github => "fog/fog-core"
8
+ gem "fog-json", :github => "fog/fog-json"
9
+
10
+ group :development, :test do
11
+ # This is here because gemspec doesn"t support require: false
12
+ gem "coveralls", :require => false
13
+ gem "netrc", :require => false
14
+ gem "octokit", :require => false
15
+ end
16
+
17
+ gemspec :path => "../"
@@ -6,6 +6,9 @@ gem 'mime-types', '~>1.16'
6
6
  group :development, :test do
7
7
  # This is here because gemspec doesn't support require: false
8
8
  gem 'coveralls', :require => false
9
+ gem "netrc", :require => false
10
+ gem "octokit", '~> 2.7.2', :require => false
11
+ gem 'rake', '~> 10.1.0'
9
12
  end
10
13
 
11
- gemspec
14
+ gemspec :path => "../"
@@ -89,15 +89,6 @@ module Fog
89
89
  end
90
90
 
91
91
  def self.escape(string)
92
- unless @unf_loaded_or_warned
93
- begin
94
- require('unf/normalizer')
95
- rescue LoadError
96
- Fog::Logger.warning("Unable to load the 'unf' gem. Your AWS strings may not be properly encoded.")
97
- end
98
- @unf_loaded_or_warned = true
99
- end
100
- string = defined?(::UNF::Normalizer) ? ::UNF::Normalizer.normalize(string, :nfc) : string
101
92
  string.gsub(/([^a-zA-Z0-9_.\-~]+)/) {
102
93
  "%" + $1.unpack("H2" * $1.bytesize).join("%").upcase
103
94
  }
@@ -112,7 +112,6 @@ module Fog
112
112
  # defaults for all dynamodb requests
113
113
  params.merge!({
114
114
  :expects => 200,
115
- :host => @host,
116
115
  :method => :post,
117
116
  :path => '/'
118
117
  })
@@ -3,6 +3,7 @@ require 'fog/aws/core'
3
3
  module Fog
4
4
  module AWS
5
5
  class IAM < Fog::Service
6
+ extend Fog::AWS::CredentialFetcher::ServiceMethods
6
7
 
7
8
  class EntityAlreadyExists < Fog::AWS::IAM::Error; end
8
9
  class KeyPairMismatch < Fog::AWS::IAM::Error; end
@@ -11,7 +12,7 @@ module Fog
11
12
  class ValidationError < Fog::AWS::IAM::Error; end
12
13
 
13
14
  requires :aws_access_key_id, :aws_secret_access_key
14
- recognizes :host, :path, :port, :scheme, :persistent, :instrumentor, :instrumentor_name
15
+ recognizes :host, :path, :port, :scheme, :persistent, :instrumentor, :instrumentor_name, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at
15
16
 
16
17
  request_path 'fog/aws/requests/iam'
17
18
  request :add_user_to_group
@@ -52,6 +53,7 @@ module Fog
52
53
  request :list_groups_for_user
53
54
  request :list_instance_profiles
54
55
  request :list_instance_profiles_for_role
56
+ request :list_mfa_devices
55
57
  request :list_roles
56
58
  request :list_role_policies
57
59
  request :list_server_certificates
@@ -93,6 +95,11 @@ module Fog
93
95
  "Status" => "Active",
94
96
  "AccessKeyId" => key
95
97
  }],
98
+ :devices => [{
99
+ :enable_date => Time.now,
100
+ :serial_number => 'R1234',
101
+ :user_name => 'Bob'
102
+ }],
96
103
  :users => Hash.new do |uhash, ukey|
97
104
  uhash[ukey] = {
98
105
  :user_id => Fog::AWS::Mock.key_id,
@@ -125,7 +132,9 @@ module Fog
125
132
  end
126
133
 
127
134
  def initialize(options={})
128
- @aws_access_key_id = options[:aws_access_key_id]
135
+ @use_iam_profile = options[:use_iam_profile]
136
+ @aws_credentials_expire_at = Time::now + 20
137
+ setup_credentials(options)
129
138
  end
130
139
 
131
140
  def data
@@ -135,9 +144,14 @@ module Fog
135
144
  def reset_data
136
145
  self.class.data.delete(@aws_access_key_id)
137
146
  end
147
+
148
+ def setup_credentials(options)
149
+ @aws_access_key_id = options[:aws_access_key_id]
150
+ end
138
151
  end
139
152
 
140
153
  class Real
154
+ include Fog::AWS::CredentialFetcher::ConnectionMethods
141
155
 
142
156
  # Initialize connection to IAM
143
157
  #
@@ -159,12 +173,11 @@ module Fog
159
173
  def initialize(options={})
160
174
  require 'fog/core/parser'
161
175
 
162
- @aws_access_key_id = options[:aws_access_key_id]
163
- @aws_secret_access_key = options[:aws_secret_access_key]
176
+ @use_iam_profile = options[:use_iam_profile]
177
+ setup_credentials(options)
164
178
  @connection_options = options[:connection_options] || {}
165
179
  @instrumentor = options[:instrumentor]
166
180
  @instrumentor_name = options[:instrumentor_name] || 'fog.aws.iam'
167
- @hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
168
181
  @host = options[:host] || 'iam.amazonaws.com'
169
182
  @path = options[:path] || '/'
170
183
  @persistent = options[:persistent] || false
@@ -179,7 +192,17 @@ module Fog
179
192
 
180
193
  private
181
194
 
195
+ def setup_credentials(options)
196
+ @aws_access_key_id = options[:aws_access_key_id]
197
+ @aws_secret_access_key = options[:aws_secret_access_key]
198
+ @aws_session_token = options[:aws_session_token]
199
+ @aws_credentials_expire_at = options[:aws_credentials_expire_at]
200
+
201
+ @hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
202
+ end
203
+
182
204
  def request(params)
205
+ refresh_credentials_if_expired
183
206
  idempotent = params.delete(:idempotent)
184
207
  parser = params.delete(:parser)
185
208
 
@@ -187,6 +210,7 @@ module Fog
187
210
  params,
188
211
  {
189
212
  :aws_access_key_id => @aws_access_key_id,
213
+ :aws_session_token => @aws_session_token,
190
214
  :hmac => @hmac,
191
215
  :host => @host,
192
216
  :path => @path,