fog 1.10.0 → 1.10.1

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 (379) hide show
  1. data/benchs/load_times.rb +31 -0
  2. data/changelog.txt +320 -0
  3. data/fog.gemspec +3 -3
  4. data/lib/fog.rb +42 -15
  5. data/lib/fog/aws/auto_scaling.rb +1 -1
  6. data/lib/fog/aws/beanstalk.rb +1 -1
  7. data/lib/fog/aws/cloud_formation.rb +1 -1
  8. data/lib/fog/aws/compute.rb +1 -1
  9. data/lib/fog/aws/elasticache.rb +1 -1
  10. data/lib/fog/aws/elb.rb +1 -1
  11. data/lib/fog/aws/iam.rb +1 -1
  12. data/lib/fog/aws/models/beanstalk/environment.rb +6 -2
  13. data/lib/fog/aws/models/cdn/distributions.rb +2 -1
  14. data/lib/fog/aws/models/cdn/distributions_helper.rb +2 -1
  15. data/lib/fog/aws/models/cdn/streaming_distributions.rb +2 -1
  16. data/lib/fog/aws/models/compute/server.rb +1 -1
  17. data/lib/fog/aws/models/storage/directory.rb +1 -1
  18. data/lib/fog/aws/models/storage/file.rb +1 -1
  19. data/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb +11 -0
  20. data/lib/fog/aws/rds.rb +1 -1
  21. data/lib/fog/aws/requests/cdn/delete_distribution.rb +5 -7
  22. data/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb +5 -7
  23. data/lib/fog/aws/requests/cdn/get_distribution.rb +28 -31
  24. data/lib/fog/aws/requests/cdn/get_distribution_list.rb +29 -33
  25. data/lib/fog/aws/requests/cdn/get_invalidation.rb +15 -13
  26. data/lib/fog/aws/requests/cdn/get_invalidation_list.rb +15 -17
  27. data/lib/fog/aws/requests/cdn/get_streaming_distribution.rb +23 -26
  28. data/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb +29 -33
  29. data/lib/fog/aws/requests/cdn/post_distribution.rb +40 -42
  30. data/lib/fog/aws/requests/cdn/post_invalidation.rb +14 -18
  31. data/lib/fog/aws/requests/cdn/post_streaming_distribution.rb +28 -30
  32. data/lib/fog/aws/requests/cdn/put_distribution_config.rb +41 -43
  33. data/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb +31 -33
  34. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +16 -20
  35. data/lib/fog/aws/requests/cloud_formation/delete_stack.rb +5 -8
  36. data/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb +19 -22
  37. data/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb +18 -21
  38. data/lib/fog/aws/requests/cloud_formation/describe_stacks.rb +18 -21
  39. data/lib/fog/aws/requests/cloud_formation/get_template.rb +7 -10
  40. data/lib/fog/aws/requests/cloud_formation/update_stack.rb +12 -16
  41. data/lib/fog/aws/requests/cloud_formation/validate_template.rb +9 -12
  42. data/lib/fog/aws/requests/compute/associate_address.rb +13 -7
  43. data/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb +16 -2
  44. data/lib/fog/aws/requests/compute/describe_security_groups.rb +2 -2
  45. data/lib/fog/aws/requests/elb/create_load_balancer.rb +10 -0
  46. data/lib/fog/aws/requests/iam/update_server_certificate.rb +27 -0
  47. data/lib/fog/aws/requests/storage/get_object.rb +6 -2
  48. data/lib/fog/aws/storage.rb +6 -4
  49. data/lib/fog/aws/sts.rb +1 -1
  50. data/lib/fog/bin.rb +2 -0
  51. data/lib/fog/bin/digitalocean.rb +31 -0
  52. data/lib/fog/bin/riakcs.rb +27 -0
  53. data/lib/fog/cloudstack/compute.rb +3 -0
  54. data/lib/fog/cloudstack/models/compute/snapshot.rb +46 -0
  55. data/lib/fog/cloudstack/models/compute/snapshots.rb +25 -0
  56. data/lib/fog/cloudstack/requests/compute/create_snapshot.rb +24 -0
  57. data/lib/fog/compute.rb +3 -0
  58. data/lib/fog/compute/models/server.rb +6 -7
  59. data/lib/fog/core.rb +10 -5
  60. data/lib/fog/core/errors.rb +2 -0
  61. data/lib/fog/core/scp.rb +3 -3
  62. data/lib/fog/core/ssh.rb +1 -1
  63. data/lib/fog/digitalocean.rb +9 -0
  64. data/lib/fog/digitalocean/CHANGELOG.md +6 -0
  65. data/lib/fog/digitalocean/compute.rb +107 -0
  66. data/lib/fog/digitalocean/examples/getting_started.md +106 -0
  67. data/lib/fog/digitalocean/models/compute/flavor.rb +14 -0
  68. data/lib/fog/digitalocean/models/compute/flavors.rb +25 -0
  69. data/lib/fog/digitalocean/models/compute/image.rb +15 -0
  70. data/lib/fog/digitalocean/models/compute/images.rb +25 -0
  71. data/lib/fog/digitalocean/models/compute/region.rb +14 -0
  72. data/lib/fog/digitalocean/models/compute/regions.rb +25 -0
  73. data/lib/fog/digitalocean/models/compute/server.rb +150 -0
  74. data/lib/fog/digitalocean/models/compute/servers.rb +27 -0
  75. data/lib/fog/digitalocean/models/compute/ssh_key.rb +28 -0
  76. data/lib/fog/digitalocean/models/compute/ssh_keys.rb +27 -0
  77. data/lib/fog/digitalocean/requests/compute/create_server.rb +68 -0
  78. data/lib/fog/digitalocean/requests/compute/create_ssh_key.rb +38 -0
  79. data/lib/fog/digitalocean/requests/compute/destroy_server.rb +34 -0
  80. data/lib/fog/digitalocean/requests/compute/destroy_ssh_key.rb +37 -0
  81. data/lib/fog/digitalocean/requests/compute/get_server_details.rb +35 -0
  82. data/lib/fog/digitalocean/requests/compute/get_ssh_key.rb +39 -0
  83. data/lib/fog/digitalocean/requests/compute/list_flavors.rb +38 -0
  84. data/lib/fog/digitalocean/requests/compute/list_images.rb +49 -0
  85. data/lib/fog/digitalocean/requests/compute/list_regions.rb +34 -0
  86. data/lib/fog/digitalocean/requests/compute/list_servers.rb +31 -0
  87. data/lib/fog/digitalocean/requests/compute/list_ssh_keys.rb +31 -0
  88. data/lib/fog/digitalocean/requests/compute/power_cycle_server.rb +33 -0
  89. data/lib/fog/digitalocean/requests/compute/power_off_server.rb +33 -0
  90. data/lib/fog/digitalocean/requests/compute/power_on_server.rb +33 -0
  91. data/lib/fog/digitalocean/requests/compute/reboot_server.rb +33 -0
  92. data/lib/fog/digitalocean/requests/compute/shutdown_server.rb +36 -0
  93. data/lib/fog/dreamhost/CHANGELOG.md +8 -0
  94. data/lib/fog/glesys/models/compute/server.rb +3 -3
  95. data/lib/fog/google/storage.rb +1 -1
  96. data/lib/fog/hp.rb +1 -1
  97. data/lib/fog/hp/CHANGELOG.hp +12 -2
  98. data/lib/fog/hp/block_storage.rb +1 -0
  99. data/lib/fog/hp/cdn.rb +1 -0
  100. data/lib/fog/hp/compute.rb +1 -0
  101. data/lib/fog/hp/models/compute/server.rb +14 -8
  102. data/lib/fog/hp/models/storage/directories.rb +1 -1
  103. data/lib/fog/hp/models/storage/directory.rb +28 -3
  104. data/lib/fog/hp/models/storage/files.rb +1 -1
  105. data/lib/fog/hp/requests/compute/create_server.rb +4 -14
  106. data/lib/fog/hp/storage.rb +2 -0
  107. data/lib/fog/internet_archive.rb +3 -1
  108. data/lib/fog/internet_archive/models/storage/directory.rb +25 -42
  109. data/lib/fog/internet_archive/models/storage/file.rb +45 -64
  110. data/lib/fog/internet_archive/models/storage/ia_attributes.rb +39 -0
  111. data/lib/fog/internet_archive/requests/storage/delete_multiple_objects.rb +4 -78
  112. data/lib/fog/internet_archive/requests/storage/delete_object.rb +2 -70
  113. data/lib/fog/internet_archive/requests/storage/get_object.rb +1 -22
  114. data/lib/fog/internet_archive/requests/storage/get_object_acl.rb +0 -4
  115. data/lib/fog/internet_archive/requests/storage/get_service.rb +1 -2
  116. data/lib/fog/internet_archive/requests/storage/head_object.rb +0 -4
  117. data/lib/fog/internet_archive/requests/storage/post_object_hidden_fields.rb +1 -1
  118. data/lib/fog/internet_archive/requests/storage/put_object.rb +2 -17
  119. data/lib/fog/internet_archive/requests/storage/put_object_acl.rb +0 -5
  120. data/lib/fog/internet_archive/storage.rb +6 -18
  121. data/lib/fog/joyent.rb +2 -0
  122. data/lib/fog/libvirt/requests/compute/get_node_info.rb +1 -1
  123. data/lib/fog/openstack/CHANGELOG.md +47 -0
  124. data/lib/fog/openstack/examples/identity/basics.rb +69 -0
  125. data/lib/fog/openstack/examples/image/upload-test-image.rb +77 -0
  126. data/lib/fog/openstack/examples/network/network_subnets_routers.rb +63 -0
  127. data/lib/fog/openstack/examples/storage/set-account-quota.rb +66 -0
  128. data/lib/fog/openstack/image.rb +4 -0
  129. data/lib/fog/openstack/models/compute/server.rb +4 -2
  130. data/lib/fog/openstack/models/network/floating_ip.rb +2 -2
  131. data/lib/fog/openstack/models/network/floating_ips.rb +1 -1
  132. data/lib/fog/openstack/models/network/router.rb +56 -0
  133. data/lib/fog/openstack/models/network/routers.rb +34 -0
  134. data/lib/fog/openstack/network.rb +15 -2
  135. data/lib/fog/openstack/requests/compute/create_server.rb +11 -0
  136. data/lib/fog/openstack/requests/compute/rebuild_server.rb +9 -1
  137. data/lib/fog/openstack/requests/network/add_router_interface.rb +48 -0
  138. data/lib/fog/openstack/requests/network/create_network.rb +57 -2
  139. data/lib/fog/openstack/requests/network/create_router.rb +57 -0
  140. data/lib/fog/openstack/requests/network/delete_router.rb +30 -0
  141. data/lib/fog/openstack/requests/network/get_router.rb +32 -0
  142. data/lib/fog/openstack/requests/network/list_routers.rb +27 -0
  143. data/lib/fog/openstack/requests/network/remove_router_interface.rb +36 -0
  144. data/lib/fog/openstack/requests/network/update_router.rb +85 -0
  145. data/lib/fog/openstack/storage.rb +57 -0
  146. data/lib/fog/ovirt/compute.rb +4 -0
  147. data/lib/fog/ovirt/models/compute/quota.rb +21 -0
  148. data/lib/fog/ovirt/models/compute/quotas.rb +24 -0
  149. data/lib/fog/ovirt/models/compute/server.rb +2 -1
  150. data/lib/fog/ovirt/models/compute/volume.rb +1 -0
  151. data/lib/fog/ovirt/requests/compute/get_quota.rb +19 -0
  152. data/lib/fog/ovirt/requests/compute/list_quotas.rb +21 -0
  153. data/lib/fog/ovirt/requests/compute/mock_files/quotas.xml +7 -0
  154. data/lib/fog/rackspace.rb +11 -0
  155. data/lib/fog/rackspace/block_storage.rb +73 -20
  156. data/lib/fog/rackspace/cdn.rb +57 -19
  157. data/lib/fog/rackspace/compute.rb +53 -28
  158. data/lib/fog/rackspace/compute_v2.rb +99 -22
  159. data/lib/fog/rackspace/databases.rb +74 -18
  160. data/lib/fog/rackspace/dns.rb +55 -22
  161. data/lib/fog/rackspace/docs/block_storage.md +417 -0
  162. data/lib/fog/rackspace/docs/compute_v2.md +114 -55
  163. data/lib/fog/rackspace/docs/getting_started.md +20 -10
  164. data/lib/fog/rackspace/docs/storage.md +496 -0
  165. data/lib/fog/rackspace/examples/README.md +1 -1
  166. data/lib/fog/rackspace/examples/block_storage/create_snapshot.rb +118 -0
  167. data/lib/fog/rackspace/examples/block_storage/create_volume.rb +58 -0
  168. data/lib/fog/rackspace/examples/block_storage/delete_volume.rb +53 -0
  169. data/lib/fog/rackspace/examples/compute_v2/create_image.rb +2 -2
  170. data/lib/fog/rackspace/examples/compute_v2/create_server.rb +1 -1
  171. data/lib/fog/rackspace/examples/compute_v2/delete_image.rb +2 -2
  172. data/lib/fog/rackspace/examples/compute_v2/delete_server.rb +2 -2
  173. data/lib/fog/rackspace/examples/compute_v2/detach_volume.rb +4 -4
  174. data/lib/fog/rackspace/examples/compute_v2/resize_server.rb +2 -2
  175. data/lib/fog/rackspace/examples/compute_v2/server_attachments.rb +3 -3
  176. data/lib/fog/rackspace/examples/compute_v2/server_metadata.rb +2 -2
  177. data/lib/fog/rackspace/examples/storage/create_cdn_directory.rb +44 -0
  178. data/lib/fog/rackspace/examples/storage/create_private_directory.rb +46 -0
  179. data/lib/fog/rackspace/examples/storage/delete_directory.rb +62 -0
  180. data/lib/fog/rackspace/examples/storage/delete_file.rb +70 -0
  181. data/lib/fog/rackspace/examples/storage/download_file.rb +75 -0
  182. data/lib/fog/rackspace/examples/storage/lorem.txt +1 -0
  183. data/lib/fog/rackspace/examples/storage/storage_metadata.rb +82 -0
  184. data/lib/fog/rackspace/examples/storage/upload_file.rb +45 -0
  185. data/lib/fog/rackspace/identity.rb +10 -3
  186. data/lib/fog/rackspace/load_balancers.rb +76 -18
  187. data/lib/fog/rackspace/models/block_storage/snapshot.rb +42 -0
  188. data/lib/fog/rackspace/models/block_storage/snapshots.rb +15 -0
  189. data/lib/fog/rackspace/models/block_storage/volume.rb +65 -0
  190. data/lib/fog/rackspace/models/block_storage/volume_type.rb +6 -0
  191. data/lib/fog/rackspace/models/block_storage/volume_types.rb +15 -0
  192. data/lib/fog/rackspace/models/block_storage/volumes.rb +15 -0
  193. data/lib/fog/rackspace/models/compute_v2/attachment.rb +8 -0
  194. data/lib/fog/rackspace/models/compute_v2/attachments.rb +9 -1
  195. data/lib/fog/rackspace/models/compute_v2/flavors.rb +9 -1
  196. data/lib/fog/rackspace/models/compute_v2/image.rb +10 -2
  197. data/lib/fog/rackspace/models/compute_v2/images.rb +9 -1
  198. data/lib/fog/rackspace/models/compute_v2/meta_parent.rb +1 -1
  199. data/lib/fog/rackspace/models/compute_v2/metadata.rb +17 -5
  200. data/lib/fog/rackspace/models/compute_v2/metadatum.rb +8 -0
  201. data/lib/fog/rackspace/models/compute_v2/server.rb +72 -13
  202. data/lib/fog/rackspace/models/compute_v2/servers.rb +16 -2
  203. data/lib/fog/rackspace/models/dns/zones.rb +5 -9
  204. data/lib/fog/rackspace/models/identity/service_catalog.rb +83 -0
  205. data/lib/fog/rackspace/models/storage/account.rb +26 -0
  206. data/lib/fog/rackspace/models/storage/directories.rb +23 -3
  207. data/lib/fog/rackspace/models/storage/directory.rb +89 -5
  208. data/lib/fog/rackspace/models/storage/file.rb +112 -2
  209. data/lib/fog/rackspace/models/storage/files.rb +78 -0
  210. data/lib/fog/rackspace/models/storage/metadata.rb +28 -5
  211. data/lib/fog/rackspace/requests/block_storage/create_snapshot.rb +24 -0
  212. data/lib/fog/rackspace/requests/block_storage/create_volume.rb +29 -0
  213. data/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb +10 -0
  214. data/lib/fog/rackspace/requests/block_storage/delete_volume.rb +11 -0
  215. data/lib/fog/rackspace/requests/block_storage/get_snapshot.rb +20 -0
  216. data/lib/fog/rackspace/requests/block_storage/get_volume.rb +24 -0
  217. data/lib/fog/rackspace/requests/block_storage/get_volume_type.rb +14 -0
  218. data/lib/fog/rackspace/requests/block_storage/list_snapshots.rb +17 -0
  219. data/lib/fog/rackspace/requests/block_storage/list_volume_types.rb +13 -0
  220. data/lib/fog/rackspace/requests/block_storage/list_volumes.rb +21 -0
  221. data/lib/fog/rackspace/requests/cdn/delete_object.rb +5 -1
  222. data/lib/fog/rackspace/requests/cdn/get_containers.rb +5 -0
  223. data/lib/fog/rackspace/requests/cdn/head_container.rb +5 -0
  224. data/lib/fog/rackspace/requests/cdn/post_container.rb +6 -1
  225. data/lib/fog/rackspace/requests/cdn/put_container.rb +6 -1
  226. data/lib/fog/rackspace/requests/compute_v2/attach_volume.rb +4 -0
  227. data/lib/fog/rackspace/requests/compute_v2/change_server_password.rb +4 -0
  228. data/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb +5 -0
  229. data/lib/fog/rackspace/requests/compute_v2/create_image.rb +9 -4
  230. data/lib/fog/rackspace/requests/compute_v2/create_server.rb +9 -5
  231. data/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb +5 -0
  232. data/lib/fog/rackspace/requests/compute_v2/delete_image.rb +5 -0
  233. data/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb +5 -0
  234. data/lib/fog/rackspace/requests/compute_v2/delete_server.rb +5 -0
  235. data/lib/fog/rackspace/requests/compute_v2/get_attachment.rb +4 -0
  236. data/lib/fog/rackspace/requests/compute_v2/get_flavor.rb +4 -0
  237. data/lib/fog/rackspace/requests/compute_v2/get_image.rb +5 -1
  238. data/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb +4 -0
  239. data/lib/fog/rackspace/requests/compute_v2/get_server.rb +4 -0
  240. data/lib/fog/rackspace/requests/compute_v2/list_addresses.rb +4 -0
  241. data/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb +4 -0
  242. data/lib/fog/rackspace/requests/compute_v2/list_attachments.rb +4 -0
  243. data/lib/fog/rackspace/requests/compute_v2/list_flavors.rb +4 -0
  244. data/lib/fog/rackspace/requests/compute_v2/list_images.rb +4 -0
  245. data/lib/fog/rackspace/requests/compute_v2/list_metadata.rb +4 -0
  246. data/lib/fog/rackspace/requests/compute_v2/list_servers.rb +4 -0
  247. data/lib/fog/rackspace/requests/compute_v2/reboot_server.rb +4 -0
  248. data/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb +8 -4
  249. data/lib/fog/rackspace/requests/compute_v2/resize_server.rb +6 -1
  250. data/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb +8 -3
  251. data/lib/fog/rackspace/requests/compute_v2/set_metadata.rb +4 -0
  252. data/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb +4 -0
  253. data/lib/fog/rackspace/requests/compute_v2/update_metadata.rb +4 -0
  254. data/lib/fog/rackspace/requests/compute_v2/update_server.rb +4 -0
  255. data/lib/fog/rackspace/requests/storage/copy_object.rb +4 -0
  256. data/lib/fog/rackspace/requests/storage/delete_container.rb +4 -1
  257. data/lib/fog/rackspace/requests/storage/delete_object.rb +4 -1
  258. data/lib/fog/rackspace/requests/storage/get_container.rb +4 -0
  259. data/lib/fog/rackspace/requests/storage/get_containers.rb +4 -0
  260. data/lib/fog/rackspace/requests/storage/get_object.rb +4 -1
  261. data/lib/fog/rackspace/requests/storage/get_object_https_url.rb +7 -4
  262. data/lib/fog/rackspace/requests/storage/head_container.rb +4 -0
  263. data/lib/fog/rackspace/requests/storage/head_containers.rb +4 -0
  264. data/lib/fog/rackspace/requests/storage/head_object.rb +4 -1
  265. data/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb +4 -1
  266. data/lib/fog/rackspace/requests/storage/put_container.rb +4 -1
  267. data/lib/fog/rackspace/requests/storage/put_object.rb +4 -1
  268. data/lib/fog/rackspace/requests/storage/put_object_manifest.rb +4 -1
  269. data/lib/fog/rackspace/service.rb +78 -0
  270. data/lib/fog/rackspace/storage.rb +62 -22
  271. data/lib/fog/riakcs.rb +122 -0
  272. data/lib/fog/riakcs/provisioning.rb +100 -0
  273. data/lib/fog/riakcs/requests/provisioning/create_user.rb +77 -0
  274. data/lib/fog/riakcs/requests/provisioning/disable_user.rb +23 -0
  275. data/lib/fog/riakcs/requests/provisioning/enable_user.rb +23 -0
  276. data/lib/fog/riakcs/requests/provisioning/get_user.rb +41 -0
  277. data/lib/fog/riakcs/requests/provisioning/list_users.rb +43 -0
  278. data/lib/fog/riakcs/requests/provisioning/regrant_secret.rb +23 -0
  279. data/lib/fog/riakcs/requests/provisioning/update_user.rb +23 -0
  280. data/lib/fog/riakcs/requests/usage/get_usage.rb +68 -0
  281. data/lib/fog/riakcs/usage.rb +66 -0
  282. data/lib/fog/vcloud/compute.rb +1 -1
  283. data/lib/fog/vcloud/models/compute/catalog_item.rb +8 -0
  284. data/lib/fog/vcloud/models/compute/server.rb +1 -0
  285. data/lib/fog/vcloud/requests/compute/configure_vm_network.rb +1 -2
  286. data/lib/fog/version.rb +1 -1
  287. data/lib/fog/vsphere/compute.rb +1 -1
  288. data/lib/fog/vsphere/models/compute/servers.rb +9 -9
  289. data/lib/fog/xenserver.rb +2 -0
  290. data/lib/fog/xenserver/CHANGELOG.md +7 -1
  291. data/lib/fog/xenserver/compute.rb +6 -0
  292. data/lib/fog/xenserver/examples/networks-and-vlans.rb +45 -0
  293. data/lib/fog/xenserver/models/compute/network.rb +33 -0
  294. data/lib/fog/xenserver/models/compute/vlan.rb +80 -0
  295. data/lib/fog/xenserver/models/compute/vlans.rb +39 -0
  296. data/lib/fog/xenserver/requests/compute/create_network.rb +42 -0
  297. data/lib/fog/xenserver/requests/compute/create_vlan.rb +35 -0
  298. data/lib/fog/xenserver/requests/compute/destroy_network.rb +33 -0
  299. data/lib/fog/xenserver/requests/compute/destroy_vlan.rb +32 -0
  300. data/lib/fog/zerigo/models/dns/records.rb +15 -12
  301. data/lib/tasks/changelog_task.rb +1 -0
  302. data/tests/aws/requests/compute/address_tests.rb +4 -0
  303. data/tests/aws/requests/iam/server_certificate_tests.rb +32 -0
  304. data/tests/cloudstack/compute/models/snapshot_tests.rb +34 -0
  305. data/tests/digitalocean/helper.rb +44 -0
  306. data/tests/digitalocean/models/compute/flavor_tests.rb +30 -0
  307. data/tests/digitalocean/models/compute/image_tests.rb +31 -0
  308. data/tests/digitalocean/models/compute/region_tests.rb +30 -0
  309. data/tests/digitalocean/models/compute/server_tests.rb +84 -0
  310. data/tests/digitalocean/models/compute/servers_tests.rb +35 -0
  311. data/tests/digitalocean/models/compute/ssh_key_tests.rb +40 -0
  312. data/tests/digitalocean/models/compute/ssh_keys_tests.rb +28 -0
  313. data/tests/digitalocean/requests/compute/create_server_tests.rb +28 -0
  314. data/tests/digitalocean/requests/compute/create_ssh_key_tests.rb +22 -0
  315. data/tests/digitalocean/requests/compute/destroy_server_tests.rb +15 -0
  316. data/tests/digitalocean/requests/compute/destroy_ssh_key_tests.rb +23 -0
  317. data/tests/digitalocean/requests/compute/get_server_details_tests.rb +13 -0
  318. data/tests/digitalocean/requests/compute/get_ssh_key_tests.rb +22 -0
  319. data/tests/digitalocean/requests/compute/list_flavors_tests.rb +23 -0
  320. data/tests/digitalocean/requests/compute/list_images_tests.rb +24 -0
  321. data/tests/digitalocean/requests/compute/list_regions_tests.rb +23 -0
  322. data/tests/digitalocean/requests/compute/list_servers_tests.rb +26 -0
  323. data/tests/digitalocean/requests/compute/list_ssh_keys_tests.rb +21 -0
  324. data/tests/digitalocean/requests/compute/power_cycle_server_tests.rb +20 -0
  325. data/tests/digitalocean/requests/compute/power_state_tests.rb +25 -0
  326. data/tests/digitalocean/requests/compute/reboot_server_tests.rb +14 -0
  327. data/tests/helpers/collection_helper.rb +36 -1
  328. data/tests/helpers/mock_helper.rb +2 -0
  329. data/tests/internet_archive/models/storage/directory_tests.rb +24 -32
  330. data/tests/internet_archive/models/storage/file_tests.rb +16 -35
  331. data/tests/internet_archive/models/storage/files_tests.rb +33 -31
  332. data/tests/internet_archive/models/storage/url_tests.rb +1 -1
  333. data/tests/internet_archive/requests/storage/bucket_tests.rb +34 -38
  334. data/tests/internet_archive/requests/storage/multipart_upload_tests.rb +1 -1
  335. data/tests/openstack/models/network/network_tests.rb +17 -0
  336. data/tests/openstack/models/network/router_tests.rb +38 -0
  337. data/tests/openstack/models/network/routers_tests.rb +21 -0
  338. data/tests/openstack/requests/network/network_tests.rb +61 -10
  339. data/tests/openstack/requests/network/router_tests.rb +75 -0
  340. data/tests/openstack/storage_tests.rb +19 -0
  341. data/tests/ovirt/requests/compute/list_quotas_tests.rb +12 -0
  342. data/tests/rackspace/block_storage_tests.rb +101 -0
  343. data/tests/rackspace/cdn_tests.rb +144 -52
  344. data/tests/rackspace/compute_tests.rb +88 -0
  345. data/tests/rackspace/compute_v2_tests.rb +101 -0
  346. data/tests/rackspace/databases_tests.rb +98 -0
  347. data/tests/rackspace/dns_tests.rb +82 -0
  348. data/tests/rackspace/load_balancer_tests.rb +99 -0
  349. data/tests/rackspace/models/compute_v2/image_tests.rb +51 -0
  350. data/tests/rackspace/models/compute_v2/server_tests.rb +51 -0
  351. data/tests/rackspace/models/identity/service_catalog_tests.rb +81 -0
  352. data/tests/rackspace/models/storage/file_tests.rb +10 -1
  353. data/tests/rackspace/rackspace_tests.rb +21 -0
  354. data/tests/rackspace/requests/compute_v2/metadata_tests.rb +2 -2
  355. data/tests/rackspace/requests/storage/object_tests.rb +2 -2
  356. data/tests/rackspace/storage_tests.rb +99 -3
  357. data/tests/riakcs/requests/provisioning/provisioning_tests.rb +174 -0
  358. data/tests/riakcs/requests/usage/usage_tests.rb +29 -0
  359. data/tests/xenserver/models/compute/network_tests.rb +18 -6
  360. data/tests/xenserver/models/compute/vlan_tests.rb +76 -0
  361. data/tests/xenserver/models/compute/vlans_tests.rb +36 -0
  362. data/tests/xenserver/requests/compute/create_network_tests.rb +20 -0
  363. data/tests/xenserver/requests/compute/create_vlan_tests.rb +36 -0
  364. data/tests/xenserver/requests/compute/destroy_network_tests.rb +13 -0
  365. data/tests/xenserver/requests/compute/destroy_vlan_tests.rb +36 -0
  366. metadata +178 -21
  367. data/lib/fog/internet_archive/models/storage/version.rb +0 -36
  368. data/lib/fog/internet_archive/models/storage/versions.rb +0 -38
  369. data/lib/fog/internet_archive/parsers/storage/get_bucket_object_versions.rb +0 -88
  370. data/lib/fog/internet_archive/parsers/storage/get_bucket_versioning.rb +0 -24
  371. data/lib/fog/internet_archive/requests/storage/get_bucket_object_versions.rb +0 -162
  372. data/lib/fog/internet_archive/requests/storage/get_bucket_versioning.rb +0 -69
  373. data/lib/fog/internet_archive/requests/storage/put_bucket_versioning.rb +0 -75
  374. data/lib/fog/openstack/README.identity.md +0 -69
  375. data/lib/fog/providers.rb +0 -34
  376. data/lib/fog/rackspace/examples/compute_v2/README.md +0 -47
  377. data/tests/internet_archive/models/storage/version_tests.rb +0 -52
  378. data/tests/internet_archive/models/storage/versions_tests.rb +0 -56
  379. data/tests/internet_archive/requests/storage/versioning_tests.rb +0 -258
