fog 0.8.2 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (913) hide show
  1. data/README.rdoc +6 -6
  2. data/Rakefile +58 -21
  3. data/bin/fog +6 -0
  4. data/changelog.txt +107 -0
  5. data/docs/about/getting_started.markdown +4 -4
  6. data/docs/about/press.markdown +7 -0
  7. data/docs/about/structure.markdown +3 -3
  8. data/docs/compute/index.markdown +5 -5
  9. data/docs/dns/index.markdown +3 -3
  10. data/docs/index.markdown +3 -3
  11. data/docs/storage/index.markdown +10 -10
  12. data/examples/compute_tests.rb +71 -0
  13. data/examples/dns_tests.rb +4 -4
  14. data/examples/storage_tests.rb +1 -1
  15. data/fog.gemspec +4 -3
  16. data/lib/fog.rb +1 -1
  17. data/lib/fog/aws/cloud_formation.rb +1 -1
  18. data/lib/fog/aws/elb.rb +3 -3
  19. data/lib/fog/aws/iam.rb +1 -1
  20. data/lib/fog/aws/models/elb/load_balancer.rb +3 -2
  21. data/lib/fog/aws/models/rds/security_group.rb +0 -2
  22. data/lib/fog/aws/models/rds/server.rb +2 -2
  23. data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +5 -2
  24. data/lib/fog/aws/rds.rb +1 -1
  25. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +1 -1
  26. data/lib/fog/aws/requests/elb/create_load_balancer.rb +5 -5
  27. data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +4 -4
  28. data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +1 -1
  29. data/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb +1 -1
  30. data/lib/fog/aws/requests/elb/describe_instance_health.rb +1 -1
  31. data/lib/fog/aws/requests/elb/describe_load_balancers.rb +16 -11
  32. data/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb +1 -1
  33. data/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb +1 -1
  34. data/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb +1 -1
  35. data/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb +1 -1
  36. data/lib/fog/aws/requests/rds/create_db_instance.rb +1 -1
  37. data/lib/fog/aws/requests/rds/modify_db_instance.rb +1 -1
  38. data/lib/fog/aws/requests/rds/modify_db_parameter_group.rb +3 -3
  39. data/lib/fog/aws/requests/ses/send_email.rb +2 -2
  40. data/lib/fog/aws/requests/ses/send_raw_email.rb +1 -1
  41. data/lib/fog/aws/requests/simpledb/delete_attributes.rb +14 -4
  42. data/lib/fog/aws/simpledb.rb +3 -3
  43. data/lib/fog/bin.rb +2 -0
  44. data/lib/fog/bin/aws.rb +8 -4
  45. data/lib/fog/bin/bluebox.rb +4 -2
  46. data/lib/fog/bin/brightbox.rb +2 -1
  47. data/lib/fog/bin/dnsimple.rb +7 -6
  48. data/lib/fog/bin/dnsmadeeasy.rb +31 -0
  49. data/lib/fog/bin/ecloud.rb +2 -1
  50. data/lib/fog/bin/go_grid.rb +2 -1
  51. data/lib/fog/bin/google.rb +2 -1
  52. data/lib/fog/bin/linode.rb +4 -2
  53. data/lib/fog/bin/local.rb +2 -1
  54. data/lib/fog/bin/new_servers.rb +2 -1
  55. data/lib/fog/bin/ninefold.rb +31 -0
  56. data/lib/fog/bin/rackspace.rb +6 -3
  57. data/lib/fog/bin/slicehost.rb +4 -2
  58. data/lib/fog/bin/stormondemand.rb +2 -1
  59. data/lib/fog/bin/virtual_box.rb +2 -1
  60. data/lib/fog/bin/voxel.rb +2 -1
  61. data/lib/fog/bin/zerigo.rb +2 -1
  62. data/lib/fog/cdn.rb +10 -6
  63. data/lib/fog/cdn/aws.rb +2 -17
  64. data/lib/fog/cdn/parsers/aws/distribution.rb +2 -2
  65. data/lib/fog/cdn/parsers/aws/get_distribution_list.rb +2 -2
  66. data/lib/fog/cdn/parsers/aws/post_invalidation.rb +2 -2
  67. data/lib/fog/cdn/rackspace.rb +2 -17
  68. data/lib/fog/cdn/requests/aws/delete_distribution.rb +2 -2
  69. data/lib/fog/cdn/requests/aws/get_distribution.rb +3 -3
  70. data/lib/fog/cdn/requests/aws/get_distribution_list.rb +3 -3
  71. data/lib/fog/cdn/requests/aws/post_distribution.rb +3 -3
  72. data/lib/fog/cdn/requests/aws/post_invalidation.rb +3 -3
  73. data/lib/fog/cdn/requests/aws/put_distribution_config.rb +3 -3
  74. data/lib/fog/cdn/requests/rackspace/get_containers.rb +2 -2
  75. data/lib/fog/cdn/requests/rackspace/head_container.rb +2 -2
  76. data/lib/fog/cdn/requests/rackspace/post_container.rb +2 -2
  77. data/lib/fog/cdn/requests/rackspace/put_container.rb +2 -2
  78. data/lib/fog/compute.rb +44 -26
  79. data/lib/fog/compute/aws.rb +5 -20
  80. data/lib/fog/compute/bluebox.rb +3 -18
  81. data/lib/fog/compute/brightbox.rb +3 -18
  82. data/lib/fog/compute/ecloud.rb +4 -5
  83. data/lib/fog/compute/go_grid.rb +3 -18
  84. data/lib/fog/compute/linode.rb +4 -19
  85. data/lib/fog/compute/models/aws/address.rb +2 -2
  86. data/lib/fog/compute/models/aws/addresses.rb +3 -3
  87. data/lib/fog/compute/models/aws/flavor.rb +2 -2
  88. data/lib/fog/compute/models/aws/flavors.rb +4 -4
  89. data/lib/fog/compute/models/aws/image.rb +2 -2
  90. data/lib/fog/compute/models/aws/images.rb +3 -3
  91. data/lib/fog/compute/models/aws/key_pair.rb +2 -3
  92. data/lib/fog/compute/models/aws/key_pairs.rb +3 -3
  93. data/lib/fog/compute/models/aws/security_group.rb +2 -2
  94. data/lib/fog/compute/models/aws/security_groups.rb +3 -3
  95. data/lib/fog/compute/models/aws/server.rb +18 -15
  96. data/lib/fog/compute/models/aws/servers.rb +3 -3
  97. data/lib/fog/compute/models/aws/snapshot.rb +2 -2
  98. data/lib/fog/compute/models/aws/snapshots.rb +3 -3
  99. data/lib/fog/compute/models/aws/tag.rb +2 -4
  100. data/lib/fog/compute/models/aws/tags.rb +3 -3
  101. data/lib/fog/compute/models/aws/volume.rb +2 -2
  102. data/lib/fog/compute/models/aws/volumes.rb +3 -3
  103. data/lib/fog/compute/models/bluebox/flavor.rb +2 -2
  104. data/lib/fog/compute/models/bluebox/flavors.rb +4 -4
  105. data/lib/fog/compute/models/bluebox/image.rb +2 -2
  106. data/lib/fog/compute/models/bluebox/images.rb +4 -4
  107. data/lib/fog/compute/models/bluebox/server.rb +6 -6
  108. data/lib/fog/compute/models/bluebox/servers.rb +4 -4
  109. data/lib/fog/compute/models/brightbox/account.rb +2 -2
  110. data/lib/fog/compute/models/brightbox/cloud_ip.rb +2 -2
  111. data/lib/fog/compute/models/brightbox/cloud_ips.rb +3 -3
  112. data/lib/fog/compute/models/brightbox/flavor.rb +2 -2
  113. data/lib/fog/compute/models/brightbox/flavors.rb +3 -3
  114. data/lib/fog/compute/models/brightbox/image.rb +3 -2
  115. data/lib/fog/compute/models/brightbox/images.rb +3 -3
  116. data/lib/fog/compute/models/brightbox/load_balancer.rb +2 -2
  117. data/lib/fog/compute/models/brightbox/load_balancers.rb +3 -3
  118. data/lib/fog/compute/models/brightbox/server.rb +2 -2
  119. data/lib/fog/compute/models/brightbox/servers.rb +3 -3
  120. data/lib/fog/compute/models/brightbox/user.rb +2 -2
  121. data/lib/fog/compute/models/brightbox/users.rb +3 -3
  122. data/lib/fog/compute/models/brightbox/zone.rb +2 -2
  123. data/lib/fog/compute/models/brightbox/zones.rb +3 -3
  124. data/lib/fog/compute/models/ecloud/backup_internet_service.rb +3 -3
  125. data/lib/fog/compute/models/ecloud/backup_internet_services.rb +3 -3
  126. data/lib/fog/compute/models/ecloud/catalog.rb +3 -3
  127. data/lib/fog/compute/models/ecloud/catalog_item.rb +2 -2
  128. data/lib/fog/compute/models/ecloud/firewall_acl.rb +2 -2
  129. data/lib/fog/compute/models/ecloud/firewall_acls.rb +3 -3
  130. data/lib/fog/compute/models/ecloud/internet_service.rb +3 -3
  131. data/lib/fog/compute/models/ecloud/internet_services.rb +3 -3
  132. data/lib/fog/compute/models/ecloud/ip.rb +2 -2
  133. data/lib/fog/compute/models/ecloud/ips.rb +3 -3
  134. data/lib/fog/compute/models/ecloud/network.rb +7 -4
  135. data/lib/fog/compute/models/ecloud/networks.rb +3 -3
  136. data/lib/fog/compute/models/ecloud/node.rb +2 -2
  137. data/lib/fog/compute/models/ecloud/nodes.rb +3 -3
  138. data/lib/fog/compute/models/ecloud/public_ip.rb +3 -3
  139. data/lib/fog/compute/models/ecloud/public_ips.rb +3 -3
  140. data/lib/fog/compute/models/ecloud/server.rb +2 -2
  141. data/lib/fog/compute/models/ecloud/servers.rb +3 -3
  142. data/lib/fog/compute/models/ecloud/task.rb +2 -2
  143. data/lib/fog/compute/models/ecloud/tasks.rb +3 -3
  144. data/lib/fog/compute/models/ecloud/vdc.rb +9 -9
  145. data/lib/fog/compute/models/ecloud/vdcs.rb +3 -3
  146. data/lib/fog/compute/models/go_grid/image.rb +2 -2
  147. data/lib/fog/compute/models/go_grid/images.rb +4 -4
  148. data/lib/fog/compute/models/go_grid/password.rb +2 -2
  149. data/lib/fog/compute/models/go_grid/passwords.rb +4 -4
  150. data/lib/fog/compute/models/go_grid/server.rb +14 -14
  151. data/lib/fog/compute/models/go_grid/servers.rb +5 -4
  152. data/lib/fog/compute/models/linode/data_center.rb +2 -2
  153. data/lib/fog/compute/models/linode/data_centers.rb +3 -3
  154. data/lib/fog/compute/models/linode/disk.rb +2 -2
  155. data/lib/fog/compute/models/linode/disks.rb +3 -3
  156. data/lib/fog/compute/models/linode/flavor.rb +2 -2
  157. data/lib/fog/compute/models/linode/flavors.rb +3 -3
  158. data/lib/fog/compute/models/linode/image.rb +2 -2
  159. data/lib/fog/compute/models/linode/images.rb +4 -4
  160. data/lib/fog/compute/models/linode/ip.rb +2 -2
  161. data/lib/fog/compute/models/linode/ips.rb +4 -4
  162. data/lib/fog/compute/models/linode/kernel.rb +2 -2
  163. data/lib/fog/compute/models/linode/kernels.rb +4 -4
  164. data/lib/fog/compute/models/linode/server.rb +4 -4
  165. data/lib/fog/compute/models/linode/servers.rb +4 -4
  166. data/lib/fog/compute/models/linode/stack_script.rb +2 -2
  167. data/lib/fog/compute/models/linode/stack_scripts.rb +4 -4
  168. data/lib/fog/compute/models/ninefold/address.rb +103 -0
  169. data/lib/fog/compute/models/ninefold/addresses.rb +31 -0
  170. data/lib/fog/compute/models/ninefold/flavor.rb +29 -0
  171. data/lib/fog/compute/models/ninefold/flavors.rb +30 -0
  172. data/lib/fog/compute/models/ninefold/image.rb +42 -0
  173. data/lib/fog/compute/models/ninefold/images.rb +30 -0
  174. data/lib/fog/compute/models/ninefold/ip_forwarding_rule.rb +79 -0
  175. data/lib/fog/compute/models/ninefold/ip_forwarding_rules.rb +31 -0
  176. data/lib/fog/compute/models/ninefold/server.rb +180 -0
  177. data/lib/fog/compute/models/ninefold/servers.rb +31 -0
  178. data/lib/fog/compute/models/rackspace/flavor.rb +2 -2
  179. data/lib/fog/compute/models/rackspace/flavors.rb +4 -4
  180. data/lib/fog/compute/models/rackspace/image.rb +2 -2
  181. data/lib/fog/compute/models/rackspace/images.rb +4 -4
  182. data/lib/fog/compute/models/rackspace/server.rb +6 -6
  183. data/lib/fog/compute/models/rackspace/servers.rb +4 -4
  184. data/lib/fog/compute/models/slicehost/flavor.rb +2 -2
  185. data/lib/fog/compute/models/slicehost/flavors.rb +3 -3
  186. data/lib/fog/compute/models/slicehost/image.rb +2 -2
  187. data/lib/fog/compute/models/slicehost/images.rb +3 -3
  188. data/lib/fog/compute/models/slicehost/server.rb +6 -6
  189. data/lib/fog/compute/models/slicehost/servers.rb +3 -3
  190. data/lib/fog/compute/models/storm_on_demand/balancer.rb +2 -2
  191. data/lib/fog/compute/models/storm_on_demand/balancers.rb +3 -3
  192. data/lib/fog/compute/models/storm_on_demand/config.rb +2 -2
  193. data/lib/fog/compute/models/storm_on_demand/configs.rb +3 -3
  194. data/lib/fog/compute/models/storm_on_demand/image.rb +2 -2
  195. data/lib/fog/compute/models/storm_on_demand/images.rb +3 -3
  196. data/lib/fog/compute/models/storm_on_demand/private_ip.rb +2 -2
  197. data/lib/fog/compute/models/storm_on_demand/private_ips.rb +3 -3
  198. data/lib/fog/compute/models/storm_on_demand/server.rb +2 -2
  199. data/lib/fog/compute/models/storm_on_demand/servers.rb +3 -3
  200. data/lib/fog/compute/models/storm_on_demand/stat.rb +2 -2
  201. data/lib/fog/compute/models/storm_on_demand/stats.rb +3 -3
  202. data/lib/fog/compute/models/storm_on_demand/template.rb +2 -2
  203. data/lib/fog/compute/models/storm_on_demand/templates.rb +3 -3
  204. data/lib/fog/compute/models/virtual_box/medium.rb +3 -3
  205. data/lib/fog/compute/models/virtual_box/medium_format.rb +2 -2
  206. data/lib/fog/compute/models/virtual_box/mediums.rb +3 -3
  207. data/lib/fog/compute/models/virtual_box/nat_engine.rb +3 -3
  208. data/lib/fog/compute/models/virtual_box/nat_redirect.rb +2 -2
  209. data/lib/fog/compute/models/virtual_box/nat_redirects.rb +3 -3
  210. data/lib/fog/compute/models/virtual_box/network_adapter.rb +3 -3
  211. data/lib/fog/compute/models/virtual_box/network_adapters.rb +3 -3
  212. data/lib/fog/compute/models/virtual_box/server.rb +8 -8
  213. data/lib/fog/compute/models/virtual_box/servers.rb +3 -3
  214. data/lib/fog/compute/models/virtual_box/storage_controller.rb +2 -2
  215. data/lib/fog/compute/models/virtual_box/storage_controllers.rb +3 -3
  216. data/lib/fog/compute/models/voxel/image.rb +2 -2
  217. data/lib/fog/compute/models/voxel/images.rb +3 -3
  218. data/lib/fog/compute/models/voxel/server.rb +2 -2
  219. data/lib/fog/compute/models/voxel/servers.rb +3 -3
  220. data/lib/fog/compute/new_servers.rb +3 -18
  221. data/lib/fog/compute/ninefold.rb +139 -0
  222. data/lib/fog/compute/parsers/aws/allocate_address.rb +2 -2
  223. data/lib/fog/compute/parsers/aws/attach_volume.rb +2 -2
  224. data/lib/fog/compute/parsers/aws/basic.rb +2 -2
  225. data/lib/fog/compute/parsers/aws/create_image.rb +2 -2
  226. data/lib/fog/compute/parsers/aws/create_key_pair.rb +2 -2
  227. data/lib/fog/compute/parsers/aws/create_snapshot.rb +2 -2
  228. data/lib/fog/compute/parsers/aws/create_volume.rb +2 -2
  229. data/lib/fog/compute/parsers/aws/deregister_image.rb +2 -2
  230. data/lib/fog/compute/parsers/aws/describe_addresses.rb +2 -2
  231. data/lib/fog/compute/parsers/aws/describe_availability_zones.rb +2 -2
  232. data/lib/fog/compute/parsers/aws/describe_images.rb +2 -2
  233. data/lib/fog/compute/parsers/aws/describe_instances.rb +20 -54
  234. data/lib/fog/compute/parsers/aws/describe_key_pairs.rb +2 -2
  235. data/lib/fog/compute/parsers/aws/describe_regions.rb +2 -2
  236. data/lib/fog/compute/parsers/aws/describe_reserved_instances.rb +2 -2
  237. data/lib/fog/compute/parsers/aws/describe_reserved_instances_offerings.rb +2 -2
  238. data/lib/fog/compute/parsers/aws/describe_security_groups.rb +2 -2
  239. data/lib/fog/compute/parsers/aws/describe_snapshots.rb +2 -2
  240. data/lib/fog/compute/parsers/aws/describe_tags.rb +2 -2
  241. data/lib/fog/compute/parsers/aws/describe_volumes.rb +2 -2
  242. data/lib/fog/compute/parsers/aws/detach_volume.rb +2 -2
  243. data/lib/fog/compute/parsers/aws/get_console_output.rb +2 -2
  244. data/lib/fog/compute/parsers/aws/get_password_data.rb +2 -2
  245. data/lib/fog/compute/parsers/aws/import_key_pair.rb +2 -2
  246. data/lib/fog/compute/parsers/aws/monitor_unmonitor_instances.rb +2 -2
  247. data/lib/fog/compute/parsers/aws/register_image.rb +2 -2
  248. data/lib/fog/compute/parsers/aws/run_instances.rb +2 -2
  249. data/lib/fog/compute/parsers/aws/start_stop_instances.rb +2 -2
  250. data/lib/fog/compute/parsers/aws/terminate_instances.rb +2 -2
  251. data/lib/fog/compute/parsers/slicehost/create_slice.rb +2 -2
  252. data/lib/fog/compute/parsers/slicehost/get_backups.rb +2 -2
  253. data/lib/fog/compute/parsers/slicehost/get_flavor.rb +2 -2
  254. data/lib/fog/compute/parsers/slicehost/get_flavors.rb +2 -2
  255. data/lib/fog/compute/parsers/slicehost/get_image.rb +2 -2
  256. data/lib/fog/compute/parsers/slicehost/get_images.rb +2 -2
  257. data/lib/fog/compute/parsers/slicehost/get_slice.rb +2 -2
  258. data/lib/fog/compute/parsers/slicehost/get_slices.rb +2 -2
  259. data/lib/fog/compute/parsers/voxel/basic.rb +2 -2
  260. data/lib/fog/compute/parsers/voxel/devices_list.rb +2 -2
  261. data/lib/fog/compute/parsers/voxel/images_list.rb +2 -2
  262. data/lib/fog/compute/parsers/voxel/voxcloud_create.rb +2 -2
  263. data/lib/fog/compute/parsers/voxel/voxcloud_delete.rb +2 -2
  264. data/lib/fog/compute/parsers/voxel/voxcloud_status.rb +2 -2
  265. data/lib/fog/compute/rackspace.rb +21 -26
  266. data/lib/fog/compute/requests/aws/allocate_address.rb +3 -3
  267. data/lib/fog/compute/requests/aws/associate_address.rb +9 -5
  268. data/lib/fog/compute/requests/aws/attach_volume.rb +7 -7
  269. data/lib/fog/compute/requests/aws/authorize_security_group_ingress.rb +4 -4
  270. data/lib/fog/compute/requests/aws/create_image.rb +3 -3
  271. data/lib/fog/compute/requests/aws/create_key_pair.rb +4 -4
  272. data/lib/fog/compute/requests/aws/create_security_group.rb +4 -4
  273. data/lib/fog/compute/requests/aws/create_snapshot.rb +3 -3
  274. data/lib/fog/compute/requests/aws/create_tags.rb +6 -6
  275. data/lib/fog/compute/requests/aws/create_volume.rb +13 -6
  276. data/lib/fog/compute/requests/aws/delete_key_pair.rb +3 -3
  277. data/lib/fog/compute/requests/aws/delete_security_group.rb +4 -4
  278. data/lib/fog/compute/requests/aws/delete_snapshot.rb +4 -4
  279. data/lib/fog/compute/requests/aws/delete_tags.rb +4 -4
  280. data/lib/fog/compute/requests/aws/delete_volume.rb +5 -5
  281. data/lib/fog/compute/requests/aws/deregister_image.rb +4 -4
  282. data/lib/fog/compute/requests/aws/describe_addresses.rb +4 -4
  283. data/lib/fog/compute/requests/aws/describe_availability_zones.rb +4 -4
  284. data/lib/fog/compute/requests/aws/describe_images.rb +4 -4
  285. data/lib/fog/compute/requests/aws/describe_instances.rb +4 -4
  286. data/lib/fog/compute/requests/aws/describe_key_pairs.rb +4 -4
  287. data/lib/fog/compute/requests/aws/describe_regions.rb +4 -4
  288. data/lib/fog/compute/requests/aws/describe_reserved_instances.rb +4 -4
  289. data/lib/fog/compute/requests/aws/describe_reserved_instances_offerings.rb +4 -4
  290. data/lib/fog/compute/requests/aws/describe_security_groups.rb +4 -4
  291. data/lib/fog/compute/requests/aws/describe_snapshots.rb +4 -4
  292. data/lib/fog/compute/requests/aws/describe_tags.rb +4 -4
  293. data/lib/fog/compute/requests/aws/describe_volumes.rb +4 -4
  294. data/lib/fog/compute/requests/aws/detach_volume.rb +4 -4
  295. data/lib/fog/compute/requests/aws/disassociate_address.rb +4 -4
  296. data/lib/fog/compute/requests/aws/get_console_output.rb +5 -5
  297. data/lib/fog/compute/requests/aws/get_password_data.rb +4 -4
  298. data/lib/fog/compute/requests/aws/import_key_pair.rb +4 -4
  299. data/lib/fog/compute/requests/aws/modify_image_attributes.rb +6 -6
  300. data/lib/fog/compute/requests/aws/modify_snapshot_attribute.rb +5 -5
  301. data/lib/fog/compute/requests/aws/monitor_instances.rb +5 -5
  302. data/lib/fog/compute/requests/aws/reboot_instances.rb +5 -5
  303. data/lib/fog/compute/requests/aws/register_image.rb +4 -4
  304. data/lib/fog/compute/requests/aws/release_address.rb +4 -4
  305. data/lib/fog/compute/requests/aws/revoke_security_group_ingress.rb +4 -4
  306. data/lib/fog/compute/requests/aws/run_instances.rb +5 -5
  307. data/lib/fog/compute/requests/aws/start_instances.rb +4 -4
  308. data/lib/fog/compute/requests/aws/stop_instances.rb +4 -4
  309. data/lib/fog/compute/requests/aws/terminate_instances.rb +5 -5
  310. data/lib/fog/compute/requests/aws/unmonitor_instances.rb +5 -5
  311. data/lib/fog/compute/requests/bluebox/create_block.rb +2 -2
  312. data/lib/fog/compute/requests/bluebox/destroy_block.rb +2 -2
  313. data/lib/fog/compute/requests/bluebox/get_block.rb +2 -2
  314. data/lib/fog/compute/requests/bluebox/get_blocks.rb +2 -2
  315. data/lib/fog/compute/requests/bluebox/get_product.rb +2 -2
  316. data/lib/fog/compute/requests/bluebox/get_products.rb +2 -2
  317. data/lib/fog/compute/requests/bluebox/get_template.rb +2 -2
  318. data/lib/fog/compute/requests/bluebox/get_templates.rb +2 -2
  319. data/lib/fog/compute/requests/bluebox/reboot_block.rb +2 -2
  320. data/lib/fog/compute/requests/brightbox/activate_console_server.rb +2 -2
  321. data/lib/fog/compute/requests/brightbox/add_listeners_load_balancer.rb +2 -2
  322. data/lib/fog/compute/requests/brightbox/add_nodes_load_balancer.rb +2 -2
  323. data/lib/fog/compute/requests/brightbox/create_api_client.rb +2 -2
  324. data/lib/fog/compute/requests/brightbox/create_cloud_ip.rb +2 -2
  325. data/lib/fog/compute/requests/brightbox/create_image.rb +2 -2
  326. data/lib/fog/compute/requests/brightbox/create_load_balancer.rb +2 -2
  327. data/lib/fog/compute/requests/brightbox/create_server.rb +2 -2
  328. data/lib/fog/compute/requests/brightbox/destroy_api_client.rb +2 -2
  329. data/lib/fog/compute/requests/brightbox/destroy_cloud_ip.rb +2 -2
  330. data/lib/fog/compute/requests/brightbox/destroy_image.rb +2 -2
  331. data/lib/fog/compute/requests/brightbox/destroy_load_balancer.rb +2 -2
  332. data/lib/fog/compute/requests/brightbox/destroy_server.rb +2 -2
  333. data/lib/fog/compute/requests/brightbox/get_account.rb +2 -2
  334. data/lib/fog/compute/requests/brightbox/get_api_client.rb +2 -2
  335. data/lib/fog/compute/requests/brightbox/get_cloud_ip.rb +2 -2
  336. data/lib/fog/compute/requests/brightbox/get_image.rb +2 -2
  337. data/lib/fog/compute/requests/brightbox/get_interface.rb +2 -2
  338. data/lib/fog/compute/requests/brightbox/get_load_balancer.rb +2 -2
  339. data/lib/fog/compute/requests/brightbox/get_server.rb +2 -2
  340. data/lib/fog/compute/requests/brightbox/get_server_type.rb +2 -2
  341. data/lib/fog/compute/requests/brightbox/get_user.rb +2 -2
  342. data/lib/fog/compute/requests/brightbox/get_zone.rb +2 -2
  343. data/lib/fog/compute/requests/brightbox/list_api_clients.rb +2 -2
  344. data/lib/fog/compute/requests/brightbox/list_cloud_ips.rb +2 -2
  345. data/lib/fog/compute/requests/brightbox/list_images.rb +2 -2
  346. data/lib/fog/compute/requests/brightbox/list_load_balancers.rb +2 -2
  347. data/lib/fog/compute/requests/brightbox/list_server_types.rb +2 -2
  348. data/lib/fog/compute/requests/brightbox/list_servers.rb +2 -2
  349. data/lib/fog/compute/requests/brightbox/list_users.rb +2 -2
  350. data/lib/fog/compute/requests/brightbox/list_zones.rb +2 -2
  351. data/lib/fog/compute/requests/brightbox/map_cloud_ip.rb +2 -2
  352. data/lib/fog/compute/requests/brightbox/remove_listeners_load_balancer.rb +2 -2
  353. data/lib/fog/compute/requests/brightbox/remove_nodes_load_balancer.rb +2 -2
  354. data/lib/fog/compute/requests/brightbox/reset_ftp_password_account.rb +2 -2
  355. data/lib/fog/compute/requests/brightbox/resize_server.rb +2 -2
  356. data/lib/fog/compute/requests/brightbox/shutdown_server.rb +2 -2
  357. data/lib/fog/compute/requests/brightbox/snapshot_server.rb +2 -2
  358. data/lib/fog/compute/requests/brightbox/start_server.rb +2 -2
  359. data/lib/fog/compute/requests/brightbox/stop_server.rb +2 -2
  360. data/lib/fog/compute/requests/brightbox/unmap_cloud_ip.rb +2 -2
  361. data/lib/fog/compute/requests/brightbox/update_account.rb +2 -2
  362. data/lib/fog/compute/requests/brightbox/update_api_client.rb +2 -2
  363. data/lib/fog/compute/requests/brightbox/update_image.rb +2 -2
  364. data/lib/fog/compute/requests/brightbox/update_load_balancer.rb +2 -2
  365. data/lib/fog/compute/requests/brightbox/update_server.rb +2 -2
  366. data/lib/fog/compute/requests/brightbox/update_user.rb +2 -2
  367. data/lib/fog/compute/requests/ecloud/add_backup_internet_service.rb +2 -2
  368. data/lib/fog/compute/requests/ecloud/add_internet_service.rb +2 -2
  369. data/lib/fog/compute/requests/ecloud/add_node.rb +2 -2
  370. data/lib/fog/compute/requests/ecloud/clone_vapp.rb +2 -2
  371. data/lib/fog/compute/requests/ecloud/configure_internet_service.rb +2 -2
  372. data/lib/fog/compute/requests/ecloud/configure_network.rb +2 -2
  373. data/lib/fog/compute/requests/ecloud/configure_network_ip.rb +2 -2
  374. data/lib/fog/compute/requests/ecloud/configure_node.rb +2 -2
  375. data/lib/fog/compute/requests/ecloud/configure_vapp.rb +2 -2
  376. data/lib/fog/compute/requests/ecloud/delete_internet_service.rb +2 -2
  377. data/lib/fog/compute/requests/ecloud/delete_node.rb +2 -2
  378. data/lib/fog/compute/requests/ecloud/delete_vapp.rb +2 -2
  379. data/lib/fog/compute/requests/ecloud/get_catalog.rb +2 -2
  380. data/lib/fog/compute/requests/ecloud/get_catalog_item.rb +2 -2
  381. data/lib/fog/compute/requests/ecloud/get_customization_options.rb +2 -2
  382. data/lib/fog/compute/requests/ecloud/get_firewall_acl.rb +2 -2
  383. data/lib/fog/compute/requests/ecloud/get_firewall_acls.rb +2 -2
  384. data/lib/fog/compute/requests/ecloud/get_internet_services.rb +5 -5
  385. data/lib/fog/compute/requests/ecloud/get_network.rb +2 -2
  386. data/lib/fog/compute/requests/ecloud/get_network_extensions.rb +2 -2
  387. data/lib/fog/compute/requests/ecloud/get_network_ip.rb +2 -2
  388. data/lib/fog/compute/requests/ecloud/get_network_ips.rb +2 -2
  389. data/lib/fog/compute/requests/ecloud/get_node.rb +2 -2
  390. data/lib/fog/compute/requests/ecloud/get_nodes.rb +2 -2
  391. data/lib/fog/compute/requests/ecloud/get_organization.rb +2 -2
  392. data/lib/fog/compute/requests/ecloud/get_public_ip.rb +2 -2
  393. data/lib/fog/compute/requests/ecloud/get_public_ips.rb +2 -2
  394. data/lib/fog/compute/requests/ecloud/get_task.rb +2 -2
  395. data/lib/fog/compute/requests/ecloud/get_task_list.rb +2 -2
  396. data/lib/fog/compute/requests/ecloud/get_vapp.rb +2 -2
  397. data/lib/fog/compute/requests/ecloud/get_vapp_template.rb +2 -2
  398. data/lib/fog/compute/requests/ecloud/get_vdc.rb +2 -2
  399. data/lib/fog/compute/requests/ecloud/get_versions.rb +2 -2
  400. data/lib/fog/compute/requests/ecloud/instantiate_vapp_template.rb +2 -2
  401. data/lib/fog/compute/requests/ecloud/login.rb +2 -2
  402. data/lib/fog/compute/requests/ecloud/power_off.rb +2 -2
  403. data/lib/fog/compute/requests/ecloud/power_on.rb +2 -2
  404. data/lib/fog/compute/requests/ecloud/power_reset.rb +2 -2
  405. data/lib/fog/compute/requests/ecloud/power_shutdown.rb +2 -2
  406. data/lib/fog/compute/requests/go_grid/common_lookup_list.rb +2 -2
  407. data/lib/fog/compute/requests/go_grid/grid_image_get.rb +2 -2
  408. data/lib/fog/compute/requests/go_grid/grid_image_list.rb +2 -2
  409. data/lib/fog/compute/requests/go_grid/grid_ip_list.rb +2 -2
  410. data/lib/fog/compute/requests/go_grid/grid_loadbalancer_list.rb +2 -2
  411. data/lib/fog/compute/requests/go_grid/grid_server_add.rb +2 -2
  412. data/lib/fog/compute/requests/go_grid/grid_server_delete.rb +2 -2
  413. data/lib/fog/compute/requests/go_grid/grid_server_get.rb +2 -2
  414. data/lib/fog/compute/requests/go_grid/grid_server_list.rb +2 -2
  415. data/lib/fog/compute/requests/go_grid/grid_server_power.rb +2 -2
  416. data/lib/fog/compute/requests/go_grid/support_password_get.rb +2 -2
  417. data/lib/fog/compute/requests/go_grid/support_password_list.rb +2 -2
  418. data/lib/fog/compute/requests/linode/avail_datacenters.rb +4 -3
  419. data/lib/fog/compute/requests/linode/avail_distributions.rb +3 -2
  420. data/lib/fog/compute/requests/linode/avail_kernels.rb +3 -2
  421. data/lib/fog/compute/requests/linode/avail_linodeplans.rb +3 -2
  422. data/lib/fog/compute/requests/linode/avail_stackscripts.rb +4 -2
  423. data/lib/fog/compute/requests/linode/linode_boot.rb +4 -2
  424. data/lib/fog/compute/requests/linode/linode_config_create.rb +4 -2
  425. data/lib/fog/compute/requests/linode/linode_config_list.rb +4 -2
  426. data/lib/fog/compute/requests/linode/linode_create.rb +3 -2
  427. data/lib/fog/compute/requests/linode/linode_delete.rb +3 -2
  428. data/lib/fog/compute/requests/linode/linode_disk_create.rb +4 -2
  429. data/lib/fog/compute/requests/linode/linode_disk_createfromdistribution.rb +4 -2
  430. data/lib/fog/compute/requests/linode/linode_disk_createfromstackscript.rb +4 -2
  431. data/lib/fog/compute/requests/linode/linode_disk_delete.rb +4 -2
  432. data/lib/fog/compute/requests/linode/linode_disk_list.rb +4 -2
  433. data/lib/fog/compute/requests/linode/linode_ip_addprivate.rb +4 -2
  434. data/lib/fog/compute/requests/linode/linode_ip_list.rb +4 -2
  435. data/lib/fog/compute/requests/linode/linode_list.rb +3 -2
  436. data/lib/fog/compute/requests/linode/linode_reboot.rb +3 -2
  437. data/lib/fog/compute/requests/linode/linode_shutdown.rb +4 -2
  438. data/lib/fog/compute/requests/linode/linode_update.rb +4 -2
  439. data/lib/fog/compute/requests/linode/stackscript_list.rb +3 -2
  440. data/lib/fog/compute/requests/new_servers/add_server.rb +2 -2
  441. data/lib/fog/compute/requests/new_servers/cancel_server.rb +2 -2
  442. data/lib/fog/compute/requests/new_servers/get_server.rb +2 -2
  443. data/lib/fog/compute/requests/new_servers/list_images.rb +2 -2
  444. data/lib/fog/compute/requests/new_servers/list_plans.rb +2 -2
  445. data/lib/fog/compute/requests/new_servers/list_servers.rb +2 -2
  446. data/lib/fog/compute/requests/new_servers/reboot_server.rb +2 -2
  447. data/lib/fog/compute/requests/ninefold/associate_ip_address.rb +14 -0
  448. data/lib/fog/compute/requests/ninefold/change_service_for_virtual_machine.rb +14 -0
  449. data/lib/fog/compute/requests/ninefold/create_ip_forwarding_rule.rb +14 -0
  450. data/lib/fog/compute/requests/ninefold/delete_ip_forwarding_rule.rb +14 -0
  451. data/lib/fog/compute/requests/ninefold/deploy_virtual_machine.rb +14 -0
  452. data/lib/fog/compute/requests/ninefold/destroy_virtual_machine.rb +14 -0
  453. data/lib/fog/compute/requests/ninefold/disable_static_nat.rb +14 -0
  454. data/lib/fog/compute/requests/ninefold/disassociate_ip_address.rb +14 -0
  455. data/lib/fog/compute/requests/ninefold/enable_static_nat.rb +14 -0
  456. data/lib/fog/compute/requests/ninefold/list_accounts.rb +14 -0
  457. data/lib/fog/compute/requests/ninefold/list_async_jobs.rb +14 -0
  458. data/lib/fog/compute/requests/ninefold/list_capabilities.rb +14 -0
  459. data/lib/fog/compute/requests/ninefold/list_disk_offerings.rb +14 -0
  460. data/lib/fog/compute/requests/ninefold/list_events.rb +14 -0
  461. data/lib/fog/compute/requests/ninefold/list_hypervisors.rb +14 -0
  462. data/lib/fog/compute/requests/ninefold/list_ip_forwarding_rules.rb +14 -0
  463. data/lib/fog/compute/requests/ninefold/list_network_offerings.rb +14 -0
  464. data/lib/fog/compute/requests/ninefold/list_networks.rb +14 -0
  465. data/lib/fog/compute/requests/ninefold/list_public_ip_addresses.rb +14 -0
  466. data/lib/fog/compute/requests/ninefold/list_resource_limits.rb +14 -0
  467. data/lib/fog/compute/requests/ninefold/list_service_offerings.rb +14 -0
  468. data/lib/fog/compute/requests/ninefold/list_templates.rb +14 -0
  469. data/lib/fog/compute/requests/ninefold/list_virtual_machines.rb +14 -0
  470. data/lib/fog/compute/requests/ninefold/list_zones.rb +14 -0
  471. data/lib/fog/compute/requests/ninefold/query_async_job_result.rb +14 -0
  472. data/lib/fog/compute/requests/ninefold/reboot_virtual_machine.rb +14 -0
  473. data/lib/fog/compute/requests/ninefold/reset_password_for_virtual_machine.rb +14 -0
  474. data/lib/fog/compute/requests/ninefold/start_virtual_machine.rb +14 -0
  475. data/lib/fog/compute/requests/ninefold/stop_virtual_machine.rb +14 -0
  476. data/lib/fog/compute/requests/ninefold/update_virtual_machine.rb +14 -0
  477. data/lib/fog/compute/requests/rackspace/confirm_resized_server.rb +2 -2
  478. data/lib/fog/compute/requests/rackspace/create_image.rb +2 -2
  479. data/lib/fog/compute/requests/rackspace/create_server.rb +3 -3
  480. data/lib/fog/compute/requests/rackspace/delete_image.rb +2 -2
  481. data/lib/fog/compute/requests/rackspace/delete_server.rb +3 -3
  482. data/lib/fog/compute/requests/rackspace/get_flavor_details.rb +3 -3
  483. data/lib/fog/compute/requests/rackspace/get_image_details.rb +2 -2
  484. data/lib/fog/compute/requests/rackspace/get_server_details.rb +3 -3
  485. data/lib/fog/compute/requests/rackspace/list_addresses.rb +3 -3
  486. data/lib/fog/compute/requests/rackspace/list_flavors.rb +2 -2
  487. data/lib/fog/compute/requests/rackspace/list_flavors_detail.rb +2 -2
  488. data/lib/fog/compute/requests/rackspace/list_images.rb +2 -2
  489. data/lib/fog/compute/requests/rackspace/list_images_detail.rb +2 -2
  490. data/lib/fog/compute/requests/rackspace/list_private_addresses.rb +3 -3
  491. data/lib/fog/compute/requests/rackspace/list_public_addresses.rb +3 -3
  492. data/lib/fog/compute/requests/rackspace/list_servers.rb +2 -2
  493. data/lib/fog/compute/requests/rackspace/list_servers_detail.rb +2 -2
  494. data/lib/fog/compute/requests/rackspace/reboot_server.rb +2 -2
  495. data/lib/fog/compute/requests/rackspace/resize_server.rb +2 -2
  496. data/lib/fog/compute/requests/rackspace/revert_resized_server.rb +2 -2
  497. data/lib/fog/compute/requests/rackspace/server_action.rb +2 -2
  498. data/lib/fog/compute/requests/rackspace/update_server.rb +3 -3
  499. data/lib/fog/compute/requests/slicehost/create_slice.rb +3 -3
  500. data/lib/fog/compute/requests/slicehost/delete_slice.rb +2 -2
  501. data/lib/fog/compute/requests/slicehost/get_backups.rb +3 -3
  502. data/lib/fog/compute/requests/slicehost/get_flavor.rb +3 -3
  503. data/lib/fog/compute/requests/slicehost/get_flavors.rb +3 -3
  504. data/lib/fog/compute/requests/slicehost/get_image.rb +3 -3
  505. data/lib/fog/compute/requests/slicehost/get_images.rb +3 -3
  506. data/lib/fog/compute/requests/slicehost/get_slice.rb +3 -3
  507. data/lib/fog/compute/requests/slicehost/get_slices.rb +3 -3
  508. data/lib/fog/compute/requests/slicehost/reboot_slice.rb +3 -3
  509. data/lib/fog/compute/requests/storm_on_demand/add_balancer_node.rb +2 -2
  510. data/lib/fog/compute/requests/storm_on_demand/clone_server.rb +2 -2
  511. data/lib/fog/compute/requests/storm_on_demand/create_server.rb +2 -2
  512. data/lib/fog/compute/requests/storm_on_demand/delete_server.rb +2 -2
  513. data/lib/fog/compute/requests/storm_on_demand/get_server.rb +2 -2
  514. data/lib/fog/compute/requests/storm_on_demand/get_stats.rb +2 -2
  515. data/lib/fog/compute/requests/storm_on_demand/list_balancers.rb +2 -2
  516. data/lib/fog/compute/requests/storm_on_demand/list_configs.rb +2 -2
  517. data/lib/fog/compute/requests/storm_on_demand/list_images.rb +2 -2
  518. data/lib/fog/compute/requests/storm_on_demand/list_private_ips.rb +2 -2
  519. data/lib/fog/compute/requests/storm_on_demand/list_servers.rb +2 -2
  520. data/lib/fog/compute/requests/storm_on_demand/list_templates.rb +2 -2
  521. data/lib/fog/compute/requests/storm_on_demand/reboot_server.rb +2 -2
  522. data/lib/fog/compute/requests/storm_on_demand/remove_balancer_node.rb +2 -2
  523. data/lib/fog/compute/requests/storm_on_demand/resize_server.rb +2 -2
  524. data/lib/fog/compute/requests/voxel/devices_list.rb +3 -3
  525. data/lib/fog/compute/requests/voxel/devices_power.rb +3 -3
  526. data/lib/fog/compute/requests/voxel/images_list.rb +4 -4
  527. data/lib/fog/compute/requests/voxel/voxcloud_create.rb +3 -3
  528. data/lib/fog/compute/requests/voxel/voxcloud_delete.rb +3 -3
  529. data/lib/fog/compute/requests/voxel/voxcloud_status.rb +5 -10
  530. data/lib/fog/compute/slicehost.rb +3 -18
  531. data/lib/fog/compute/storm_on_demand.rb +5 -6
  532. data/lib/fog/compute/virtual_box.rb +2 -4
  533. data/lib/fog/compute/voxel.rb +5 -5
  534. data/lib/fog/core/collection.rb +3 -0
  535. data/lib/fog/core/errors.rb +2 -0
  536. data/lib/fog/core/mock.rb +16 -9
  537. data/lib/fog/core/scp.rb +3 -3
  538. data/lib/fog/core/service.rb +3 -0
  539. data/lib/fog/dns.rb +32 -14
  540. data/lib/fog/dns/aws.rb +2 -17
  541. data/lib/fog/dns/bluebox.rb +4 -18
  542. data/lib/fog/dns/dnsimple.rb +2 -17
  543. data/lib/fog/dns/dnsmadeeasy.rb +134 -0
  544. data/lib/fog/dns/linode.rb +4 -19
  545. data/lib/fog/dns/models/aws/record.rb +10 -7
  546. data/lib/fog/dns/models/aws/records.rb +3 -3
  547. data/lib/fog/dns/models/aws/zone.rb +3 -3
  548. data/lib/fog/dns/models/aws/zones.rb +3 -3
  549. data/lib/fog/dns/models/bluebox/record.rb +9 -6
  550. data/lib/fog/dns/models/bluebox/records.rb +3 -3
  551. data/lib/fog/dns/models/bluebox/zone.rb +3 -3
  552. data/lib/fog/dns/models/bluebox/zones.rb +3 -3
  553. data/lib/fog/dns/models/dnsimple/record.rb +9 -6
  554. data/lib/fog/dns/models/dnsimple/records.rb +3 -3
  555. data/lib/fog/dns/models/dnsimple/zone.rb +7 -7
  556. data/lib/fog/dns/models/dnsimple/zones.rb +3 -3
  557. data/lib/fog/dns/models/dnsmadeeasy/record.rb +79 -0
  558. data/lib/fog/dns/models/dnsmadeeasy/records.rb +36 -0
  559. data/lib/fog/dns/models/dnsmadeeasy/zone.rb +42 -0
  560. data/lib/fog/dns/models/dnsmadeeasy/zones.rb +30 -0
  561. data/lib/fog/dns/models/linode/record.rb +7 -4
  562. data/lib/fog/dns/models/linode/records.rb +3 -3
  563. data/lib/fog/dns/models/linode/zone.rb +3 -3
  564. data/lib/fog/dns/models/linode/zones.rb +3 -3
  565. data/lib/fog/dns/models/slicehost/record.rb +8 -5
  566. data/lib/fog/dns/models/slicehost/records.rb +3 -3
  567. data/lib/fog/dns/models/slicehost/zone.rb +3 -3
  568. data/lib/fog/dns/models/slicehost/zones.rb +3 -3
  569. data/lib/fog/dns/models/zerigo/record.rb +8 -5
  570. data/lib/fog/dns/models/zerigo/records.rb +3 -3
  571. data/lib/fog/dns/models/zerigo/zone.rb +3 -3
  572. data/lib/fog/dns/models/zerigo/zones.rb +3 -3
  573. data/lib/fog/dns/parsers/aws/change_resource_record_sets.rb +2 -2
  574. data/lib/fog/dns/parsers/aws/create_hosted_zone.rb +2 -2
  575. data/lib/fog/dns/parsers/aws/delete_hosted_zone.rb +2 -2
  576. data/lib/fog/dns/parsers/aws/get_change.rb +2 -2
  577. data/lib/fog/dns/parsers/aws/get_hosted_zone.rb +2 -2
  578. data/lib/fog/dns/parsers/aws/list_hosted_zones.rb +2 -2
  579. data/lib/fog/dns/parsers/aws/list_resource_record_sets.rb +2 -2
  580. data/lib/fog/dns/parsers/bluebox/create_record.rb +2 -2
  581. data/lib/fog/dns/parsers/bluebox/create_zone.rb +2 -2
  582. data/lib/fog/dns/parsers/bluebox/get_record.rb +2 -2
  583. data/lib/fog/dns/parsers/bluebox/get_records.rb +3 -2
  584. data/lib/fog/dns/parsers/bluebox/get_zone.rb +5 -2
  585. data/lib/fog/dns/parsers/bluebox/get_zones.rb +2 -2
  586. data/lib/fog/dns/parsers/slicehost/create_record.rb +2 -2
  587. data/lib/fog/dns/parsers/slicehost/create_zone.rb +2 -2
  588. data/lib/fog/dns/parsers/slicehost/get_record.rb +2 -2
  589. data/lib/fog/dns/parsers/slicehost/get_records.rb +2 -2
  590. data/lib/fog/dns/parsers/slicehost/get_zone.rb +2 -2
  591. data/lib/fog/dns/parsers/slicehost/get_zones.rb +2 -2
  592. data/lib/fog/dns/parsers/zerigo/count_hosts.rb +2 -2
  593. data/lib/fog/dns/parsers/zerigo/count_zones.rb +2 -2
  594. data/lib/fog/dns/parsers/zerigo/create_host.rb +2 -2
  595. data/lib/fog/dns/parsers/zerigo/create_zone.rb +2 -2
  596. data/lib/fog/dns/parsers/zerigo/find_hosts.rb +2 -2
  597. data/lib/fog/dns/parsers/zerigo/get_host.rb +2 -2
  598. data/lib/fog/dns/parsers/zerigo/get_zone.rb +2 -2
  599. data/lib/fog/dns/parsers/zerigo/get_zone_stats.rb +2 -2
  600. data/lib/fog/dns/parsers/zerigo/list_hosts.rb +2 -2
  601. data/lib/fog/dns/parsers/zerigo/list_zones.rb +2 -2
  602. data/lib/fog/dns/requests/aws/change_resource_record_sets.rb +3 -3
  603. data/lib/fog/dns/requests/aws/create_hosted_zone.rb +3 -3
  604. data/lib/fog/dns/requests/aws/delete_hosted_zone.rb +3 -3
  605. data/lib/fog/dns/requests/aws/get_change.rb +3 -3
  606. data/lib/fog/dns/requests/aws/get_hosted_zone.rb +3 -3
  607. data/lib/fog/dns/requests/aws/list_hosted_zones.rb +3 -3
  608. data/lib/fog/dns/requests/aws/list_resource_record_sets.rb +3 -3
  609. data/lib/fog/dns/requests/bluebox/create_record.rb +3 -3
  610. data/lib/fog/dns/requests/bluebox/create_zone.rb +3 -3
  611. data/lib/fog/dns/requests/bluebox/delete_record.rb +2 -2
  612. data/lib/fog/dns/requests/bluebox/delete_zone.rb +2 -2
  613. data/lib/fog/dns/requests/bluebox/get_record.rb +3 -3
  614. data/lib/fog/dns/requests/bluebox/get_records.rb +3 -3
  615. data/lib/fog/dns/requests/bluebox/get_zone.rb +3 -3
  616. data/lib/fog/dns/requests/bluebox/get_zones.rb +3 -3
  617. data/lib/fog/dns/requests/bluebox/update_zone.rb +2 -2
  618. data/lib/fog/dns/requests/dnsimple/create_domain.rb +2 -2
  619. data/lib/fog/dns/requests/dnsimple/create_record.rb +2 -2
  620. data/lib/fog/dns/requests/dnsimple/delete_domain.rb +2 -2
  621. data/lib/fog/dns/requests/dnsimple/delete_record.rb +2 -2
  622. data/lib/fog/dns/requests/dnsimple/get_domain.rb +2 -2
  623. data/lib/fog/dns/requests/dnsimple/get_record.rb +2 -2
  624. data/lib/fog/dns/requests/dnsimple/list_domains.rb +2 -2
  625. data/lib/fog/dns/requests/dnsimple/list_records.rb +2 -2
  626. data/lib/fog/dns/requests/dnsimple/update_record.rb +2 -2
  627. data/lib/fog/dns/requests/dnsmadeeasy/create_domain.rb +29 -0
  628. data/lib/fog/dns/requests/dnsmadeeasy/create_record.rb +62 -0
  629. data/lib/fog/dns/requests/dnsmadeeasy/create_secondary.rb +36 -0
  630. data/lib/fog/dns/requests/dnsmadeeasy/delete_all_domains.rb +23 -0
  631. data/lib/fog/dns/requests/dnsmadeeasy/delete_all_secondary.rb +22 -0
  632. data/lib/fog/dns/requests/dnsmadeeasy/delete_domain.rb +25 -0
  633. data/lib/fog/dns/requests/dnsmadeeasy/delete_record.rb +26 -0
  634. data/lib/fog/dns/requests/dnsmadeeasy/delete_secondary.rb +25 -0
  635. data/lib/fog/dns/requests/dnsmadeeasy/get_domain.rb +29 -0
  636. data/lib/fog/dns/requests/dnsmadeeasy/get_record.rb +38 -0
  637. data/lib/fog/dns/requests/dnsmadeeasy/get_secondary.rb +29 -0
  638. data/lib/fog/dns/requests/dnsmadeeasy/list_domains.rb +24 -0
  639. data/lib/fog/dns/requests/dnsmadeeasy/list_records.rb +42 -0
  640. data/lib/fog/dns/requests/dnsmadeeasy/list_secondary.rb +24 -0
  641. data/lib/fog/dns/requests/dnsmadeeasy/update_record.rb +56 -0
  642. data/lib/fog/dns/requests/dnsmadeeasy/update_secondary.rb +36 -0
  643. data/lib/fog/dns/requests/linode/domain_create.rb +2 -2
  644. data/lib/fog/dns/requests/linode/domain_delete.rb +2 -2
  645. data/lib/fog/dns/requests/linode/domain_list.rb +2 -2
  646. data/lib/fog/dns/requests/linode/domain_resource_create.rb +2 -2
  647. data/lib/fog/dns/requests/linode/domain_resource_delete.rb +2 -2
  648. data/lib/fog/dns/requests/linode/domain_resource_list.rb +2 -2
  649. data/lib/fog/dns/requests/linode/domain_resource_update.rb +2 -2
  650. data/lib/fog/dns/requests/linode/domain_update.rb +2 -2
  651. data/lib/fog/dns/requests/slicehost/create_record.rb +3 -3
  652. data/lib/fog/dns/requests/slicehost/create_zone.rb +3 -3
  653. data/lib/fog/dns/requests/slicehost/delete_record.rb +2 -2
  654. data/lib/fog/dns/requests/slicehost/delete_zone.rb +2 -2
  655. data/lib/fog/dns/requests/slicehost/get_record.rb +3 -3
  656. data/lib/fog/dns/requests/slicehost/get_records.rb +3 -3
  657. data/lib/fog/dns/requests/slicehost/get_zone.rb +3 -3
  658. data/lib/fog/dns/requests/slicehost/get_zones.rb +3 -3
  659. data/lib/fog/dns/requests/zerigo/count_hosts.rb +3 -3
  660. data/lib/fog/dns/requests/zerigo/count_zones.rb +3 -3
  661. data/lib/fog/dns/requests/zerigo/create_host.rb +3 -3
  662. data/lib/fog/dns/requests/zerigo/create_zone.rb +3 -3
  663. data/lib/fog/dns/requests/zerigo/delete_host.rb +2 -2
  664. data/lib/fog/dns/requests/zerigo/delete_zone.rb +2 -2
  665. data/lib/fog/dns/requests/zerigo/find_hosts.rb +4 -4
  666. data/lib/fog/dns/requests/zerigo/get_host.rb +3 -3
  667. data/lib/fog/dns/requests/zerigo/get_zone.rb +3 -3
  668. data/lib/fog/dns/requests/zerigo/get_zone_stats.rb +3 -3
  669. data/lib/fog/dns/requests/zerigo/list_hosts.rb +3 -3
  670. data/lib/fog/dns/requests/zerigo/list_zones.rb +3 -3
  671. data/lib/fog/dns/requests/zerigo/update_host.rb +2 -2
  672. data/lib/fog/dns/requests/zerigo/update_zone.rb +2 -2
  673. data/lib/fog/dns/slicehost.rb +3 -18
  674. data/lib/fog/dns/zerigo.rb +3 -18
  675. data/lib/fog/providers.rb +2 -0
  676. data/lib/fog/providers/aws.rb +7 -2
  677. data/lib/fog/providers/dnsmadeeasy.rb +11 -0
  678. data/lib/fog/providers/ninefold.rb +11 -0
  679. data/lib/fog/providers/rackspace.rb +3 -1
  680. data/lib/fog/storage.rb +25 -10
  681. data/lib/fog/storage/aws.rb +38 -23
  682. data/lib/fog/storage/google.rb +2 -17
  683. data/lib/fog/storage/local.rb +2 -17
  684. data/lib/fog/storage/models/aws/directories.rb +3 -3
  685. data/lib/fog/storage/models/aws/directory.rb +3 -3
  686. data/lib/fog/storage/models/aws/file.rb +2 -2
  687. data/lib/fog/storage/models/aws/files.rb +12 -5
  688. data/lib/fog/storage/models/google/directories.rb +3 -3
  689. data/lib/fog/storage/models/google/directory.rb +3 -3
  690. data/lib/fog/storage/models/google/file.rb +2 -2
  691. data/lib/fog/storage/models/google/files.rb +3 -3
  692. data/lib/fog/storage/models/local/directories.rb +3 -3
  693. data/lib/fog/storage/models/local/directory.rb +3 -3
  694. data/lib/fog/storage/models/local/file.rb +2 -2
  695. data/lib/fog/storage/models/local/files.rb +3 -3
  696. data/lib/fog/storage/models/rackspace/directories.rb +9 -5
  697. data/lib/fog/storage/models/rackspace/directory.rb +5 -4
  698. data/lib/fog/storage/models/rackspace/file.rb +4 -6
  699. data/lib/fog/storage/models/rackspace/files.rb +9 -7
  700. data/lib/fog/storage/parsers/aws/access_control_list.rb +2 -2
  701. data/lib/fog/storage/parsers/aws/complete_multipart_upload.rb +2 -2
  702. data/lib/fog/storage/parsers/aws/copy_object.rb +2 -2
  703. data/lib/fog/storage/parsers/aws/get_bucket.rb +2 -2
  704. data/lib/fog/storage/parsers/aws/get_bucket_location.rb +2 -2
  705. data/lib/fog/storage/parsers/aws/get_bucket_logging.rb +2 -2
  706. data/lib/fog/storage/parsers/aws/get_bucket_object_versions.rb +2 -2
  707. data/lib/fog/storage/parsers/aws/get_bucket_versioning.rb +2 -2
  708. data/lib/fog/storage/parsers/aws/get_bucket_website.rb +2 -2
  709. data/lib/fog/storage/parsers/aws/get_request_payment.rb +2 -2
  710. data/lib/fog/storage/parsers/aws/get_service.rb +2 -2
  711. data/lib/fog/storage/parsers/aws/initiate_multipart_upload.rb +2 -2
  712. data/lib/fog/storage/parsers/aws/list_multipart_uploads.rb +2 -2
  713. data/lib/fog/storage/parsers/aws/list_parts.rb +2 -2
  714. data/lib/fog/storage/parsers/google/access_control_list.rb +2 -2
  715. data/lib/fog/storage/parsers/google/copy_object.rb +2 -2
  716. data/lib/fog/storage/parsers/google/get_bucket.rb +2 -2
  717. data/lib/fog/storage/parsers/google/get_bucket_logging.rb +2 -2
  718. data/lib/fog/storage/parsers/google/get_bucket_object_versions.rb +2 -2
  719. data/lib/fog/storage/parsers/google/get_bucket_versioning.rb +2 -2
  720. data/lib/fog/storage/parsers/google/get_request_payment.rb +2 -2
  721. data/lib/fog/storage/parsers/google/get_service.rb +2 -2
  722. data/lib/fog/storage/rackspace.rb +4 -19
  723. data/lib/fog/storage/requests/aws/abort_multipart_upload.rb +2 -2
  724. data/lib/fog/storage/requests/aws/complete_multipart_upload.rb +3 -3
  725. data/lib/fog/storage/requests/aws/copy_object.rb +3 -3
  726. data/lib/fog/storage/requests/aws/delete_bucket.rb +2 -2
  727. data/lib/fog/storage/requests/aws/delete_bucket_policy.rb +32 -0
  728. data/lib/fog/storage/requests/aws/delete_bucket_website.rb +2 -2
  729. data/lib/fog/storage/requests/aws/delete_object.rb +6 -5
  730. data/lib/fog/storage/requests/aws/get_bucket.rb +3 -3
  731. data/lib/fog/storage/requests/aws/get_bucket_acl.rb +3 -3
  732. data/lib/fog/storage/requests/aws/get_bucket_location.rb +3 -3
  733. data/lib/fog/storage/requests/aws/get_bucket_logging.rb +3 -3
  734. data/lib/fog/storage/requests/aws/get_bucket_object_versions.rb +3 -3
  735. data/lib/fog/storage/requests/aws/get_bucket_policy.rb +37 -0
  736. data/lib/fog/storage/requests/aws/get_bucket_versioning.rb +3 -3
  737. data/lib/fog/storage/requests/aws/get_bucket_website.rb +3 -3
  738. data/lib/fog/storage/requests/aws/get_object.rb +34 -27
  739. data/lib/fog/storage/requests/aws/get_object_acl.rb +3 -3
  740. data/lib/fog/storage/requests/aws/get_object_torrent.rb +2 -2
  741. data/lib/fog/storage/requests/aws/get_object_url.rb +2 -2
  742. data/lib/fog/storage/requests/aws/get_request_payment.rb +3 -3
  743. data/lib/fog/storage/requests/aws/get_service.rb +3 -3
  744. data/lib/fog/storage/requests/aws/head_object.rb +2 -2
  745. data/lib/fog/storage/requests/aws/initiate_multipart_upload.rb +3 -3
  746. data/lib/fog/storage/requests/aws/list_multipart_uploads.rb +3 -3
  747. data/lib/fog/storage/requests/aws/list_parts.rb +3 -3
  748. data/lib/fog/storage/requests/aws/post_object_hidden_fields.rb +2 -2
  749. data/lib/fog/storage/requests/aws/put_bucket.rb +2 -2
  750. data/lib/fog/storage/requests/aws/put_bucket_acl.rb +2 -2
  751. data/lib/fog/storage/requests/aws/put_bucket_logging.rb +2 -2
  752. data/lib/fog/storage/requests/aws/put_bucket_policy.rb +30 -0
  753. data/lib/fog/storage/requests/aws/put_bucket_versioning.rb +2 -2
  754. data/lib/fog/storage/requests/aws/put_bucket_website.rb +2 -2
  755. data/lib/fog/storage/requests/aws/put_object.rb +2 -2
  756. data/lib/fog/storage/requests/aws/put_object_acl.rb +2 -2
  757. data/lib/fog/storage/requests/aws/put_object_url.rb +2 -2
  758. data/lib/fog/storage/requests/aws/put_request_payment.rb +2 -2
  759. data/lib/fog/storage/requests/aws/sync_clock.rb +2 -2
  760. data/lib/fog/storage/requests/aws/upload_part.rb +2 -2
  761. data/lib/fog/storage/requests/google/copy_object.rb +3 -3
  762. data/lib/fog/storage/requests/google/delete_bucket.rb +2 -2
  763. data/lib/fog/storage/requests/google/delete_object.rb +2 -2
  764. data/lib/fog/storage/requests/google/get_bucket.rb +3 -3
  765. data/lib/fog/storage/requests/google/get_bucket_acl.rb +1 -1
  766. data/lib/fog/storage/requests/google/get_object.rb +2 -2
  767. data/lib/fog/storage/requests/google/get_object_acl.rb +3 -3
  768. data/lib/fog/storage/requests/google/get_object_torrent.rb +2 -2
  769. data/lib/fog/storage/requests/google/get_object_url.rb +2 -2
  770. data/lib/fog/storage/requests/google/get_service.rb +3 -3
  771. data/lib/fog/storage/requests/google/head_object.rb +2 -2
  772. data/lib/fog/storage/requests/google/put_bucket.rb +2 -2
  773. data/lib/fog/storage/requests/google/put_bucket_acl.rb +2 -2
  774. data/lib/fog/storage/requests/google/put_object.rb +2 -2
  775. data/lib/fog/storage/requests/google/put_object_url.rb +2 -2
  776. data/lib/fog/storage/requests/rackspace/delete_container.rb +3 -4
  777. data/lib/fog/storage/requests/rackspace/delete_object.rb +3 -4
  778. data/lib/fog/storage/requests/rackspace/get_container.rb +3 -4
  779. data/lib/fog/storage/requests/rackspace/get_containers.rb +3 -4
  780. data/lib/fog/storage/requests/rackspace/get_object.rb +3 -4
  781. data/lib/fog/storage/requests/rackspace/head_container.rb +3 -4
  782. data/lib/fog/storage/requests/rackspace/head_containers.rb +3 -4
  783. data/lib/fog/storage/requests/rackspace/head_object.rb +3 -4
  784. data/lib/fog/storage/requests/rackspace/put_container.rb +3 -4
  785. data/lib/fog/storage/requests/rackspace/put_object.rb +3 -4
  786. data/spec/ecloud/bin_spec.rb +1 -1
  787. data/spec/ecloud/models/backup_internet_service_spec.rb +4 -4
  788. data/spec/ecloud/models/backup_internet_services_spec.rb +3 -3
  789. data/spec/ecloud/models/internet_service_spec.rb +4 -4
  790. data/spec/ecloud/models/internet_services_spec.rb +3 -3
  791. data/spec/ecloud/models/ip_spec.rb +4 -4
  792. data/spec/ecloud/models/ips_spec.rb +3 -3
  793. data/spec/ecloud/models/network_spec.rb +4 -4
  794. data/spec/ecloud/models/networks_spec.rb +3 -3
  795. data/spec/ecloud/models/node_spec.rb +4 -4
  796. data/spec/ecloud/models/nodes_spec.rb +3 -3
  797. data/spec/ecloud/models/public_ip_spec.rb +4 -4
  798. data/spec/ecloud/models/public_ips_spec.rb +3 -3
  799. data/spec/ecloud/models/server_spec.rb +3 -3
  800. data/spec/ecloud/models/vdc_spec.rb +4 -4
  801. data/spec/ecloud/models/vdcs_spec.rb +3 -3
  802. data/spec/ecloud/spec_helper.rb +10 -10
  803. data/spec/ecloud/vcloud_spec.rb +1 -1
  804. data/tests/aws/models/rds/helper.rb +5 -0
  805. data/tests/aws/models/rds/parameter_group_tests.rb +24 -0
  806. data/tests/aws/models/rds/parameter_groups_tests.rb +8 -0
  807. data/tests/aws/models/rds/security_group_tests.rb +50 -0
  808. data/tests/aws/models/rds/security_groups_tests.rb +6 -0
  809. data/tests/aws/models/rds/server_tests.rb +104 -0
  810. data/tests/aws/models/rds/servers_tests.rb +8 -0
  811. data/tests/aws/models/rds/snapshot_tests.rb +15 -0
  812. data/tests/aws/models/rds/snapshots_tests.rb +15 -0
  813. data/tests/aws/requests/cloud_formation/stack_tests.rb +1 -1
  814. data/tests/aws/requests/elb/helper.rb +8 -5
  815. data/tests/aws/requests/elb/model_tests.rb +2 -2
  816. data/tests/aws/requests/simpledb/attributes_tests.rb +16 -0
  817. data/tests/compute/helper.rb +9 -6
  818. data/tests/compute/models/aws/address_tests.rb +3 -3
  819. data/tests/compute/models/aws/addresses_tests.rb +2 -2
  820. data/tests/compute/models/aws/key_pair_tests.rb +5 -5
  821. data/tests/compute/models/aws/key_pairs_tests.rb +2 -2
  822. data/tests/compute/models/aws/security_group_tests.rb +3 -3
  823. data/tests/compute/models/aws/security_groups.rb +2 -2
  824. data/tests/compute/models/aws/server_tests.rb +2 -2
  825. data/tests/compute/models/aws/snapshot_tests.rb +3 -3
  826. data/tests/compute/models/aws/snapshots_tests.rb +4 -4
  827. data/tests/compute/models/aws/volume_tests.rb +3 -3
  828. data/tests/compute/models/aws/volumes_tests.rb +2 -2
  829. data/tests/compute/models/flavors_tests.rb +3 -3
  830. data/tests/compute/models/server_tests.rb +2 -2
  831. data/tests/compute/models/servers_tests.rb +2 -2
  832. data/tests/compute/parsers/aws/monitor_unmonitor_instances_tests.rb +2 -2
  833. data/tests/compute/requests/aws/address_tests.rb +22 -22
  834. data/tests/compute/requests/aws/availability_zone_tests.rb +3 -3
  835. data/tests/compute/requests/aws/image_tests.rb +3 -3
  836. data/tests/compute/requests/aws/instance_tests.rb +22 -22
  837. data/tests/compute/requests/aws/key_pair_tests.rb +11 -11
  838. data/tests/compute/requests/aws/region_tests.rb +3 -3
  839. data/tests/compute/requests/aws/security_group_tests.rb +23 -23
  840. data/tests/compute/requests/aws/snapshot_tests.rb +11 -11
  841. data/tests/compute/requests/aws/tag_tests.rb +7 -7
  842. data/tests/compute/requests/aws/volume_tests.rb +37 -21
  843. data/tests/compute/requests/bluebox/block_tests.rb +15 -15
  844. data/tests/compute/requests/bluebox/helper.rb +1 -1
  845. data/tests/compute/requests/bluebox/product_tests.rb +5 -5
  846. data/tests/compute/requests/bluebox/template_tests.rb +6 -6
  847. data/tests/compute/requests/brightbox/account_tests.rb +7 -7
  848. data/tests/compute/requests/brightbox/api_client_tests.rb +8 -8
  849. data/tests/compute/requests/brightbox/cloud_ip_tests.rb +11 -11
  850. data/tests/compute/requests/brightbox/helper.rb +17 -8
  851. data/tests/compute/requests/brightbox/image_tests.rb +9 -9
  852. data/tests/compute/requests/brightbox/interface_tests.rb +1 -1
  853. data/tests/compute/requests/brightbox/load_balancer_tests.rb +10 -10
  854. data/tests/compute/requests/brightbox/server_tests.rb +13 -13
  855. data/tests/compute/requests/brightbox/server_type_tests.rb +5 -5
  856. data/tests/compute/requests/brightbox/user_tests.rb +6 -6
  857. data/tests/compute/requests/brightbox/zone_tests.rb +5 -5
  858. data/tests/compute/requests/linode/datacenter_tests.rb +2 -2
  859. data/tests/compute/requests/linode/distribution_tests.rb +3 -3
  860. data/tests/compute/requests/linode/kernel_tests.rb +3 -3
  861. data/tests/compute/requests/linode/linode_tests.rb +18 -18
  862. data/tests/compute/requests/linode/linodeplans_tests.rb +3 -3
  863. data/tests/compute/requests/linode/stackscripts_tests.rb +4 -3
  864. data/tests/compute/requests/ninefold/address_tests.rb +42 -0
  865. data/tests/compute/requests/ninefold/async_job_tests.rb +33 -0
  866. data/tests/compute/requests/ninefold/helper.rb +320 -0
  867. data/tests/compute/requests/ninefold/list_tests.rb +56 -0
  868. data/tests/compute/requests/ninefold/nat_tests.rb +92 -0
  869. data/tests/compute/requests/ninefold/network_tests.rb +21 -0
  870. data/tests/compute/requests/ninefold/template_tests.rb +21 -0
  871. data/tests/compute/requests/ninefold/virtual_machine_tests.rb +69 -0
  872. data/tests/compute/requests/rackspace/address_tests.rb +11 -11
  873. data/tests/compute/requests/rackspace/flavor_tests.rb +6 -6
  874. data/tests/compute/requests/rackspace/image_tests.rb +12 -12
  875. data/tests/compute/requests/rackspace/resize_tests.rb +7 -7
  876. data/tests/compute/requests/rackspace/server_tests.rb +22 -22
  877. data/tests/compute/requests/slicehost/backup_tests.rb +2 -2
  878. data/tests/compute/requests/slicehost/flavor_tests.rb +4 -4
  879. data/tests/compute/requests/slicehost/image_tests.rb +4 -4
  880. data/tests/compute/requests/slicehost/slice_tests.rb +12 -12
  881. data/tests/compute/requests/storm_on_demand/server_tests.rb +7 -7
  882. data/tests/compute/requests/voxel/image_tests.rb +5 -5
  883. data/tests/compute/requests/voxel/server_tests.rb +12 -12
  884. data/tests/dns/helper.rb +11 -8
  885. data/tests/dns/models/record_tests.rb +8 -5
  886. data/tests/dns/models/records_tests.rb +8 -5
  887. data/tests/dns/models/zone_tests.rb +5 -2
  888. data/tests/dns/models/zones_tests.rb +5 -2
  889. data/tests/dns/requests/aws/dns_tests.rb +15 -15
  890. data/tests/dns/requests/bluebox/dns_tests.rb +16 -16
  891. data/tests/dns/requests/dnsimple/dns_tests.rb +10 -10
  892. data/tests/dns/requests/dnsmadeeasy/dns_tests.rb +150 -0
  893. data/tests/dns/requests/linode/dns_tests.rb +16 -16
  894. data/tests/dns/requests/slicehost/dns_tests.rb +16 -16
  895. data/tests/dns/requests/zerigo/dns_tests.rb +31 -32
  896. data/tests/helper.rb +1 -1
  897. data/tests/helpers/collection_helper.rb +1 -1
  898. data/tests/helpers/mock_helper.rb +4 -0
  899. data/tests/helpers/model_helper.rb +12 -0
  900. data/tests/storage/helper.rb +4 -4
  901. data/tests/storage/models/directories_tests.rb +2 -2
  902. data/tests/storage/models/directory_test.rb +2 -2
  903. data/tests/storage/models/file_tests.rb +2 -2
  904. data/tests/storage/models/files_tests.rb +2 -2
  905. data/tests/storage/requests/aws/bucket_tests.rb +18 -18
  906. data/tests/storage/requests/aws/multipart_upload_tests.rb +11 -11
  907. data/tests/storage/requests/aws/object_tests.rb +16 -16
  908. data/tests/storage/requests/google/bucket_tests.rb +10 -10
  909. data/tests/storage/requests/google/object_tests.rb +17 -17
  910. data/tests/storage/requests/rackspace/container_tests.rb +13 -13
  911. data/tests/storage/requests/rackspace/object_tests.rb +19 -19
  912. metadata +184 -64
  913. data/tests/aws/requests/rds/model_tests.rb +0 -98