@@ -0,0 +1,31 @@
1
+ require 'benchmark'
2
+ $LOAD_PATH << File.dirname(__FILE__) + '/../lib'
3
+
4
+ def time_in_fork(&block)
5
+ read, write = IO.pipe
6
+ Process.fork do
7
+ write.puts Benchmark.realtime{ block.call }
8
+ end
9
+ Process.wait
10
+ write.close
11
+ read.read.tap do
12
+ read.close
13
+ end
14
+ end
15
+
16
+ class Array
17
+ def avg
18
+ map(&:to_f).inject(:+) / size
19
+ end
20
+ end
21
+
22
+ def report(label, n = 10, &block)
23
+ puts label
24
+ puts "%.4f" % n.times.map{ time_in_fork &block }.avg
25
+ puts
26
+ end
27
+
28
+ N = 10
29
+
30
+ report("require fog:", N) { require 'fog' }
31
+ report("require fog/aws:", N) { require 'fog/aws' }
@@ -1,3 +1,323 @@
1
+ 1.10.1 04/04/2013 a270b69a23b43a8cdab768f88503779f27a74fa0
2
+ ==========================================================
3
+
4
+ Stats! { 'collaborators' => 46, 'downloads' => 1993968, 'forks' => 746, 'open_issues' => 134, 'watchers' => 2438 }
5
+
6
+ MVP! Kyle Rames
7
+
8
+ [VMWare]
9
+ Fixed broken support for obj_ids with spaces. thanks Marc Grimme
10
+
11
+ [Vcloud]
12
+ Server reset instance vars after save. thanks dJason
13
+
14
+ [aws]
15
+ Handle the "phantom" security group that exists for elbs. thanks Eugene Howe
16
+ mock update_server_certificate. thanks Josh Lane & Ines Sombra
17
+
18
+ [aws|beanstalk]
19
+ Update parser for DescribeEnvironmentResources. thanks George Scott
20
+
21
+ [cloudstack]
22
+ add snapshot model. thanks Dmitry Dedov
23
+
24
+ [core]
25
+ Updated to make ssh timeout user configurable. thanks Kyle Rames
26
+
27
+ [digitalocean]
28
+ Check to see if we have a digital ocean api key before attempting to delete servers. thanks Kyle Rames
29
+
30
+ [digitalocean|compute]
31
+ initial release. thanks Sergio Rubio
32
+ added getting started guide. thanks Sergio Rubio
33
+ Updated server model documentation. thanks Sergio Rubio
34
+ added test helpers. thanks Sergio Rubio
35
+ Implemented Server.reboot. thanks Sergio Rubio
36
+ Implement Server.power_cycle. thanks Sergio Rubio
37
+ tests updates. thanks Sergio Rubio
38
+ Added Servers collection tests. thanks Sergio Rubio
39
+ Implement missing requests. thanks Sergio Rubio
40
+ implemented missing Server actions. thanks Sergio Rubio
41
+ string fixes. thanks Sergio Rubio
42
+ list_servers request test fixes. thanks Sergio Rubio
43
+ server model test fixes. thanks Sergio Rubio
44
+ remove extra comma, breaks ruby 1.8. thanks Sergio Rubio
45
+ Added support to use SSH keys when creating the server. thanks Sergio Rubio
46
+ added some more request. thanks Sergio Rubio
47
+ Added list_flavors mock code. thanks Sergio Rubio
48
+ Added list_images mock code. thanks Sergio Rubio
49
+ added list_servers mock code. thanks Sergio Rubio
50
+ added list_regions mock code. thanks Sergio Rubio
51
+ initialize compute service mock data. thanks Sergio Rubio
52
+ added create_server mock code. thanks Sergio Rubio
53
+ added create_ssh_key mock code. thanks Sergio Rubio
54
+ added destroy_server mock code. thanks Sergio Rubio
55
+ added get_server_details mock code. thanks Sergio Rubio
56
+ list_servers uses mock data. thanks Sergio Rubio
57
+ added list_ssh_keys mock code. thanks Sergio Rubio
58
+ added power_cycle_server mock code. thanks Sergio Rubio
59
+ added power_off_server mock code. thanks Sergio Rubio
60
+ added power_on_server mock code. thanks Sergio Rubio
61
+ added reboot_server mock code. thanks Sergio Rubio
62
+ added shutdown_server mock code. thanks Sergio Rubio
63
+ added list_ssh_keys request tests. thanks Sergio Rubio
64
+ mark Server.reboot test pending if mocking. thanks Sergio Rubio
65
+ do not run at_exit block when mocking. thanks Sergio Rubio
66
+ mark Server.power_cycle test as pending when mocking. thanks Sergio Rubio
67
+ power state tests fixes. thanks Sergio Rubio
68
+ improve power state tests reliability. thanks Sergio Rubio
69
+ fix create_ssh_key request path. thanks Sergio Rubio
70
+ added destroy_ssh_key request and tests. thanks Sergio Rubio
71
+ added get_ssh_key request and tests. thanks Sergio Rubio
72
+ added create_ssh_key request tests. thanks Sergio Rubio
73
+ added SshKey model, collection and related tests. thanks Sergio Rubio
74
+ added ssh related requests, model and collection. thanks Sergio Rubio
75
+ power_state_tests fixes. thanks Sergio Rubio
76
+ list_ssh_keys request mock fixes. thanks Sergio Rubio
77
+ include response body in exception when request fails. thanks Sergio Rubio
78
+ Improved tests reliability. thanks Sergio Rubio
79
+ Added changelog. thanks Sergio Rubio
80
+
81
+ [docs::aws::cloudformation]
82
+ reformatted in YARD format. no content changes, just format changes. thanks Weston Platter
83
+
84
+ [docs::was::cdn]
85
+ reformatted in YARD format. no content changes, just format changes. thanks Weston Platter
86
+
87
+ [dreamhost|dns]
88
+ added missing changelog. thanks Sergio Rubio
89
+
90
+ [hp]
91
+ Add Accept header with application/json for all HP requests. thanks Rupak Ganguly
92
+
93
+ [hp|compute]
94
+ Add user_data option to create server call. thanks Rupak Ganguly
95
+ Consolidate the simple mapped options parameters in the create server call. thanks Rupak Ganguly
96
+ Add the capability to pass in user_data in the server model. thanks Rupak Ganguly
97
+ Add user_data to the mock data structure. thanks Rupak Ganguly
98
+ Fix mock for create server. thanks Rupak Ganguly
99
+ Add user_data option to create server call. thanks Rupak Ganguly
100
+ Consolidate the simple mapped options parameters in the create server call. thanks Rupak Ganguly
101
+ Add user_data to the mock data structure. thanks Rupak Ganguly
102
+ Fix mock for create server. thanks Rupak Ganguly
103
+
104
+ [hp|storage]
105
+ marker option in each method needs to be a string. thanks Andreas Gerauer
106
+
107
+ [libvirt|compute]
108
+ handle missing <system> tag in libvirt node info. thanks Dominic Cleal
109
+
110
+ [misc]
111
+ ovirt quota support. thanks Amos Benari
112
+ Removed Zerigo::Models::DNS::Records#find method, moved functionality to all(options) Removed Rackspace::Models::DNS::Zones#find, moved functionality to all(options). thanks Andreas Gerauer
113
+ fixed infinite loop in each method of AWS Distributions. thanks Andreas Gerauer
114
+ add a test to protect certain Enumerable methods in Fog::Collection subclasses. thanks Andreas Gerauer
115
+ get rid of bucket/directory delete - not allowed for IA. thanks Andrew Kuklewicz
116
+ add IA specific headers for file. thanks Andrew Kuklewicz
117
+ get rid of versions from IA. thanks Andrew Kuklewicz
118
+ missed one. thanks Andrew Kuklewicz
119
+ fix tests, found a few differences with S3. thanks Andrew Kuklewicz
120
+ fix 1.8.7 error, oops. thanks Andrew Kuklewicz
121
+ fix internet archive use of headers, remove acls. thanks Andrew Kuklewicz
122
+ sshable should take the same options as ssh. thanks Anshul Khandelwal
123
+ [aws][glesys] Pass credentials to sshable. thanks Anshul Khandelwal
124
+ Use strict base encoding otherwise breaks for very large org names. thanks Chirag Jog
125
+ revert typo. thanks Chirag Jog
126
+ Fix the base encoding issue with Ruby 1.8.7 Compliance. thanks Chirag Jog
127
+ Delete \r also. thanks Chirag Jog
128
+ Minor fix: Ensure to send a valid Content-Type. thanks Chirag Jog
129
+ Check if a template requires a password or not. thanks Chirag Jog
130
+ Remove unecessary print. thanks Chirag Jog
131
+ Support optional `snapshot_id` key when creating volumes. thanks Chris Roberts
132
+ added dummy filters parameter to servers.all for conformity. thanks Christoph Witzany
133
+ Add Riak CS provider in Fog. thanks Christopher Meiklejohn
134
+ Updated DescribeReservedInstancesOfferings to take in filters as request parameters. thanks Curtis Stewart
135
+ OpenStack: base64 encode personality in rebuild. thanks Dan Prince
136
+ Forcing good Excon version. thanks Daniel Libanori
137
+ Update file.rb. thanks Dave Ungerer
138
+ Stop hardcoding the server ssh port. thanks David Calavera
139
+ Use passed blocks to handle scp callbacks. thanks David Calavera
140
+ fix syntax, ruby 1.8.7. thanks Dmitry Dedov
141
+ changed status to state for conformity and fixed alias for flavor_id. thanks DoubleMalt
142
+ replaced dup/delete with reject. thanks Eugene Howe
143
+ fixed for 1.8. thanks Eugene Howe
144
+ add ovirt quota support. thanks Jason Montleon
145
+ 1620: Try to add some guards around possible nil objects based on associations in VPCs. thanks Jesse Davis
146
+ 1620: Try to add some guards around possible nil objects based on associations in VPCs. thanks Jesse Davis
147
+ fix tabs. thanks Jesse Davis
148
+ First attempt at an S3 path_style flag. thanks Joachim Nolten
149
+ rebasing with master. thanks Kyle Rames
150
+ rebasing with master. thanks Kyle Rames
151
+ removing superfluous readme. thanks Kyle Rames
152
+ rebasing with master. thanks Kyle Rames
153
+ updated endpoint handing. thanks Kyle Rames
154
+ rebasing with master. thanks Kyle Rames
155
+ rebasing. thanks Kyle Rames
156
+ merging in latest master. thanks Kyle Rames
157
+ fixing merge issues. thanks Kyle Rames
158
+ fixing merge issues. thanks Kyle Rames
159
+ merging in document changes. thanks Kyle Rames
160
+ rackspace|compute_v2] removing superfluous note from compute_v2 documentation. thanks Kyle Rames
161
+ merging in latest master. thanks Kyle Rames
162
+ mend. thanks Kyle Rames
163
+ Revert "[rackspace] adding note about credentials in the getting started document". thanks Kyle Rames
164
+ convert lib/fog to simply include all providers. thanks Lance Ivy
165
+ benchmark for loading all of fog vs just aws. thanks Lance Ivy
166
+ fix joyent and xenserver so they can be required individually. thanks Lance Ivy
167
+ restore ability to load fog from source without bundler. thanks Lance Ivy
168
+ fix bug where servers.all was ignoring filters due to hash merging in the wrong direction. thanks Mick Pollard
169
+ Fix S3 directory location infinite loop. thanks Nils Landt
170
+ Update changelog and bump version. thanks Rupak Ganguly
171
+ Fix names of the container sync attributes. thanks Rupak Ganguly
172
+ Add Object Storage container sync feature. thanks Rupak Ganguly
173
+ Update changelog and bump version. thanks Rupak Ganguly
174
+ supported OpenStack Quantum Router Operation. not include mock code. thanks Tomokazu Hirai
175
+ added mock code for router operation. thanks Tomokazu Hirai
176
+ fixed responce data from mock and removed vanilla options reject code. thanks Tomokazu Hirai
177
+ @rubiojr wrote mock code for openstack routers. thanks Tomokazu Hirai
178
+ @rubiojr fixed mock test failure. thanks Tomokazu Hirai
179
+ @rubiojr fixed mock faulure for router(s)_tests.rb. thanks Tomokazu Hirai
180
+ fix for AWS error message parsing. thanks VirtualStaticVoid
181
+ Added Content-Disposition attribute for Rackspace file. thanks Yauheni Kryudziuk
182
+ Changed GoogleAccessKeyId to GoogleAccessId. thanks althras
183
+ Add Vcloud support back to Fog::Compute. thanks dJason
184
+ add Rupak Ganguly to MVP exclusion list. thanks geemus
185
+ container sync attributes. thanks howete
186
+
187
+ [openstack]
188
+ added changelog. thanks Sergio Rubio
189
+
190
+ [openstack|compute]
191
+ Allow booting a VM with NICs (net_id, port_id, fixed_ip). thanks Ferran Rodenas
192
+ Use attribute accessor for nics. thanks Ferran Rodenas
193
+
194
+ [openstack|glance]
195
+ Added image service example. thanks Sergio Rubio
196
+
197
+ [openstack|identity]
198
+ moved identity example to the examples directory. thanks Sergio Rubio
199
+
200
+ [openstack|image]
201
+ Check for glance version (fog only supports v1). thanks Ferran Rodenas
202
+
203
+ [openstack|network]
204
+ Add endpoint_type option. thanks Ferran Rodenas
205
+ create_network provider extensions. thanks Sergio Rubio
206
+ Added missing router model/collection. thanks Sergio Rubio
207
+ update_router request updates. thanks Sergio Rubio
208
+ router model updates. thanks Sergio Rubio
209
+ create_router request updates. thanks Sergio Rubio
210
+ Added missing router related tests. thanks Sergio Rubio
211
+ create_network provider extensions reworked. thanks Sergio Rubio
212
+ remove extra trailing comma. thanks Sergio Rubio
213
+ remove superfluous Router model attributes. thanks Sergio Rubio
214
+ Fix #connection deprecation replacing it with #service. thanks Sergio Rubio
215
+ mock fixes in some OpenStack Network requests. thanks Sergio Rubio
216
+ added network/subnet/router related example. thanks Sergio Rubio
217
+
218
+ [openstack|storage]
219
+ Added support to impersonate other accounts. thanks Sergio Rubio
220
+ added missing mocks. thanks Sergio Rubio
221
+ Added storage example to set the account quota. thanks Sergio Rubio
222
+
223
+ [rackspace]
224
+ updated storage to support custom endpoints when using auth 2.0. thanks Kyle Rames
225
+ extracted auth 2.0 into module; updated cdn to support an external endpoint. thanks Kyle Rames
226
+ updated service_catalog.reload; added rackspace_cdn_url as an option to storage service; tweaked compute_v2 auth. thanks Kyle Rames
227
+ renaming variables in the interest of clarification. thanks Kyle Rames
228
+ updated to use v1 authentication if rackspace_auth_url endpoint is specified without version as with the current implementation of knife-rackspace. thanks Kyle Rames
229
+ initial checkin for the Getting started with Cloud Files document. thanks Kyle Rames
230
+ SPIKE: converting authentication module to super class. thanks Kyle Rames
231
+ updated to pass string rather and a uri to Fog::Connection. thanks Kyle Rames
232
+ created auth_token method in service that will return a token defined in the @auth_token variable to the identity service to reduce the chance that token might not be set; improved token tests. thanks Kyle Rames
233
+ made some methods private per @brianhartsock. thanks Kyle Rames
234
+ adding deprecation warning for auth v1.0/v1.1 authentication endpoints. thanks Kyle Rames
235
+ fixing yard warnings. thanks Kyle Rames
236
+ adding auth endpoint constants in Fog::Rackspace. thanks Kyle Rames
237
+ additional getting started document edits. thanks Kyle Rames
238
+ minor document update. thanks Kyle Rames
239
+ fixing constant already defined error for Fog::Rackspace::UK_AUTH_ENDPOINT and Fog::Rackspace::US_AUTH_ENDPOINT. thanks Kyle Rames
240
+ adding auth 2.0 to compute, databases, dns, load balancers, cloud block storage. thanks Kyle Rames
241
+ updated service endpoint handling; improved service endpoint tests. thanks Kyle Rames
242
+ moving require 'fog/rackspace/service' to fog/rackspace. thanks Kyle Rames
243
+ fixing auth 20 issue where tenant id is not being appended to the service url. thanks Kyle Rames
244
+ adjusting white space on documents. Added examples, additional resources, and support section to cloud files doc. thanks Kyle Rames
245
+ updated to normalize endpoints before detecting a standard endpoint. thanks Kyle Rames
246
+ making document edits. thanks Kyle Rames
247
+ fixing code error in documentation. thanks Kyle Rames
248
+ miscellaneous document tweaks. thanks Kyle Rames
249
+ added exception info to rackspace api documentation. thanks Kyle Rames
250
+ adding stragler. thanks Kyle Rames
251
+ fixing typo in api docs. thanks Kyle Rames
252
+ updated getting_started.md to use source 'https://rubygems.org' rather than :rubygems. thanks Kyle Rames
253
+ tweaking getting started page. thanks Kyle Rames
254
+ adding note about credentials in the getting started document. thanks Kyle Rames
255
+ adding note about credentials in the getting started document. thanks Kyle Rames
256
+ updated examples to use Chicago data center; updated error message to indicate we were using the Chicago data center. thanks Kyle Rames
257
+ revising getting started page. thanks Kyle Rames
258
+
259
+ [rackspace|block_storage]
260
+ initial document checkin. thanks Kyle Rames
261
+ edits to cloud block storage documentation. thanks Kyle Rames
262
+ adding link on getting_started.md to cloud block storage doc. thanks Kyle Rames
263
+ additional edits to the cloud block storage documentation. thanks Kyle Rames
264
+ initial checkin of block storage api documentation. thanks Kyle Rames
265
+ adding response documentaion. thanks Kyle Rames
266
+ updated yard docs for requests. thanks Kyle Rames
267
+
268
+ [rackspace|blockstorage]
269
+ adding Cloud Block Storage Examples. thanks Kyle Rames
270
+
271
+ [rackspace|cdn]
272
+ updated cdn to use auth 2.0. thanks Kyle Rames
273
+
274
+ [rackspace|compute_v2]
275
+ updated compute_v2 to use auth 2.0 endpoints. thanks Kyle Rames
276
+ updated to support auth 2.0. thanks Kyle Rames
277
+ fixing broken test. thanks Kyle Rames
278
+ added authentication_method test specifically for chef's default. thanks Kyle Rames
279
+ fixing yard doc. thanks Kyle Rames
280
+ updated compute_v2 to get the appropriate endpoint from the service catalog when an endpoint is specified via :rackspace_endpoint with one of the known constants (DFW_ENDPOINT, ORD_ENDPOINT, LON_ENDPOINT); updated compute examples to use rackspace region. thanks Kyle Rames
281
+ fixed chef issue. thanks Kyle Rames
282
+ updated detach volume to use :rackspace_region to specify region. thanks Kyle Rames
283
+ added specific exception for invalid states in order to make it easier to rescue. thanks Kyle Rames
284
+ added bootstrap and ssh section to compute documentation. thanks Kyle Rames
285
+ updated the bootstrap section of the compute_v2 documentation. thanks Kyle Rames
286
+
287
+ [rackspace|identity]
288
+ updated test to support ruby 1.8.7. thanks Kyle Rames
289
+
290
+ [rackspace|storage]
291
+ initial cloud file examples checkin. thanks Kyle Rames
292
+ fixing typos. thanks Kyle Rames
293
+ renaming examples. thanks Kyle Rames
294
+ updating to use 2.0 authentication endpoints. thanks Kyle Rames
295
+ fixing broken tests. thanks Kyle Rames
296
+ fixing example spacing. thanks Kyle Rames
297
+ adding rackspace storage docs; general edits on other rackspace documents. thanks Kyle Rames
298
+ adding Storage yard docs. thanks Kyle Rames
299
+ updating the download file section. thanks Kyle Rames
300
+ updating download example to use a block. thanks Kyle Rames
301
+ updating auth endpoints in documentation. thanks Kyle Rames
302
+ fixing typos. thanks Kyle Rames
303
+
304
+ [xenserver|compute]
305
+ added create_vlan request. thanks Sergio Rubio
306
+ added destroy_vlan request. thanks Sergio Rubio
307
+ added create_vlan request tests. thanks Sergio Rubio
308
+ added destroy_vlan request tests. thanks Sergio Rubio
309
+ added create_network request. thanks Sergio Rubio
310
+ added create_network tests. thanks Sergio Rubio
311
+ added destroy_network request. thanks Sergio Rubio
312
+ added destroy_network request tests. thanks Sergio Rubio
313
+ added VLAN model and tests. thanks Sergio Rubio
314
+ Added Vlans collection and tests. thanks Sergio Rubio
315
+ added save and destroy operations to Network. thanks Sergio Rubio
316
+ updated compute service to add new model, requests. thanks Sergio Rubio
317
+ Added Network/VLANs creation example. thanks Sergio Rubio
318
+ update changelog. thanks Sergio Rubio
319
+
320
+
1
321
  1.10.0 03/05/2013 2f30de2ab357a5bbdb505b94ada8aa637ba936f5
2
322
  ==========================================================
3
323
 
@@ -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.10.0'
10
- s.date = '2013-03-05'
9
+ s.version = '1.10.1'
10
+ s.date = '2013-04-04'
11
11
  s.rubyforge_project = 'fog'
12
12
 
13
13
  ## Make sure your summary is short. The description may be as long
@@ -41,7 +41,7 @@ Gem::Specification.new do |s|
41
41
  ## List your runtime dependencies here. Runtime dependencies are those
42
42
  ## that are needed for an end user to actually USE your code.
43
43
  s.add_dependency('builder')
44
- s.add_dependency('excon', '~>0.14')
44
+ s.add_dependency('excon', '~>0.20')
45
45
  s.add_dependency('formatador', '~>0.2.0')
46
46
  s.add_dependency('multi_json', '~>1.0')
47
47
  s.add_dependency('mime-types')
data/lib/fog.rb CHANGED
@@ -1,17 +1,44 @@
1
- require File.join(File.dirname(__FILE__), 'fog', 'core')
1
+ # necessary when requiring fog without rubygems while also
2
+ # maintaining ruby 1.8.7 support (can't use require_relative)
3
+ __LIB_DIR__ = File.expand_path(File.dirname(__FILE__))
4
+ $LOAD_PATH.unshift __LIB_DIR__ unless $LOAD_PATH.include?(__LIB_DIR__)
2
5
 