@@ -12,10 +12,10 @@ fog is the Ruby cloud computing library, top to bottom:
12
12
 
13
13
  Now type 'fog' to try stuff, confident that fog will let you know what to do. Here is an example of wading through server creation for Amazon Elastic Compute Cloud:
14
14
 
15
- >> server = AWS.servers.create
15
+ >> server = Compute[:aws].servers.create
16
16
  ArgumentError: image_id is required for this operation
17
17
 
18
- >> server = AWS.servers.create(:image_id => 'ami-5ee70037')
18
+ >> server = Compute[:aws].servers.create(:image_id => 'ami-5ee70037')
19
19
  <Fog::AWS::EC2::Server [...]>
20
20
 
21
21
  >> server.destroy # cleanup after yourself or regret it, trust me
@@ -26,7 +26,7 @@ Now type 'fog' to try stuff, confident that fog will let you know what to do. He
26
26
  A high level interface to each cloud is provided through collections, such as `images` and `servers`.
27
27
  You can see a list of available collections by calling `collections` on the connection object. You can try it out using the `fog` command:
28
28
 
29
- >> AWS.collections
29
+ >> Compute[:aws].collections
30
30
  [:addresses, :directories, ..., :volumes, :zones]
31
31
 
32
32
  Some collections are available across multiple providers:
@@ -84,14 +84,14 @@ You can see a list of available requests by calling #requests on the connection
84
84
  For instance, ec2 provides methods related to reserved instances that don't have any models (yet). Here is how you can lookup your reserved instances:
85
85
 
86
86
  $ fog
87
- >> AWS[:ec2].describe_reserved_instances
87
+ >> Compute[:aws].describe_reserved_instances
88
88
  #<Excon::Response [...]>
89
89
 
90
90
  It will return an {excon}[http://github.com/geemus/excon] response, which has `body`, `headers` and `status`. Both return nice hashes.
91
91
 
92
92
  == Go forth and conquer
93
93
 
94
- Play around and use the console to explore or check out {fog.io}[http://fog.io] for more details and examples. Once you are reading to start scripting fog, here is a quick hint on how to make connections without the command line thing to help you.
94
+ Play around and use the console to explore or check out {fog.io}[http://fog.io] for more details and examples. Once you are ready to start scripting fog, here is a quick hint on how to make connections without the command line thing to help you.
95
95
 
96
96
  # create a compute connection
97
97
  compute = Fog::Compute.new(:provider => 'AWS', :aws_access_key_id => ACCESS_KEY_ID, :aws_secret_access_key => SECRET_ACCESS_KEY)
@@ -117,7 +117,7 @@ Wonder how you can get a lovely fog shirt? Look no further!
117
117
 
118
118
  * Blue shirts go to people who have contributed indirectly, great examples are writing blog posts or giving lightning talks.
119
119
  * Grey shirts and a follow from @fog go to people who have made it on to the {contributors list}[https://github.com/geemus/fog/contributors] by submitting code.
120
- * Black shirts go to people who have made it on to the {collaborators list}[https://github.com/api/v2/json/repos/show/geemus/fog/collaborators] by coercing geemus into adding them (geemus is currently the only member of this list).
120
+ * Black shirts go to people who have made it on to the {collaborators list}[https://github.com/api/v2/json/repos/show/geemus/fog/collaborators] by coercing geemus into adding them.
121
121
 
122
122
  == Additional Resources
123
123
 
data/Rakefile CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'rubygems'
2
2
  require 'bundler/setup'
3
3
  require 'date'
4
- require 'lib/fog'
4
+ require File.dirname(__FILE__) + '/lib/fog'
5
5
 
6
6
  #############################################################################
7
7
  #
@@ -53,8 +53,7 @@ task :examples do
53
53
  end
54
54
 
55
55
  task :test do # => :examples do
56
- Rake::Task[:mock_tests].invoke
57
- Rake::Task[:real_tests].invoke
56
+ Rake::Task[:mock_tests].invoke && Rake::Task[:examples].invoke && Rake::Task[:real_tests].invoke
58
57
  end
59
58
 
60
59
  def tests(mocked)
@@ -88,6 +87,19 @@ task :real_tests do
88
87
  tests(false)
89
88
  end
90
89
 
90
+ task :nuke do
91
+ Fog.providers.each do |provider|
92
+ begin
93
+ compute = Fog::Compute.new(:provider => provider)
94
+ for server in compute.servers
95
+ Formatador.display_line("[#{provider}] destroying server #{server.identity}")
96
+ server.destroy rescue nil
97
+ end
98
+ rescue
99
+ end
100
+ end
101
+ end
102
+
91
103
  desc "Generate RCov test coverage and open in your browser"
92
104
  task :coverage do
93
105
  require 'rcov'
@@ -116,6 +128,7 @@ end
116
128
  #############################################################################
117
129
 
118
130
  task :release => :build do
131
+ Rake::Task[:changelog].invoke
119
132
  unless `git branch` =~ /^\* master$/
120
133
  puts "You must be on the master branch to release!"
121
134
  exit!
@@ -127,7 +140,6 @@ task :release => :build do
127
140
  sh "git push origin v#{version}"
128
141
  sh "gem push pkg/#{name}-#{version}.gem"
129
142
  Rake::Task[:docs].invoke
130
- Rake::Task[:changelog].invoke
131
143
  end
132
144
 
133
145
  task :build => :gemspec do
@@ -184,7 +196,8 @@ task :changelog do
184
196
  unless line[-1..-1] == '.'
185
197
  line << '.'
186
198
  end
187
- line.gsub!(/^\s*\[([^\]]*)\] /, '')
199
+ line.lstrip!
200
+ line.gsub!(/^\[([^\]]*)\] /, '')
188
201
  tag = $1 || 'misc'
189
202
  changes[tag] ||= []
190
203
  changes[tag] << (line << ' thanks ' << committer)
@@ -193,7 +206,12 @@ task :changelog do
193
206
  end
194
207
 
195
208
  for committer, commits in committers.to_a.sort {|x,y| y[1] <=> x[1]}
196
- if ['Aaron Suggs', 'geemus', 'Wesley Beary'].include?(committer)
209
+ if [
210
+ 'Aaron Suggs',
211
+ 'geemus',
212
+ 'nightshade427',
213
+ 'Wesley Beary'
214
+ ].include?(committer)
197
215
  next
198
216
  end
199
217
  changelog << "MVP! #{committer}"
@@ -209,19 +227,41 @@ task :changelog do
209
227
  changelog << ''
210
228
  end
211
229
 
230
+ old_changelog = File.read('changelog.txt')
231
+ File.open('changelog.txt', 'w') do |file|
232
+ file.write(changelog.join("\n"))
233
+ file.write("\n\n")
234
+ file.write(old_changelog)
235
+ end
236
+
212
237
  `echo "#{changelog.join("\n")}" | pbcopy`
213
238
  p 'changelog copied to clipboard'
214
239
  end
215
240
 
216
241
  task :docs do
217
- # build the docs locally
218
- sh "jekyll docs docs/_site"
242
+ Rake::Task[:upload_fog_io].invoke
243
+ Rake::Task[:upload_rdoc].invoke
244
+
245
+ # write base index with redirect to new version
246
+ directory.files.create(
247
+ :body => redirecter('latest'),
248
+ :content_type => 'text/html',
249
+ :key => 'index.html',
250
+ :public => true
251
+ )
219
252
 
253
+ Formatador.display_line
254
+ end
255
+
256
+ task :upload_fog_io do
220
257
  # connect to storage provider
221
258
  Fog.credential = :geemus
222
259
  storage = Fog::Storage.new(:provider => 'AWS')
223
260
  directory = storage.directories.new(:key => 'fog.io')
224
261
 
262
+ # build the docs locally
263
+ sh "jekyll docs docs/_site"
264
+
225
265
  # write web page files to versioned 'folder'
226
266
  for file_path in Dir.glob('docs/_site/**/*')
227
267
  next if File.directory?(file_path)
@@ -254,7 +294,14 @@ task :docs do
254
294
  )
255
295
  end
256
296
  Formatador.redisplay(' ' * 128)
257
- Formatador.redisplay('Uploaded docs/_site')
297
+ Formatador.redisplay("Uploaded docs/_site\n")
298
+ end
299
+
300
+ task :upload_rdoc do
301
+ # connect to storage provider
302
+ Fog.credential = :geemus
303
+ storage = Fog::Storage.new(:provider => 'AWS')
304
+ directory = storage.directories.new(:key => 'fog.io')
258
305
 
259
306
  # write rdoc files to versioned 'folder'
260
307
  Rake::Task[:rdoc].invoke
@@ -277,17 +324,7 @@ task :docs do
277
324
  :key => 'latest/rdoc/index.html',
278
325
  :public => true
279
326
  )
280
- Formatador.redisplay('Uploaded rdoc')
281
-
282
- # write base index with redirect to new version
283
- directory.files.create(
284
- :body => redirecter(version),
285
- :content_type => 'text/html',
286
- :key => 'index.html',
287
- :public => true
288
- )
289
-
290
- Formatador.display_line
327
+ Formatador.redisplay("Uploaded rdoc\n")
291
328
  end
292
329
 
293
330
  def redirecter(path)
@@ -302,4 +339,4 @@ def redirecter(path)
302
339
  </body>
303
340
  </html>
304
341
  HTML
305
- end
342
+ end
data/bin/fog CHANGED
@@ -36,6 +36,12 @@ else
36
36
  Formatador.display_line(":#{Fog.credential} provides #{providers}")
37
37
  providers = Fog.providers
38
38
 
39
+ # FIXME: hacks until we can `include Fog` in bin
40
+ CDN = Fog::CDN
41
+ Compute = Fog::Compute
42
+ DNS = Fog::DNS
43
+ Storage = Fog::Storage
44
+
39
45
  catch(:IRB_EXIT) { @irb.eval_input }
40
46
 
41
47
  end
@@ -1,3 +1,110 @@
1
+ 0.8.2 05/26/2011 9e6ebb6f7316273eb489f8cb60eb1642e6df357b
2
+ =========================================================
3
+
4
+ MVP! nightshade427
5
+
6
+ [aws|compute]
7
+ better region/zone handling for mocks. thanks geemus
8
+ indentation fix for last commit. thanks geemus
9
+ add class level reset for Fog::AWS::Compute::Mock. thanks geemus
10
+ make mock delay comparison >= so that delay 0 will work properly. thanks geemus
11
+ respect security zone choice in mocked run_instances closes #314. thanks geemus
12
+ respect key_name in mocked run_instances. thanks geemus
13
+ fix instance format in tests. thanks geemus
14
+
15
+ [brightbox|compute]
16
+ fix format for account in tests. thanks geemus
17
+
18
+ [compute]
19
+ Test server reloading. thanks Aaron Suggs
20
+ consistency in #state call and mock test fixes. thanks geemus
21
+
22
+ [compute|aws]
23
+ Fix server tests. thanks Aaron Suggs
24
+ Mock get_password_data request. thanks Aaron Suggs
25
+ Fix default region when mocking. thanks Aaron Suggs
26
+ Better key_pair tests. thanks Aaron Suggs
27
+ Make volumes format more flexible. thanks Aaron Suggs
28
+
29
+ [core]
30
+ Fixed credential tests. thanks Aaron Suggs
31
+ Fix responds_to test helper. thanks Aaron Suggs
32
+ omit Release commits from changelog. thanks geemus
33
+ put changelog in clipboard to finish release. thanks geemus
34
+ more consistent redirector for fog.io. thanks geemus
35
+ create Fog.available_providers for bin rather than overriding Fog.providers. thanks geemus
36
+
37
+ [dnsimple|dns]
38
+ add dnsimple_url param to facilitate using https://test.dnsimple.com closes #323. thanks geemus
39
+
40
+ [docs]
41
+ first pass at compute doc. thanks geemus
42
+ update version in header/layout. thanks geemus
43
+ also build/deploy rdocs. thanks geemus
44
+ make fog.io/latest/foo link to newest versioned docs. thanks geemus
45
+
46
+ [ecloud]
47
+ mark bin specs pending unless credentials provided closes #325. thanks geemus
48
+
49
+ [local|storage]
50
+ fixes for pending mocked tests. thanks geemus
51
+
52
+ [misc]
53
+ Flatten list of security groups. thanks Dan Peterson
54
+ Added an example of the head method. thanks Larry Wright
55
+ Clarified my example. thanks Larry Wright
56
+ Add a link to fog's Rubydocs. thanks Mathias Meyer
57
+ :size should be a number in GB, not an instance size (e.g. t1.micro). thanks Michael Conigliaro
58
+ tests. thanks Nicholas Ricketts
59
+ added rdoc comments. thanks Nicholas Ricketts
60
+ Add Amazon API reference link to requests' documentation. thanks Peter Weldon
61
+ Add reset method to mock classes. thanks anomalousthought
62
+ Add a reset method to Fog::Mock that resets all providers/services. thanks anomalousthought
63
+ Add reset method to other providers in addition to Compute providers. thanks anomalousthought
64
+ Add a reset method to Fog::Mock that resets all providers/services in addition to Compute providers. thanks anomalousthought
65
+ Public key results are cached, avoid a bug by using that cache. thanks bigfleet
66
+ 0.8.1 changelog. thanks geemus
67
+ messy first pass at parallelization of testing. thanks geemus
68
+ fix deprecated rdoc rake tasks. thanks geemus
69
+ add mvp suggestion to changelog task. thanks geemus
70
+ started linode models. thanks nightshade427
71
+ added images models. thanks nightshade427
72
+ added kernel modes. thanks nightshade427
73
+ added datacenters models. thanks nightshade427
74
+ server provisioning completed. thanks nightshade427
75
+ server creation and deletion working. thanks nightshade427
76
+ generalize code. thanks nightshade427
77
+ creating via stackscripts with callbacks working. thanks nightshade427
78
+ added shutdown, reboot, boot. thanks nightshade427
79
+ made config private. thanks nightshade427
80
+ tests passing. thanks nightshade427
81
+ revert tests to proper error codes, waiting on fix from linode to support correct error codes. thanks nightshade427
82
+ code cleanup, tests passing. thanks nightshade427
83
+ more passing tests. thanks nightshade427
84
+ more test passing. thanks nightshade427
85
+ more test passing. thanks nightshade427
86
+ more test passing. thanks nightshade427
87
+ more test passing. thanks nightshade427
88
+ more test passing. thanks nightshade427
89
+
90
+ [mock]
91
+ fix Fog::Mock.reset. thanks Dan Peterson
92
+ error sooner for completely unimplemented services. thanks geemus
93
+ cleanup and reset related fixes. thanks geemus
94
+
95
+ [rackspace|compute]
96
+ make mocks respect Fog::Mock.delay. thanks geemus
97
+
98
+ [storage]
99
+ fix/consolidate content-length for utf8. thanks geemus
100
+
101
+ [tests]
102
+ add additional fake credentials for mocked tests. thanks geemus
103
+
104
+ [voxel|compute]
105
+ fix format for servers in tests. thanks geemus
106
+
107
+
1
108
  0.8.1 05/13/2011 3a452347a396f0ad1fea7f5475fb3c349b10f527
2
109
  =========================================================
3
110
 
@@ -22,10 +22,10 @@ Now we can start writing our script, first off we should require fog.
22
22
 
23
23
  Now in order to play with our data we need to setup a storage connection.
24
24
 
25
- storage = Fog::Storage.new(
25
+ storage = Fog::Storage.new({
26
26
  :local_root => '~/fog',
27
27
  :provider => 'Local',
28
- )
28
+ })
29
29
 
30
30
  `storage` will now contain our storage object, configured to use the Local provider from our specified directory.
31
31
 
@@ -70,11 +70,11 @@ Using the same interface you can also practice working against a real provider (
70
70
  This time we will turn on mocking and then, just like before, we will need to make a connection.
71
71
 
72
72
  Fog.mock!
73
- storage = Fog::Storage.new(
73
+ storage = Fog::Storage.new({
74
74
  :aws_access_key_id => 'fake_access_key_id',
75
75
  :aws_secret_access_key => 'fake_secret_access_key',
76
76
  :provider => 'AWS'
77
- )
77
+ })
78
78
 
79
79
  You may notice that we used bogus credentials, this is fine since we are just simulating things. To use real S3 you can simply omit `Fog.mock!` and swap in your real credentials.
80
80
 
@@ -5,6 +5,13 @@ title: Press
5
5
 
6
6
  Mentions and blog posts from elsewhere in reverse chronological order by day (and alphasorted for same days).
7
7
 
8
+ **June 21st, 2011**
9
+
10
+ * [Mocking fog When Using It With Carrierwave](http://www.engineyard.com/blog/2011/mocking-fog-when-using-it-with-carrierwave/)
11
+
12
+ **June 14th, 2011**
13
+
14
+ * [Backing Up Your Data With Fog](http://larrywright.me/blog/articles/221-backing-up-your-data-with-fog)
8
15
 
9
16
  **April 7th, 2011**
10
17
 
@@ -33,11 +33,11 @@ As an example, we'll try initializing and persisting a Rackspace Cloud server:
33
33
 
34
34
  require 'fog'
35
35
 
36
- compute = Fog::Compute.new(
36
+ compute = Fog::Compute.new({
37
37
  :provider => 'Rackspace',
38
38
  :rackspace_api_key => key,
39
39
  :rackspace_username => username
40
- )
40
+ })
41
41
 
42
42
  # boot a gentoo server (flavor 1 = 256, image 3 = gentoo 2008.0)
43
43
  server = compute.servers.create(:flavor_id => 1, :image_id => 3, :name => 'my_server')
@@ -75,4 +75,4 @@ Enabling mocking easy to use, before you run other commands, simply run:
75
75
 
76
76
  Fog.mock!
77
77
 
78
- Then proceed as usual, if you run into unimplemented mocks fog will raise an error and as always contributions are welcome!
78
+ Then proceed as usual, if you run into unimplemented mocks fog will raise an error and as always contributions are welcome!
@@ -25,11 +25,11 @@ First, create a connection with your new account:
25
25
  require 'fog'
26
26
 
27
27
  # create a connection
28
- connection = Fog::Compute.new(
28
+ connection = Fog::Compute.new({
29
29
  :provider => 'AWS',
30
30
  :aws_secret_access_key => YOUR_SECRET_ACCESS_KEY,
31
31
  :aws_access_key_id => YOUR_SECRET_ACCESS_KEY_ID
32
- )
32
+ })
33
33
 
34
34
  With that in hand we are ready to start making EC2 calls!
35
35
 
@@ -75,11 +75,11 @@ These return an array of results, where each has stdout, stderr and status value
75
75
  Rackspace has <a href="http://www.rackspacecloud.com/cloud_hosting_products/servers">Cloud Servers</a> and you can sign up <a href="https://www.rackspacecloud.com/signup">here</a> and get your credentials <a href="https://manage.rackspacecloud.com/APIAccess.do">here</a>.
76
76
 
77
77
  # create a connection
78
- connection = Fog::Compute.new(
78
+ connection = Fog::Compute.new({
79
79
  :provider => 'Rackspace',
80
80
  :rackspace_username => RACKSPACE_USERNAME,
81
81
  :rackspace_api_key => RACKSPACE_API_KEY
82
- )
82
+ })
83
83
 
84
84
  We will skip over learning how to do this the 'Rackspace Way' and instead jump right to using bootstrap to get their smallest Ubuntu 10.04 LTS server.
85
85
 
@@ -101,4 +101,4 @@ To cover your tracks its a good idea to check for running servers and shut them
101
101
 
102
102
  ## Summary
103
103
 
104
- Compute can be tricky, but the abstractions in fog make it much easier to get started. With your servers up and running you can then focus on the task at hand and get some work done. Congratulations on adding a new tool to your arsenal and let us know what we can do better.
104
+ Compute can be tricky, but the abstractions in fog make it much easier to get started. With your servers up and running you can then focus on the task at hand and get some work done. Congratulations on adding a new tool to your arsenal and let us know what we can do better.
@@ -21,7 +21,7 @@ For this first example we will use Zerigo (see below for how to use other provid
21
21
  :provider => 'Zerigo',
22
22
  :zerigo_email => ZERIGO_EMAIL,
23
23
  :zerigo_token => ZERIGO_TOKEN
24
- }
24
+ })
25
25
 
26
26
  ## Getting in the Zone
27
27
 
@@ -68,11 +68,11 @@ You can add more specifics if you need to, but reasonable defaults make it just
68
68
 
69
69
  If you already have an account with another service you can just as easily use this same code with different credentials. fog currently supports <a href="http://aws.amazon.com/route53/">AWS Route 53</a>, <a href="http://bluebox.net">Blue Box</a>, <a href="http://dnsimple.com">DNSimple</a>, <a href="http://www.linode.com">Linode</a>, <a href="http://www.slicehost.com">Slicehost</a> and <a href="http://www.zerigo.com/managed-dns">Zerigo</a>; so you can have your pick. As an example you can connect to AWS instead of Zerigo:
70
70
 
71
- dns = Fog::DNS.new(
71
+ dns = Fog::DNS.new({
72
72
  :provider => 'AWS',
73
73
  :aws_access_key_id => AWS_ACCESS_KEY_ID,
74
74
  :aws_secret_access_key => AWS_SECRET_ACCESS_KEY
75
- )
75
+ })
76
76
 
77
77
  ## Go Forth and Resolve
78
78