3
- module Fog
4
- end
5
-
6
- # FIXME: these should go away (force usage of Fog::[Compute, CDN, DNS, Storage] etc)
7
- require 'fog/providers'
6
+ # any one of these can be required separately.
7
+ # they all depend on fog/core for shared functionality.
8
+ require 'fog/atmos'
9
+ require 'fog/aws'
10
+ require 'fog/bluebox'
11
+ require 'fog/brightbox'
12
+ require 'fog/cloudstack'
13
+ require 'fog/clodo'
14
+ require 'fog/digitalocean'
15
+ require 'fog/dnsimple'
16
+ require 'fog/dnsmadeeasy'
17
+ require 'fog/dreamhost'
18
+ require 'fog/dynect'
19
+ require 'fog/ecloud'
20
+ require 'fog/glesys'
21
+ require 'fog/go_grid'
22
+ require 'fog/google'
23
+ require 'fog/hp'
24
+ require 'fog/ibm'
25
+ require 'fog/internet_archive'
26
+ require 'fog/joyent'
27
+ require 'fog/libvirt'
28
+ require 'fog/linode'
29
+ require 'fog/local'
30
+ require 'fog/bare_metal_cloud'
31
+ require 'fog/ninefold'
32
+ require 'fog/rackspace'
33
+ require 'fog/riakcs'
34
+ require 'fog/openstack'
35
+ require 'fog/ovirt'
36
+ require 'fog/serverlove'
37
+ require 'fog/storm_on_demand'
8
38
  require 'fog/terremark'
9
-
10
- require 'fog/compute'
11
- require 'fog/identity'
12
- require 'fog/image'
13
- require 'fog/volume'
14
- require 'fog/cdn'
15
- require 'fog/dns'
16
- require 'fog/network'
17
- require 'fog/storage'
39
+ require 'fog/vcloud'
40
+ require 'fog/vmfusion'
41
+ require 'fog/vsphere'
42
+ require 'fog/voxel'
43
+ require 'fog/xenserver'
44
+ require 'fog/zerigo'
@@ -151,7 +151,7 @@ module Fog
151
151
  :parser => parser
152
152
  })
153
153
  rescue Excon::Errors::HTTPStatusError => error
154
- if match = error.message.match(/<Code>(.*)<\/Code>.*<Message>(.*)<\/Message>/)
154
+ if match = error.message.match(/(?:.*<Code>(.*)<\/Code>)(?:.*<Message>(.*)<\/Message>)/m)
155
155
  case match[1]
156
156
  when 'AlreadyExists'
157
157
  #raise Fog::AWS::AutoScaling::IdentifierTaken.new(match[2])
@@ -131,7 +131,7 @@ module Fog
131
131
  :parser => parser
132
132
  })
133
133
  rescue Excon::Errors::HTTPStatusError => error
134
- if match = error.response.body.match(/<Code>(.*)<\/Code>[ \t\n]*<Message>(.*)<\/Message>/)
134
+ if match = error.message.match(/(?:.*<Code>(.*)<\/Code>)(?:.*<Message>(.*)<\/Message>)/m)
135
135
  raise case match[1].split('.').last
136
136
  when 'InvalidParameterValue'
137
137
  Fog::AWS::ElasticBeanstalk::InvalidParameterError.slurp(error, match[2])