fog-maestrodev 1.8.0.20130114204828 → 1.14.0.20130806165225

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1713) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +2 -0
  3. data/.travis.yml +18 -2
  4. data/Gemfile +6 -1
  5. data/Gemfile.1.8.7 +10 -0
  6. data/README.md +54 -42
  7. data/Rakefile +21 -2
  8. data/benchs/load_times.rb +31 -0
  9. data/bin/fog +22 -0
  10. data/changelog.txt +2198 -0
  11. data/fog.gemspec +7 -7
  12. data/lib/fog.rb +44 -14
  13. data/lib/fog/account.rb +25 -0
  14. data/lib/fog/atmos/models/storage/file.rb +2 -2
  15. data/lib/fog/aws.rb +12 -2
  16. data/lib/fog/aws/auto_scaling.rb +15 -18
  17. data/lib/fog/aws/beanstalk.rb +8 -10
  18. data/lib/fog/aws/cloud_formation.rb +11 -12
  19. data/lib/fog/aws/compute.rb +9 -10
  20. data/lib/fog/aws/credential_fetcher.rb +7 -7
  21. data/lib/fog/aws/data_pipeline.rb +114 -0
  22. data/lib/fog/aws/dynamodb.rb +3 -3
  23. data/lib/fog/aws/elasticache.rb +16 -20
  24. data/lib/fog/aws/elb.rb +32 -31
  25. data/lib/fog/aws/elb/policy_types.rb +441 -430
  26. data/lib/fog/aws/iam.rb +13 -13
  27. data/lib/fog/aws/models/auto_scaling/activities.rb +11 -3
  28. data/lib/fog/aws/models/auto_scaling/group.rb +6 -3
  29. data/lib/fog/aws/models/auto_scaling/policies.rb +7 -3
  30. data/lib/fog/aws/models/beanstalk/environment.rb +6 -2
  31. data/lib/fog/aws/models/cdn/distributions.rb +2 -1
  32. data/lib/fog/aws/models/cdn/distributions_helper.rb +2 -1
  33. data/lib/fog/aws/models/cdn/streaming_distributions.rb +2 -1
  34. data/lib/fog/aws/models/compute/flavors.rb +1 -1
  35. data/lib/fog/aws/models/compute/server.rb +39 -33
  36. data/lib/fog/aws/models/compute/spot_request.rb +3 -11
  37. data/lib/fog/aws/models/compute/volume.rb +2 -1
  38. data/lib/fog/aws/models/data_pipeline/pipeline.rb +67 -0
  39. data/lib/fog/aws/models/data_pipeline/pipelines.rb +36 -0
  40. data/lib/fog/aws/models/dns/record.rb +1 -1
  41. data/lib/fog/aws/models/elb/backend_server_description.rb +11 -0
  42. data/lib/fog/aws/models/elb/backend_server_descriptions.rb +22 -0
  43. data/lib/fog/aws/models/elb/load_balancer.rb +15 -2
  44. data/lib/fog/aws/models/elb/policies.rb +28 -13
  45. data/lib/fog/aws/models/elb/policy.rb +20 -10
  46. data/lib/fog/aws/models/iam/role.rb +36 -0
  47. data/lib/fog/aws/models/iam/roles.rb +40 -0
  48. data/lib/fog/aws/models/iam/user.rb +1 -0
  49. data/lib/fog/aws/models/rds/log_file.rb +26 -0
  50. data/lib/fog/aws/models/rds/log_files.rb +50 -0
  51. data/lib/fog/aws/models/rds/server.rb +4 -1
  52. data/lib/fog/aws/models/rds/snapshot.rb +1 -0
  53. data/lib/fog/aws/models/rds/snapshots.rb +26 -3
  54. data/lib/fog/aws/models/storage/directories.rb +1 -1
  55. data/lib/fog/aws/models/storage/directory.rb +20 -17
  56. data/lib/fog/aws/models/storage/file.rb +6 -7
  57. data/lib/fog/aws/models/storage/files.rb +6 -6
  58. data/lib/fog/aws/parsers/auto_scaling/describe_policies.rb +5 -5
  59. data/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb +11 -0
  60. data/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb +32 -0
  61. data/lib/fog/aws/parsers/cloud_formation/list_stacks.rb +34 -0
  62. data/lib/fog/aws/parsers/cloud_watch/list_metrics.rb +1 -1
  63. data/lib/fog/aws/parsers/compute/copy_image.rb +22 -0
  64. data/lib/fog/aws/parsers/compute/describe_instances.rb +19 -5
  65. data/lib/fog/aws/parsers/compute/run_instances.rb +5 -4
  66. data/lib/fog/aws/parsers/compute/spot_instance_requests.rb +2 -0
  67. data/lib/fog/aws/parsers/dns/get_hosted_zone.rb +2 -0
  68. data/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb +37 -0
  69. data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +44 -13
  70. data/lib/fog/aws/parsers/iam/get_user.rb +2 -0
  71. data/lib/fog/aws/parsers/iam/list_users.rb +2 -0
  72. data/lib/fog/aws/parsers/rds/db_parser.rb +27 -5
  73. data/lib/fog/aws/parsers/rds/describe_db_log_files.rb +44 -0
  74. data/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb +26 -0
  75. data/lib/fog/aws/parsers/ses/verify_domain_identity.rb +26 -0
  76. data/lib/fog/aws/parsers/storage/complete_multipart_upload.rb +1 -1
  77. data/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb +45 -11
  78. data/lib/fog/aws/parsers/sts/assume_role.rb +30 -0
  79. data/lib/fog/aws/rds.rb +27 -14
  80. data/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb +8 -0
  81. data/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb +8 -1
  82. data/lib/fog/aws/requests/cdn/delete_distribution.rb +5 -7
  83. data/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb +5 -7
  84. data/lib/fog/aws/requests/cdn/get_distribution.rb +28 -31
  85. data/lib/fog/aws/requests/cdn/get_distribution_list.rb +29 -33
  86. data/lib/fog/aws/requests/cdn/get_invalidation.rb +15 -13
  87. data/lib/fog/aws/requests/cdn/get_invalidation_list.rb +15 -17
  88. data/lib/fog/aws/requests/cdn/get_streaming_distribution.rb +23 -26
  89. data/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb +29 -33
  90. data/lib/fog/aws/requests/cdn/post_distribution.rb +40 -42
  91. data/lib/fog/aws/requests/cdn/post_invalidation.rb +14 -18
  92. data/lib/fog/aws/requests/cdn/post_streaming_distribution.rb +28 -30
  93. data/lib/fog/aws/requests/cdn/put_distribution_config.rb +42 -44
  94. data/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb +31 -33
  95. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +33 -20
  96. data/lib/fog/aws/requests/cloud_formation/delete_stack.rb +5 -8
  97. data/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb +19 -22
  98. data/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb +18 -21
  99. data/lib/fog/aws/requests/cloud_formation/describe_stacks.rb +18 -21
  100. data/lib/fog/aws/requests/cloud_formation/get_template.rb +7 -10
  101. data/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb +36 -0
  102. data/lib/fog/aws/requests/cloud_formation/list_stacks.rb +37 -0
  103. data/lib/fog/aws/requests/cloud_formation/update_stack.rb +11 -15
  104. data/lib/fog/aws/requests/cloud_formation/validate_template.rb +9 -12
  105. data/lib/fog/aws/requests/compute/associate_address.rb +13 -7
  106. data/lib/fog/aws/requests/compute/copy_image.rb +63 -0
  107. data/lib/fog/aws/requests/compute/create_volume.rb +3 -3
  108. data/lib/fog/aws/requests/compute/describe_instances.rb +1 -1
  109. data/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb +16 -2
  110. data/lib/fog/aws/requests/compute/describe_security_groups.rb +2 -2
  111. data/lib/fog/aws/requests/compute/request_spot_instances.rb +1 -0
  112. data/lib/fog/aws/requests/compute/run_instances.rb +3 -1
  113. data/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb +35 -0
  114. data/lib/fog/aws/requests/data_pipeline/create_pipeline.rb +41 -0
  115. data/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb +35 -0
  116. data/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb +36 -0
  117. data/lib/fog/aws/requests/data_pipeline/list_pipelines.rb +36 -0
  118. data/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb +72 -0
  119. data/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb +42 -0
  120. data/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb +0 -2
  121. data/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb +0 -2
  122. data/lib/fog/aws/requests/elb/create_load_balancer.rb +17 -0
  123. data/lib/fog/aws/requests/elb/create_load_balancer_policy.rb +11 -8
  124. data/lib/fog/aws/requests/elb/describe_load_balancers.rb +21 -1
  125. data/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb +67 -0
  126. data/lib/fog/aws/requests/iam/create_user.rb +5 -4
  127. data/lib/fog/aws/requests/iam/get_user.rb +5 -4
  128. data/lib/fog/aws/requests/iam/list_users.rb +5 -4
  129. data/lib/fog/aws/requests/iam/update_server_certificate.rb +27 -0
  130. data/lib/fog/aws/requests/rds/create_db_instance.rb +28 -26
  131. data/lib/fog/aws/requests/rds/describe_db_instances.rb +8 -9
  132. data/lib/fog/aws/requests/rds/describe_db_log_files.rb +67 -0
  133. data/lib/fog/aws/requests/rds/download_db_logfile_portion.rb +63 -0
  134. data/lib/fog/aws/requests/ses/send_raw_email.rb +1 -1
  135. data/lib/fog/aws/requests/ses/verify_domain_identity.rb +30 -0
  136. data/lib/fog/aws/requests/storage/abort_multipart_upload.rb +3 -3
  137. data/lib/fog/aws/requests/storage/complete_multipart_upload.rb +8 -4
  138. data/lib/fog/aws/requests/storage/copy_object.rb +2 -2
  139. data/lib/fog/aws/requests/storage/delete_bucket.rb +1 -1
  140. data/lib/fog/aws/requests/storage/delete_bucket_cors.rb +1 -1
  141. data/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb +1 -1
  142. data/lib/fog/aws/requests/storage/delete_bucket_policy.rb +1 -1
  143. data/lib/fog/aws/requests/storage/delete_bucket_website.rb +1 -1
  144. data/lib/fog/aws/requests/storage/delete_multiple_objects.rb +1 -1
  145. data/lib/fog/aws/requests/storage/delete_object.rb +1 -1
  146. data/lib/fog/aws/requests/storage/get_bucket.rb +1 -1
  147. data/lib/fog/aws/requests/storage/get_bucket_acl.rb +1 -1
  148. data/lib/fog/aws/requests/storage/get_bucket_cors.rb +1 -1
  149. data/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb +1 -1
  150. data/lib/fog/aws/requests/storage/get_bucket_location.rb +1 -1
  151. data/lib/fog/aws/requests/storage/get_bucket_logging.rb +1 -1
  152. data/lib/fog/aws/requests/storage/get_bucket_object_versions.rb +1 -1
  153. data/lib/fog/aws/requests/storage/get_bucket_policy.rb +1 -1
  154. data/lib/fog/aws/requests/storage/get_bucket_versioning.rb +1 -1
  155. data/lib/fog/aws/requests/storage/get_bucket_website.rb +1 -1
  156. data/lib/fog/aws/requests/storage/get_object.rb +8 -4
  157. data/lib/fog/aws/requests/storage/get_object_acl.rb +2 -2
  158. data/lib/fog/aws/requests/storage/get_object_http_url.rb +1 -19
  159. data/lib/fog/aws/requests/storage/get_object_torrent.rb +2 -2
  160. data/lib/fog/aws/requests/storage/get_object_url.rb +5 -14
  161. data/lib/fog/aws/requests/storage/get_request_payment.rb +1 -1
  162. data/lib/fog/aws/requests/storage/get_service.rb +1 -2
  163. data/lib/fog/aws/requests/storage/head_object.rb +2 -5
  164. data/lib/fog/aws/requests/storage/initiate_multipart_upload.rb +3 -5
  165. data/lib/fog/aws/requests/storage/list_multipart_uploads.rb +27 -33
  166. data/lib/fog/aws/requests/storage/list_parts.rb +27 -31
  167. data/lib/fog/aws/requests/storage/post_object_hidden_fields.rb +15 -17
  168. data/lib/fog/aws/requests/storage/post_object_restore.rb +54 -0
  169. data/lib/fog/aws/requests/storage/put_bucket.rb +9 -12
  170. data/lib/fog/aws/requests/storage/put_bucket_acl.rb +16 -18
  171. data/lib/fog/aws/requests/storage/put_bucket_cors.rb +11 -13
  172. data/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb +45 -16
  173. data/lib/fog/aws/requests/storage/put_bucket_logging.rb +14 -16
  174. data/lib/fog/aws/requests/storage/put_bucket_policy.rb +4 -6
  175. data/lib/fog/aws/requests/storage/put_bucket_versioning.rb +4 -6
  176. data/lib/fog/aws/requests/storage/put_bucket_website.rb +6 -8
  177. data/lib/fog/aws/requests/storage/put_object.rb +21 -24
  178. data/lib/fog/aws/requests/storage/put_object_acl.rb +19 -21
  179. data/lib/fog/aws/requests/storage/put_object_url.rb +11 -16
  180. data/lib/fog/aws/requests/storage/put_request_payment.rb +4 -6
  181. data/lib/fog/aws/requests/storage/upload_part.rb +14 -17
  182. data/lib/fog/aws/requests/sts/assume_role.rb +46 -0
  183. data/lib/fog/aws/ses.rb +26 -9
  184. data/lib/fog/aws/storage.rb +204 -97
  185. data/lib/fog/aws/sts.rb +31 -21
  186. data/lib/fog/billing.rb +23 -0
  187. data/lib/fog/bin.rb +6 -2
  188. data/lib/fog/bin/aws.rb +4 -0
  189. data/lib/fog/bin/bluebox.rb +2 -0
  190. data/lib/fog/bin/cloudsigma.rb +29 -0
  191. data/lib/fog/bin/digitalocean.rb +31 -0
  192. data/lib/fog/bin/dreamhost.rb +31 -0
  193. data/lib/fog/bin/google.rb +47 -1
  194. data/lib/fog/bin/hp.rb +7 -0
  195. data/lib/fog/bin/internet_archive.rb +34 -0
  196. data/lib/fog/bin/openstack.rb +22 -2
  197. data/lib/fog/bin/openvz.rb +31 -0
  198. data/lib/fog/bin/rackspace.rb +11 -0
  199. data/lib/fog/bin/riakcs.rb +27 -0
  200. data/lib/fog/bluebox.rb +1 -0
  201. data/lib/fog/bluebox/blb.rb +85 -0
  202. data/lib/fog/bluebox/models/blb/lb_application.rb +32 -0
  203. data/lib/fog/bluebox/models/blb/lb_applications.rb +26 -0
  204. data/lib/fog/bluebox/models/blb/lb_backend.rb +22 -0
  205. data/lib/fog/bluebox/models/blb/lb_backends.rb +30 -0
  206. data/lib/fog/bluebox/models/blb/lb_service.rb +35 -0
  207. data/lib/fog/bluebox/models/blb/lb_services.rb +29 -0
  208. data/lib/fog/bluebox/models/compute/server.rb +3 -1
  209. data/lib/fog/bluebox/models/dns/zone.rb +1 -1
  210. data/lib/fog/bluebox/requests/blb/add_machine_to_lb_application.rb +33 -0
  211. data/lib/fog/bluebox/requests/blb/add_machine_to_lb_backend.rb +31 -0
  212. data/lib/fog/bluebox/requests/blb/get_lb_application.rb +33 -0
  213. data/lib/fog/bluebox/requests/blb/get_lb_applications.rb +31 -0
  214. data/lib/fog/bluebox/requests/blb/get_lb_backend.rb +36 -0
  215. data/lib/fog/bluebox/requests/blb/get_lb_backends.rb +36 -0
  216. data/lib/fog/bluebox/requests/blb/get_lb_machine.rb +35 -0
  217. data/lib/fog/bluebox/requests/blb/get_lb_machines.rb +35 -0
  218. data/lib/fog/bluebox/requests/blb/get_lb_service.rb +36 -0
  219. data/lib/fog/bluebox/requests/blb/get_lb_services.rb +36 -0
  220. data/lib/fog/bluebox/requests/blb/remove_machine_from_lb_backend.rb +28 -0
  221. data/lib/fog/bluebox/requests/blb/update_lb_backend_machine.rb +29 -0
  222. data/lib/fog/brightbox/compute.rb +36 -236
  223. data/lib/fog/brightbox/compute/image_selector.rb +45 -0
  224. data/lib/fog/brightbox/compute/shared.rb +232 -0
  225. data/lib/fog/brightbox/models/compute/collaboration.rb +43 -0
  226. data/lib/fog/brightbox/models/compute/collaborations.rb +23 -0
  227. data/lib/fog/brightbox/models/compute/user_collaboration.rb +29 -0
  228. data/lib/fog/brightbox/models/compute/user_collaborations.rb +23 -0
  229. data/lib/fog/brightbox/oauth2.rb +5 -3
  230. data/lib/fog/brightbox/requests/compute/accept_user_collaboration.rb +21 -0
  231. data/lib/fog/brightbox/requests/compute/activate_console_server.rb +1 -1
  232. data/lib/fog/brightbox/requests/compute/add_listeners_load_balancer.rb +2 -1
  233. data/lib/fog/brightbox/requests/compute/add_nodes_load_balancer.rb +2 -1
  234. data/lib/fog/brightbox/requests/compute/add_servers_server_group.rb +11 -3
  235. data/lib/fog/brightbox/requests/compute/apply_to_firewall_policy.rb +2 -1
  236. data/lib/fog/brightbox/requests/compute/create_api_client.rb +2 -1
  237. data/lib/fog/brightbox/requests/compute/create_application.rb +2 -1
  238. data/lib/fog/brightbox/requests/compute/create_cloud_ip.rb +2 -1
  239. data/lib/fog/brightbox/requests/compute/create_collaboration.rb +23 -0
  240. data/lib/fog/brightbox/requests/compute/create_firewall_policy.rb +3 -1
  241. data/lib/fog/brightbox/requests/compute/create_firewall_rule.rb +2 -1
  242. data/lib/fog/brightbox/requests/compute/create_image.rb +2 -1
  243. data/lib/fog/brightbox/requests/compute/create_load_balancer.rb +2 -1
  244. data/lib/fog/brightbox/requests/compute/create_server.rb +2 -1
  245. data/lib/fog/brightbox/requests/compute/create_server_group.rb +2 -1
  246. data/lib/fog/brightbox/requests/compute/{destroy_api_client.rb → delete_api_client.rb} +10 -3
  247. data/lib/fog/brightbox/requests/compute/{destroy_application.rb → delete_application.rb} +10 -3
  248. data/lib/fog/brightbox/requests/compute/{destroy_cloud_ip.rb → delete_cloud_ip.rb} +10 -3
  249. data/lib/fog/brightbox/requests/compute/delete_collaboration.rb +28 -0
  250. data/lib/fog/brightbox/requests/compute/{destroy_firewall_policy.rb → delete_firewall_policy.rb} +10 -3
  251. data/lib/fog/brightbox/requests/compute/{destroy_firewall_rule.rb → delete_firewall_rule.rb} +10 -3
  252. data/lib/fog/brightbox/requests/compute/{destroy_image.rb → delete_image.rb} +10 -3
  253. data/lib/fog/brightbox/requests/compute/{destroy_load_balancer.rb → delete_load_balancer.rb} +10 -3
  254. data/lib/fog/brightbox/requests/compute/{destroy_server.rb → delete_server.rb} +10 -3
  255. data/lib/fog/brightbox/requests/compute/{destroy_server_group.rb → delete_server_group.rb} +10 -3
  256. data/lib/fog/brightbox/requests/compute/delete_user_collaboration.rb +28 -0
  257. data/lib/fog/brightbox/requests/compute/destroy_user_collaboration.rb +21 -0
  258. data/lib/fog/brightbox/requests/compute/get_account.rb +1 -1
  259. data/lib/fog/brightbox/requests/compute/get_api_client.rb +1 -1
  260. data/lib/fog/brightbox/requests/compute/get_application.rb +1 -1
  261. data/lib/fog/brightbox/requests/compute/get_cloud_ip.rb +1 -1
  262. data/lib/fog/brightbox/requests/compute/get_collaboration.rb +21 -0
  263. data/lib/fog/brightbox/requests/compute/get_firewall_policy.rb +1 -1
  264. data/lib/fog/brightbox/requests/compute/get_firewall_rule.rb +1 -1
  265. data/lib/fog/brightbox/requests/compute/get_image.rb +1 -1
  266. data/lib/fog/brightbox/requests/compute/get_interface.rb +1 -1
  267. data/lib/fog/brightbox/requests/compute/get_load_balancer.rb +1 -1
  268. data/lib/fog/brightbox/requests/compute/get_server.rb +1 -1
  269. data/lib/fog/brightbox/requests/compute/get_server_group.rb +1 -1
  270. data/lib/fog/brightbox/requests/compute/get_server_type.rb +1 -1
  271. data/lib/fog/brightbox/requests/compute/get_user.rb +1 -1
  272. data/lib/fog/brightbox/requests/compute/get_user_collaboration.rb +21 -0
  273. data/lib/fog/brightbox/requests/compute/get_zone.rb +1 -1
  274. data/lib/fog/brightbox/requests/compute/list_accounts.rb +1 -1
  275. data/lib/fog/brightbox/requests/compute/list_api_clients.rb +1 -1
  276. data/lib/fog/brightbox/requests/compute/list_applications.rb +1 -1
  277. data/lib/fog/brightbox/requests/compute/list_cloud_ips.rb +1 -1
  278. data/lib/fog/brightbox/requests/compute/list_collaborations.rb +19 -0
  279. data/lib/fog/brightbox/requests/compute/list_firewall_policies.rb +1 -1
  280. data/lib/fog/brightbox/requests/compute/list_images.rb +1 -1
  281. data/lib/fog/brightbox/requests/compute/list_load_balancers.rb +1 -1
  282. data/lib/fog/brightbox/requests/compute/list_server_groups.rb +1 -1
  283. data/lib/fog/brightbox/requests/compute/list_server_types.rb +1 -1
  284. data/lib/fog/brightbox/requests/compute/list_servers.rb +1 -1
  285. data/lib/fog/brightbox/requests/compute/list_user_collaborations.rb +19 -0
  286. data/lib/fog/brightbox/requests/compute/list_users.rb +1 -1
  287. data/lib/fog/brightbox/requests/compute/list_zones.rb +1 -1
  288. data/lib/fog/brightbox/requests/compute/map_cloud_ip.rb +2 -1
  289. data/lib/fog/brightbox/requests/compute/move_servers_server_group.rb +12 -3
  290. data/lib/fog/brightbox/requests/compute/reject_user_collaboration.rb +21 -0
  291. data/lib/fog/brightbox/requests/compute/remove_firewall_policy.rb +2 -1
  292. data/lib/fog/brightbox/requests/compute/remove_listeners_load_balancer.rb +2 -1
  293. data/lib/fog/brightbox/requests/compute/remove_nodes_load_balancer.rb +2 -1
  294. data/lib/fog/brightbox/requests/compute/remove_servers_server_group.rb +11 -3
  295. data/lib/fog/brightbox/requests/compute/resend_collaboration.rb +21 -0
  296. data/lib/fog/brightbox/requests/compute/reset_ftp_password_account.rb +2 -2
  297. data/lib/fog/brightbox/requests/compute/reset_secret_api_client.rb +1 -2
  298. data/lib/fog/brightbox/requests/compute/reset_secret_application.rb +1 -1
  299. data/lib/fog/brightbox/requests/compute/shutdown_server.rb +1 -1
  300. data/lib/fog/brightbox/requests/compute/snapshot_server.rb +1 -1
  301. data/lib/fog/brightbox/requests/compute/start_server.rb +1 -1
  302. data/lib/fog/brightbox/requests/compute/stop_server.rb +1 -1
  303. data/lib/fog/brightbox/requests/compute/unmap_cloud_ip.rb +1 -1
  304. data/lib/fog/brightbox/requests/compute/update_account.rb +2 -1
  305. data/lib/fog/brightbox/requests/compute/update_api_client.rb +2 -1
  306. data/lib/fog/brightbox/requests/compute/update_application.rb +2 -1
  307. data/lib/fog/brightbox/requests/compute/update_cloud_ip.rb +2 -1
  308. data/lib/fog/brightbox/requests/compute/update_firewall_policy.rb +26 -0
  309. data/lib/fog/brightbox/requests/compute/update_firewall_rule.rb +2 -1
  310. data/lib/fog/brightbox/requests/compute/update_image.rb +2 -1
  311. data/lib/fog/brightbox/requests/compute/update_load_balancer.rb +2 -1
  312. data/lib/fog/brightbox/requests/compute/update_scoped_account.rb +2 -1
  313. data/lib/fog/brightbox/requests/compute/update_server.rb +3 -1
  314. data/lib/fog/brightbox/requests/compute/update_server_group.rb +2 -1
  315. data/lib/fog/brightbox/requests/compute/update_user.rb +2 -1
  316. data/lib/fog/cdn.rb +5 -12
  317. data/lib/fog/cloudsigma.rb +9 -0
  318. data/lib/fog/cloudsigma/compute.rb +221 -0
  319. data/lib/fog/cloudsigma/connection.rb +197 -0
  320. data/lib/fog/cloudsigma/docs/getting_started.md +59 -0
  321. data/lib/fog/cloudsigma/error.rb +45 -0
  322. data/lib/fog/cloudsigma/mock_data.rb +46 -0
  323. data/lib/fog/cloudsigma/models/balance.rb +12 -0
  324. data/lib/fog/cloudsigma/models/current_usage.rb +19 -0
  325. data/lib/fog/cloudsigma/models/ip.rb +22 -0
  326. data/lib/fog/cloudsigma/models/ipconf.rb +12 -0
  327. data/lib/fog/cloudsigma/models/ips.rb +27 -0
  328. data/lib/fog/cloudsigma/models/lib_volume.rb +50 -0
  329. data/lib/fog/cloudsigma/models/lib_volumes.rb +27 -0
  330. data/lib/fog/cloudsigma/models/mountpoint.rb +25 -0
  331. data/lib/fog/cloudsigma/models/nic.rb +22 -0
  332. data/lib/fog/cloudsigma/models/obj_ref.rb +12 -0
  333. data/lib/fog/cloudsigma/models/price_calculation.rb +13 -0
  334. data/lib/fog/cloudsigma/models/price_record.rb +38 -0
  335. data/lib/fog/cloudsigma/models/pricing.rb +20 -0
  336. data/lib/fog/cloudsigma/models/profile.rb +50 -0
  337. data/lib/fog/cloudsigma/models/server.rb +208 -0
  338. data/lib/fog/cloudsigma/models/servers.rb +27 -0
  339. data/lib/fog/cloudsigma/models/subscription.rb +53 -0
  340. data/lib/fog/cloudsigma/models/subscriptions.rb +41 -0
  341. data/lib/fog/cloudsigma/models/usage_record.rb +13 -0
  342. data/lib/fog/cloudsigma/models/vlan.rb +29 -0
  343. data/lib/fog/cloudsigma/models/vlans.rb +27 -0
  344. data/lib/fog/cloudsigma/models/volume.rb +71 -0
  345. data/lib/fog/cloudsigma/models/volumes.rb +27 -0
  346. data/lib/fog/cloudsigma/nested_model.rb +60 -0
  347. data/lib/fog/cloudsigma/requests/calculate_subscription_price.rb +18 -0
  348. data/lib/fog/cloudsigma/requests/clone_libvolume.rb +32 -0
  349. data/lib/fog/cloudsigma/requests/clone_server.rb +32 -0
  350. data/lib/fog/cloudsigma/requests/clone_volume.rb +32 -0
  351. data/lib/fog/cloudsigma/requests/close_vnc.rb +30 -0
  352. data/lib/fog/cloudsigma/requests/create_server.rb +33 -0
  353. data/lib/fog/cloudsigma/requests/create_subscription.rb +40 -0
  354. data/lib/fog/cloudsigma/requests/create_volume.rb +30 -0
  355. data/lib/fog/cloudsigma/requests/delete_server.rb +18 -0
  356. data/lib/fog/cloudsigma/requests/delete_volume.rb +18 -0
  357. data/lib/fog/cloudsigma/requests/extend_subscription.rb +22 -0
  358. data/lib/fog/cloudsigma/requests/get_balance.rb +18 -0
  359. data/lib/fog/cloudsigma/requests/get_current_usage.rb +18 -0
  360. data/lib/fog/cloudsigma/requests/get_ip.rb +18 -0
  361. data/lib/fog/cloudsigma/requests/get_lib_volume.rb +18 -0
  362. data/lib/fog/cloudsigma/requests/get_pricing.rb +28 -0
  363. data/lib/fog/cloudsigma/requests/get_profile.rb +18 -0
  364. data/lib/fog/cloudsigma/requests/get_server.rb +18 -0
  365. data/lib/fog/cloudsigma/requests/get_subscription.rb +18 -0
  366. data/lib/fog/cloudsigma/requests/get_vlan.rb +18 -0
  367. data/lib/fog/cloudsigma/requests/get_volume.rb +18 -0
  368. data/lib/fog/cloudsigma/requests/list_ips.rb +18 -0
  369. data/lib/fog/cloudsigma/requests/list_lib_volumes.rb +18 -0
  370. data/lib/fog/cloudsigma/requests/list_servers.rb +18 -0
  371. data/lib/fog/cloudsigma/requests/list_subscriptions.rb +18 -0
  372. data/lib/fog/cloudsigma/requests/list_vlans.rb +18 -0
  373. data/lib/fog/cloudsigma/requests/list_volumes.rb +18 -0
  374. data/lib/fog/cloudsigma/requests/open_vnc.rb +34 -0
  375. data/lib/fog/cloudsigma/requests/start_server.rb +32 -0
  376. data/lib/fog/cloudsigma/requests/stop_server.rb +33 -0
  377. data/lib/fog/cloudsigma/requests/update_profile.rb +18 -0
  378. data/lib/fog/cloudsigma/requests/update_server.rb +40 -0
  379. data/lib/fog/cloudsigma/requests/update_vlan.rb +20 -0
  380. data/lib/fog/cloudsigma/requests/update_volume.rb +18 -0
  381. data/lib/fog/cloudstack/compute.rb +72 -1
  382. data/lib/fog/cloudstack/models/compute/disk_offering.rb +46 -0
  383. data/lib/fog/cloudstack/models/compute/disk_offerings.rb +27 -0
  384. data/lib/fog/cloudstack/models/compute/image.rb +1 -1
  385. data/lib/fog/cloudstack/models/compute/servers.rb +6 -4
  386. data/lib/fog/cloudstack/models/compute/snapshot.rb +46 -0
  387. data/lib/fog/cloudstack/models/compute/snapshots.rb +25 -0
  388. data/lib/fog/cloudstack/requests/compute/create_disk_offering.rb +51 -0
  389. data/lib/fog/cloudstack/requests/compute/create_snapshot.rb +24 -0
  390. data/lib/fog/cloudstack/requests/compute/delete_disk_offering.rb +31 -0
  391. data/lib/fog/cloudstack/requests/compute/delete_snapshot.rb +44 -2
  392. data/lib/fog/cloudstack/requests/compute/list_disk_offerings.rb +9 -0
  393. data/lib/fog/cloudstack/requests/compute/list_os_types.rb +9 -0
  394. data/lib/fog/cloudstack/requests/compute/list_snapshots.rb +21 -0
  395. data/lib/fog/compute.rb +7 -65
  396. data/lib/fog/compute/models/server.rb +21 -16
  397. data/lib/fog/core.rb +18 -7
  398. data/lib/fog/core/attributes.rb +1 -1
  399. data/lib/fog/core/connection.rb +62 -25
  400. data/lib/fog/core/deprecated/connection.rb +24 -0
  401. data/lib/fog/core/errors.rb +10 -1
  402. data/lib/fog/core/logger.rb +2 -0
  403. data/lib/fog/core/mock.rb +16 -0
  404. data/lib/fog/core/model.rb +12 -11
  405. data/lib/fog/core/parser.rb +14 -1
  406. data/lib/fog/core/scp.rb +4 -3
  407. data/lib/fog/core/service.rb +1 -1
  408. data/lib/fog/core/ssh.rb +1 -0
  409. data/lib/fog/digitalocean.rb +9 -0
  410. data/lib/fog/digitalocean/CHANGELOG.md +6 -0
  411. data/lib/fog/digitalocean/compute.rb +136 -0
  412. data/lib/fog/digitalocean/examples/getting_started.md +106 -0
  413. data/lib/fog/digitalocean/models/compute/flavor.rb +14 -0
  414. data/lib/fog/digitalocean/models/compute/flavors.rb +25 -0
  415. data/lib/fog/digitalocean/models/compute/image.rb +15 -0
  416. data/lib/fog/digitalocean/models/compute/images.rb +25 -0
  417. data/lib/fog/digitalocean/models/compute/region.rb +14 -0
  418. data/lib/fog/digitalocean/models/compute/regions.rb +25 -0
  419. data/lib/fog/digitalocean/models/compute/server.rb +179 -0
  420. data/lib/fog/digitalocean/models/compute/servers.rb +50 -0
  421. data/lib/fog/digitalocean/models/compute/ssh_key.rb +28 -0
  422. data/lib/fog/digitalocean/models/compute/ssh_keys.rb +26 -0
  423. data/lib/fog/digitalocean/requests/compute/create_server.rb +70 -0
  424. data/lib/fog/digitalocean/requests/compute/create_ssh_key.rb +38 -0
  425. data/lib/fog/digitalocean/requests/compute/destroy_server.rb +37 -0
  426. data/lib/fog/digitalocean/requests/compute/destroy_ssh_key.rb +37 -0
  427. data/lib/fog/digitalocean/requests/compute/get_server_details.rb +35 -0
  428. data/lib/fog/digitalocean/requests/compute/get_ssh_key.rb +39 -0
  429. data/lib/fog/digitalocean/requests/compute/list_flavors.rb +38 -0
  430. data/lib/fog/digitalocean/requests/compute/list_images.rb +49 -0
  431. data/lib/fog/digitalocean/requests/compute/list_regions.rb +34 -0
  432. data/lib/fog/digitalocean/requests/compute/list_servers.rb +31 -0
  433. data/lib/fog/digitalocean/requests/compute/list_ssh_keys.rb +31 -0
  434. data/lib/fog/digitalocean/requests/compute/power_cycle_server.rb +33 -0
  435. data/lib/fog/digitalocean/requests/compute/power_off_server.rb +33 -0
  436. data/lib/fog/digitalocean/requests/compute/power_on_server.rb +33 -0
  437. data/lib/fog/digitalocean/requests/compute/reboot_server.rb +33 -0
  438. data/lib/fog/digitalocean/requests/compute/shutdown_server.rb +36 -0
  439. data/lib/fog/dns.rb +8 -24
  440. data/lib/fog/dnsimple/dns.rb +4 -1
  441. data/lib/fog/dnsimple/models/dns/record.rb +3 -4
  442. data/lib/fog/dnsimple/requests/dns/create_domain.rb +36 -0
  443. data/lib/fog/dnsimple/requests/dns/create_record.rb +27 -0
  444. data/lib/fog/dnsimple/requests/dns/delete_domain.rb +12 -0
  445. data/lib/fog/dnsimple/requests/dns/delete_record.rb +12 -0
  446. data/lib/fog/dnsimple/requests/dns/get_domain.rb +12 -0
  447. data/lib/fog/dnsimple/requests/dns/get_record.rb +24 -0
  448. data/lib/fog/dnsimple/requests/dns/list_domains.rb +12 -0
  449. data/lib/fog/dnsimple/requests/dns/list_records.rb +12 -0
  450. data/lib/fog/dnsimple/requests/dns/update_record.rb +20 -0
  451. data/lib/fog/dnsmadeeasy/models/dns/record.rb +1 -1
  452. data/lib/fog/dreamhost.rb +11 -0
  453. data/lib/fog/dreamhost/CHANGELOG.md +8 -0
  454. data/lib/fog/dreamhost/dns.rb +86 -0
  455. data/lib/fog/dreamhost/examples/dns/getting_started.md +105 -0
  456. data/lib/fog/dreamhost/models/dns/record.rb +35 -0
  457. data/lib/fog/dreamhost/models/dns/records.rb +38 -0
  458. data/lib/fog/dreamhost/models/dns/zone.rb +59 -0
  459. data/lib/fog/dreamhost/models/dns/zones.rb +41 -0
  460. data/lib/fog/dreamhost/requests/dns/create_record.rb +32 -0
  461. data/lib/fog/dreamhost/requests/dns/delete_record.rb +31 -0
  462. data/lib/fog/dreamhost/requests/dns/list_records.rb +25 -0
  463. data/lib/fog/dynect/models/dns/zone.rb +1 -1
  464. data/lib/fog/ecloud/models/compute/detached_disks.rb +3 -7
  465. data/lib/fog/ecloud/models/compute/internet_services.rb +1 -5
  466. data/lib/fog/ecloud/models/compute/ip_address.rb +2 -2
  467. data/lib/fog/ecloud/models/compute/network.rb +1 -1
  468. data/lib/fog/ecloud/models/compute/nodes.rb +1 -5
  469. data/lib/fog/ecloud/models/compute/public_ips.rb +1 -5
  470. data/lib/fog/ecloud/models/compute/servers.rb +2 -6
  471. data/lib/fog/ecloud/models/compute/virtual_machine_assigned_ip.rb +2 -2
  472. data/lib/fog/ecloud/models/compute/virtual_machine_assigned_ips.rb +2 -2
  473. data/lib/fog/ecloud/requests/compute/get_detached_disk.rb +1 -1
  474. data/lib/fog/ecloud/requests/compute/get_internet_service.rb +1 -1
  475. data/lib/fog/ecloud/requests/compute/get_node.rb +1 -1
  476. data/lib/fog/ecloud/requests/compute/get_public_ip.rb +1 -1
  477. data/lib/fog/ecloud/requests/compute/get_server.rb +1 -1
  478. data/lib/fog/ecloud/requests/compute/virtual_machine_create_from_template.rb +1 -1
  479. data/lib/fog/glesys/compute.rb +5 -1
  480. data/lib/fog/glesys/models/compute/ip.rb +47 -46
  481. data/lib/fog/glesys/models/compute/ips.rb +95 -12
  482. data/lib/fog/glesys/models/compute/server.rb +72 -5
  483. data/lib/fog/glesys/models/compute/servers.rb +7 -1
  484. data/lib/fog/glesys/models/compute/template.rb +8 -16
  485. data/lib/fog/glesys/models/compute/templates.rb +23 -5
  486. data/lib/fog/glesys/requests/compute/ip_details.rb +2 -2
  487. data/lib/fog/glesys/requests/compute/server_details.rb +2 -2
  488. data/lib/fog/glesys/requests/compute/template_list.rb +2 -2
  489. data/lib/fog/google.rb +1 -0
  490. data/lib/fog/google/README.md +28 -0
  491. data/lib/fog/google/Rakefile +17 -0
  492. data/lib/fog/google/compute.rb +162 -0
  493. data/lib/fog/google/examples/bootstrap.rb +9 -0
  494. data/lib/fog/google/examples/create.rb +37 -0
  495. data/lib/fog/google/examples/eric-fail.rb +19 -0
  496. data/lib/fog/google/examples/launch_micro_instance.rb +21 -0
  497. data/lib/fog/google/examples/metadata.rb +18 -0
  498. data/lib/fog/google/models/compute/disk.rb +80 -0
  499. data/lib/fog/google/models/compute/disks.rb +38 -0
  500. data/lib/fog/google/models/compute/flavor.rb +24 -0
  501. data/lib/fog/google/models/compute/flavors.rb +29 -0
  502. data/lib/fog/google/models/compute/image.rb +55 -0
  503. data/lib/fog/google/models/compute/images.rb +35 -0
  504. data/lib/fog/google/models/compute/server.rb +93 -0
  505. data/lib/fog/google/models/compute/servers.rb +71 -0
  506. data/lib/fog/google/models/storage/file.rb +7 -1
  507. data/lib/fog/google/parsers/storage/access_control_list.rb +2 -2
  508. data/lib/fog/google/requests/compute/delete_disk.rb +31 -0
  509. data/lib/fog/google/requests/compute/delete_firewall.rb +30 -0
  510. data/lib/fog/google/requests/compute/delete_image.rb +30 -0
  511. data/lib/fog/google/requests/compute/delete_network.rb +30 -0
  512. data/lib/fog/google/requests/compute/delete_operation.rb +30 -0
  513. data/lib/fog/google/requests/compute/delete_server.rb +43 -0
  514. data/lib/fog/google/requests/compute/get_disk.rb +34 -0
  515. data/lib/fog/google/requests/compute/get_firewall.rb +30 -0
  516. data/lib/fog/google/requests/compute/get_image.rb +30 -0
  517. data/lib/fog/google/requests/compute/get_machine_type.rb +30 -0
  518. data/lib/fog/google/requests/compute/get_network.rb +30 -0
  519. data/lib/fog/google/requests/compute/get_server.rb +37 -0
  520. data/lib/fog/google/requests/compute/get_zone.rb +30 -0
  521. data/lib/fog/google/requests/compute/insert_disk.rb +41 -0
  522. data/lib/fog/google/requests/compute/insert_firewall.rb +37 -0
  523. data/lib/fog/google/requests/compute/insert_image.rb +38 -0
  524. data/lib/fog/google/requests/compute/insert_network.rb +34 -0
  525. data/lib/fog/google/requests/compute/insert_server.rb +78 -0
  526. data/lib/fog/google/requests/compute/list_disks.rb +30 -0
  527. data/lib/fog/google/requests/compute/list_firewalls.rb +29 -0
  528. data/lib/fog/google/requests/compute/list_global_operations.rb +28 -0
  529. data/lib/fog/google/requests/compute/list_images.rb +30 -0
  530. data/lib/fog/google/requests/compute/list_machine_types.rb +30 -0
  531. data/lib/fog/google/requests/compute/list_networks.rb +29 -0
  532. data/lib/fog/google/requests/compute/list_servers.rb +30 -0
  533. data/lib/fog/google/requests/compute/list_zone_operations.rb +28 -0
  534. data/lib/fog/google/requests/compute/list_zones.rb +29 -0
  535. data/lib/fog/google/requests/compute/set_metadata.rb +36 -0
  536. data/lib/fog/google/requests/storage/get_object.rb +1 -1
  537. data/lib/fog/google/storage.rb +1 -1
  538. data/lib/fog/hp.rb +56 -26
  539. data/lib/fog/hp/CHANGELOG.hp +123 -0
  540. data/lib/fog/hp/README_HP.rdoc +7 -6
  541. data/lib/fog/hp/block_storage.rb +170 -0
  542. data/lib/fog/hp/cdn.rb +30 -7
  543. data/lib/fog/hp/compute.rb +89 -17
  544. data/lib/fog/hp/models/block_storage/bootable_volumes.rb +28 -0
  545. data/lib/fog/hp/models/block_storage/snapshot.rb +56 -0
  546. data/lib/fog/hp/models/block_storage/snapshots.rb +29 -0
  547. data/lib/fog/hp/models/block_storage/volume.rb +102 -0
  548. data/lib/fog/hp/models/block_storage/volumes.rb +28 -0
  549. data/lib/fog/hp/models/compute/address.rb +0 -1
  550. data/lib/fog/hp/models/compute/image.rb +43 -4
  551. data/lib/fog/hp/models/compute/images.rb +0 -5
  552. data/lib/fog/hp/models/compute/key_pair.rb +0 -5
  553. data/lib/fog/hp/models/compute/meta.rb +29 -0
  554. data/lib/fog/hp/models/compute/metadata.rb +79 -0
  555. data/lib/fog/hp/models/compute/server.rb +96 -26
  556. data/lib/fog/hp/models/meta_parent.rb +33 -0
  557. data/lib/fog/hp/models/storage/directories.rb +35 -10
  558. data/lib/fog/hp/models/storage/directory.rb +139 -29
  559. data/lib/fog/hp/models/storage/file.rb +10 -0
  560. data/lib/fog/hp/models/storage/files.rb +9 -1
  561. data/lib/fog/hp/models/storage/shared_directories.rb +55 -0
  562. data/lib/fog/hp/models/storage/shared_directory.rb +39 -0
  563. data/lib/fog/hp/models/storage/shared_file.rb +67 -0
  564. data/lib/fog/hp/models/storage/shared_files.rb +64 -0
  565. data/lib/fog/hp/requests/block_storage/create_snapshot.rb +76 -0
  566. data/lib/fog/hp/requests/block_storage/create_volume.rb +87 -0
  567. data/lib/fog/hp/requests/block_storage/delete_snapshot.rb +38 -0
  568. data/lib/fog/hp/requests/block_storage/delete_volume.rb +38 -0
  569. data/lib/fog/hp/requests/block_storage/get_bootable_volume_details.rb +59 -0
  570. data/lib/fog/hp/requests/block_storage/get_snapshot_details.rb +54 -0
  571. data/lib/fog/hp/requests/block_storage/get_volume_details.rb +58 -0
  572. data/lib/fog/hp/requests/block_storage/list_bootable_volumes.rb +53 -0
  573. data/lib/fog/hp/requests/block_storage/list_snapshots.rb +48 -0
  574. data/lib/fog/hp/requests/block_storage/list_volumes.rb +52 -0
  575. data/lib/fog/hp/requests/compute/attach_volume.rb +78 -0
  576. data/lib/fog/hp/requests/compute/create_image.rb +5 -8
  577. data/lib/fog/hp/requests/compute/create_persistent_server.rb +168 -0
  578. data/lib/fog/hp/requests/compute/create_server.rb +38 -32
  579. data/lib/fog/hp/requests/compute/delete_meta.rb +55 -0
  580. data/lib/fog/hp/requests/compute/delete_security_group_rule.rb +4 -4
  581. data/lib/fog/hp/requests/compute/detach_volume.rb +47 -0
  582. data/lib/fog/hp/requests/compute/get_console_output.rb +43 -0
  583. data/lib/fog/hp/requests/compute/get_meta.rb +57 -0
  584. data/lib/fog/hp/requests/compute/get_windows_password.rb +43 -0
  585. data/lib/fog/hp/requests/compute/list_metadata.rb +56 -0
  586. data/lib/fog/hp/requests/compute/list_server_volumes.rb +49 -0
  587. data/lib/fog/hp/requests/compute/set_metadata.rb +60 -0
  588. data/lib/fog/hp/requests/compute/update_meta.rb +61 -0
  589. data/lib/fog/hp/requests/compute/update_metadata.rb +60 -0
  590. data/lib/fog/hp/requests/storage/delete_shared_object.rb +38 -0
  591. data/lib/fog/hp/requests/storage/get_object.rb +13 -11
  592. data/lib/fog/hp/requests/storage/get_object_temp_url.rb +31 -0
  593. data/lib/fog/hp/requests/storage/get_shared_container.rb +75 -0
  594. data/lib/fog/hp/requests/storage/get_shared_object.rb +66 -0
  595. data/lib/fog/hp/requests/storage/head_container.rb +1 -0
  596. data/lib/fog/hp/requests/storage/head_object.rb +1 -0
  597. data/lib/fog/hp/requests/storage/head_shared_container.rb +45 -0
  598. data/lib/fog/hp/requests/storage/head_shared_object.rb +39 -0
  599. data/lib/fog/hp/requests/storage/put_container.rb +6 -6
  600. data/lib/fog/hp/requests/storage/put_object.rb +12 -1
  601. data/lib/fog/hp/requests/storage/put_shared_object.rb +85 -0
  602. data/lib/fog/hp/storage.rb +195 -34
  603. data/lib/fog/ibm/requests/compute/create_instance.rb +20 -15
  604. data/lib/fog/identity.rb +8 -4
  605. data/lib/fog/image.rb +5 -6
  606. data/lib/fog/internet_archive.rb +292 -0
  607. data/lib/fog/internet_archive/models/storage/directories.rb +43 -0
  608. data/lib/fog/internet_archive/models/storage/directory.rb +109 -0
  609. data/lib/fog/internet_archive/models/storage/file.rb +267 -0
  610. data/lib/fog/internet_archive/models/storage/files.rb +122 -0
  611. data/lib/fog/internet_archive/models/storage/ia_attributes.rb +39 -0
  612. data/lib/fog/internet_archive/parsers/storage/access_control_list.rb +46 -0
  613. data/lib/fog/internet_archive/parsers/storage/complete_multipart_upload.rb +24 -0
  614. data/lib/fog/internet_archive/parsers/storage/copy_object.rb +22 -0
  615. data/lib/fog/internet_archive/parsers/storage/cors_configuration.rb +41 -0
  616. data/lib/fog/internet_archive/parsers/storage/delete_multiple_objects.rb +50 -0
  617. data/lib/fog/internet_archive/parsers/storage/get_bucket.rb +62 -0
  618. data/lib/fog/internet_archive/parsers/storage/get_bucket_lifecycle.rb +66 -0
  619. data/lib/fog/internet_archive/parsers/storage/get_bucket_location.rb +20 -0
  620. data/lib/fog/internet_archive/parsers/storage/get_bucket_logging.rb +40 -0
  621. data/lib/fog/internet_archive/parsers/storage/get_bucket_website.rb +26 -0
  622. data/lib/fog/internet_archive/parsers/storage/get_request_payment.rb +20 -0
  623. data/lib/fog/internet_archive/parsers/storage/get_service.rb +32 -0
  624. data/lib/fog/internet_archive/parsers/storage/initiate_multipart_upload.rb +24 -0
  625. data/lib/fog/internet_archive/parsers/storage/list_multipart_uploads.rb +56 -0
  626. data/lib/fog/internet_archive/parsers/storage/list_parts.rb +40 -0
  627. data/lib/fog/internet_archive/requests/storage/abort_multipart_upload.rb +28 -0
  628. data/lib/fog/internet_archive/requests/storage/acl_utils.rb +62 -0
  629. data/lib/fog/internet_archive/requests/storage/complete_multipart_upload.rb +48 -0
  630. data/lib/fog/internet_archive/requests/storage/copy_object.rb +81 -0
  631. data/lib/fog/internet_archive/requests/storage/cors_utils.rb +41 -0
  632. data/lib/fog/internet_archive/requests/storage/delete_bucket.rb +47 -0
  633. data/lib/fog/internet_archive/requests/storage/delete_bucket_cors.rb +29 -0
  634. data/lib/fog/internet_archive/requests/storage/delete_bucket_lifecycle.rb +27 -0
  635. data/lib/fog/internet_archive/requests/storage/delete_bucket_policy.rb +29 -0
  636. data/lib/fog/internet_archive/requests/storage/delete_bucket_website.rb +29 -0
  637. data/lib/fog/internet_archive/requests/storage/delete_multiple_objects.rb +93 -0
  638. data/lib/fog/internet_archive/requests/storage/delete_object.rb +50 -0
  639. data/lib/fog/internet_archive/requests/storage/get_bucket.rb +112 -0
  640. data/lib/fog/internet_archive/requests/storage/get_bucket_acl.rb +69 -0
  641. data/lib/fog/internet_archive/requests/storage/get_bucket_cors.rb +65 -0
  642. data/lib/fog/internet_archive/requests/storage/get_bucket_lifecycle.rb +38 -0
  643. data/lib/fog/internet_archive/requests/storage/get_bucket_location.rb +58 -0
  644. data/lib/fog/internet_archive/requests/storage/get_bucket_logging.rb +47 -0
  645. data/lib/fog/internet_archive/requests/storage/get_bucket_policy.rb +34 -0
  646. data/lib/fog/internet_archive/requests/storage/get_bucket_website.rb +40 -0
  647. data/lib/fog/internet_archive/requests/storage/get_object.rb +167 -0
  648. data/lib/fog/internet_archive/requests/storage/get_object_acl.rb +76 -0
  649. data/lib/fog/internet_archive/requests/storage/get_object_http_url.rb +55 -0
  650. data/lib/fog/internet_archive/requests/storage/get_object_https_url.rb +37 -0
  651. data/lib/fog/internet_archive/requests/storage/get_object_torrent.rb +47 -0
  652. data/lib/fog/internet_archive/requests/storage/get_object_url.rb +55 -0
  653. data/lib/fog/internet_archive/requests/storage/get_request_payment.rb +49 -0
  654. data/lib/fog/internet_archive/requests/storage/get_service.rb +54 -0
  655. data/lib/fog/internet_archive/requests/storage/head_object.rb +61 -0
  656. data/lib/fog/internet_archive/requests/storage/initiate_multipart_upload.rb +44 -0
  657. data/lib/fog/internet_archive/requests/storage/list_multipart_uploads.rb +54 -0
  658. data/lib/fog/internet_archive/requests/storage/list_parts.rb +55 -0
  659. data/lib/fog/internet_archive/requests/storage/post_object_hidden_fields.rb +38 -0
  660. data/lib/fog/internet_archive/requests/storage/put_bucket.rb +74 -0
  661. data/lib/fog/internet_archive/requests/storage/put_bucket_acl.rb +71 -0
  662. data/lib/fog/internet_archive/requests/storage/put_bucket_cors.rb +49 -0
  663. data/lib/fog/internet_archive/requests/storage/put_bucket_lifecycle.rb +77 -0
  664. data/lib/fog/internet_archive/requests/storage/put_bucket_logging.rb +81 -0
  665. data/lib/fog/internet_archive/requests/storage/put_bucket_policy.rb +28 -0
  666. data/lib/fog/internet_archive/requests/storage/put_bucket_website.rb +64 -0
  667. data/lib/fog/internet_archive/requests/storage/put_object.rb +98 -0
  668. data/lib/fog/internet_archive/requests/storage/put_object_acl.rb +75 -0
  669. data/lib/fog/internet_archive/requests/storage/put_object_url.rb +48 -0
  670. data/lib/fog/internet_archive/requests/storage/put_request_payment.rb +49 -0
  671. data/lib/fog/internet_archive/requests/storage/sync_clock.rb +28 -0
  672. data/lib/fog/internet_archive/requests/storage/upload_part.rb +41 -0
  673. data/lib/fog/internet_archive/signaturev4.rb +73 -0
  674. data/lib/fog/internet_archive/storage.rb +390 -0
  675. data/lib/fog/joyent.rb +2 -0
  676. data/lib/fog/joyent/compute.rb +59 -42
  677. data/lib/fog/joyent/errors.rb +2 -2
  678. data/lib/fog/joyent/models/compute/network.rb +13 -0
  679. data/lib/fog/joyent/models/compute/networks.rb +15 -0
  680. data/lib/fog/joyent/models/compute/server.rb +3 -2
  681. data/lib/fog/joyent/models/compute/servers.rb +3 -1
  682. data/lib/fog/joyent/requests/compute/delete_machine.rb +1 -1
  683. data/lib/fog/joyent/requests/compute/get_machine.rb +1 -1
  684. data/lib/fog/joyent/requests/compute/list_machines.rb +2 -1
  685. data/lib/fog/joyent/requests/compute/list_networks.rb +26 -0
  686. data/lib/fog/joyent/requests/compute/resize_machine.rb +4 -1
  687. data/lib/fog/{core/json.rb → json.rb} +13 -3
  688. data/lib/fog/libvirt/models/compute/nic.rb +1 -0
  689. data/lib/fog/libvirt/models/compute/volume.rb +1 -1
  690. data/lib/fog/libvirt/requests/compute/get_node_info.rb +1 -1
  691. data/lib/fog/linode/models/dns/record.rb +0 -1
  692. data/lib/fog/linode/models/dns/zone.rb +0 -1
  693. data/lib/fog/local/models/storage/files.rb +13 -13
  694. data/lib/fog/metering.rb +25 -0
  695. data/lib/fog/monitoring.rb +24 -0
  696. data/lib/fog/network.rb +8 -6
  697. data/lib/fog/openstack.rb +40 -1
  698. data/lib/fog/openstack/CHANGELOG.md +47 -0
  699. data/lib/fog/openstack/compute.rb +20 -7
  700. data/lib/fog/openstack/examples/identity/basics.rb +69 -0
  701. data/lib/fog/openstack/examples/image/upload-test-image.rb +77 -0
  702. data/lib/fog/openstack/examples/network/network_subnets_routers.rb +63 -0
  703. data/lib/fog/openstack/examples/storage/set-account-quota.rb +66 -0
  704. data/lib/fog/openstack/identity.rb +5 -5
  705. data/lib/fog/openstack/image.rb +8 -2
  706. data/lib/fog/openstack/metering.rb +215 -0
  707. data/lib/fog/openstack/models/compute/flavors.rb +2 -2
  708. data/lib/fog/openstack/models/compute/images.rb +2 -1
  709. data/lib/fog/openstack/models/compute/metadata.rb +5 -6
  710. data/lib/fog/openstack/models/compute/server.rb +69 -25
  711. data/lib/fog/openstack/models/identity/role.rb +1 -1
  712. data/lib/fog/openstack/models/image/images.rb +2 -1
  713. data/lib/fog/openstack/models/metering/meter.rb +0 -0
  714. data/lib/fog/openstack/models/metering/meters.rb +0 -0
  715. data/lib/fog/openstack/models/metering/resource.rb +24 -0
  716. data/lib/fog/openstack/models/metering/resources.rb +25 -0
  717. data/lib/fog/openstack/models/network/floating_ip.rb +52 -0
  718. data/lib/fog/openstack/models/network/floating_ips.rb +34 -0
  719. data/lib/fog/openstack/models/network/lb_health_monitor.rb +68 -0
  720. data/lib/fog/openstack/models/network/lb_health_monitors.rb +34 -0
  721. data/lib/fog/openstack/models/network/lb_member.rb +53 -0
  722. data/lib/fog/openstack/models/network/lb_members.rb +34 -0
  723. data/lib/fog/openstack/models/network/lb_pool.rb +78 -0
  724. data/lib/fog/openstack/models/network/lb_pools.rb +34 -0
  725. data/lib/fog/openstack/models/network/lb_vip.rb +59 -0
  726. data/lib/fog/openstack/models/network/lb_vips.rb +34 -0
  727. data/lib/fog/openstack/models/network/network.rb +8 -0
  728. data/lib/fog/openstack/models/network/router.rb +56 -0
  729. data/lib/fog/openstack/models/network/routers.rb +34 -0
  730. data/lib/fog/openstack/models/storage/directories.rb +39 -0
  731. data/lib/fog/openstack/models/storage/directory.rb +50 -0
  732. data/lib/fog/openstack/models/storage/file.rb +150 -0
  733. data/lib/fog/openstack/models/storage/files.rb +94 -0
  734. data/lib/fog/openstack/models/volume/volume.rb +3 -1
  735. data/lib/fog/openstack/models/volume/volumes.rb +2 -1
  736. data/lib/fog/openstack/network.rb +103 -29
  737. data/lib/fog/openstack/requests/compute/add_flavor_access.rb +31 -0
  738. data/lib/fog/openstack/requests/compute/allocate_address.rb +1 -1
  739. data/lib/fog/openstack/requests/compute/attach_volume.rb +10 -5
  740. data/lib/fog/openstack/requests/compute/create_flavor.rb +1 -1
  741. data/lib/fog/openstack/requests/compute/create_server.rb +34 -7
  742. data/lib/fog/openstack/requests/compute/create_volume.rb +14 -13
  743. data/lib/fog/openstack/requests/compute/delete_meta.rb +43 -0
  744. data/lib/fog/openstack/requests/compute/delete_volume.rb +9 -2
  745. data/lib/fog/openstack/requests/compute/detach_volume.rb +8 -2
  746. data/lib/fog/openstack/requests/compute/get_limits.rb +1 -1
  747. data/lib/fog/openstack/requests/compute/get_server_volumes.rb +10 -0
  748. data/lib/fog/openstack/requests/compute/get_snapshot_details.rb +1 -1
  749. data/lib/fog/openstack/requests/compute/get_volume_details.rb +8 -17
  750. data/lib/fog/openstack/requests/compute/list_address_pools.rb +10 -0
  751. data/lib/fog/openstack/requests/compute/list_flavors_detail.rb +4 -3
  752. data/lib/fog/openstack/requests/compute/list_security_groups.rb +1 -1
  753. data/lib/fog/openstack/requests/compute/list_servers.rb +1 -1
  754. data/lib/fog/openstack/requests/compute/list_tenants.rb +1 -0
  755. data/lib/fog/openstack/requests/compute/list_tenants_with_flavor_access.rb +26 -0
  756. data/lib/fog/openstack/requests/compute/list_volumes.rb +4 -26
  757. data/lib/fog/openstack/requests/compute/rebuild_server.rb +9 -1
  758. data/lib/fog/openstack/requests/compute/remove_fixed_ip.rb +1 -1
  759. data/lib/fog/openstack/requests/compute/remove_flavor_access.rb +31 -0
  760. data/lib/fog/openstack/requests/compute/revert_resize_server.rb +2 -2
  761. data/lib/fog/openstack/requests/compute/update_meta.rb +46 -0
  762. data/lib/fog/openstack/requests/compute/update_server.rb +1 -1
  763. data/lib/fog/openstack/requests/identity/create_tenant.rb +2 -2
  764. data/lib/fog/openstack/requests/identity/delete_user_role.rb +2 -2
  765. data/lib/fog/openstack/requests/identity/get_user_by_name.rb +2 -2
  766. data/lib/fog/openstack/requests/image/create_image.rb +1 -1
  767. data/lib/fog/openstack/requests/metering/get_resource.rb +32 -0
  768. data/lib/fog/openstack/requests/metering/get_samples.rb +55 -0
  769. data/lib/fog/openstack/requests/metering/get_statistics.rb +56 -0
  770. data/lib/fog/openstack/requests/metering/list_meters.rb +50 -0
  771. data/lib/fog/openstack/requests/metering/list_resources.rb +32 -0
  772. data/lib/fog/openstack/requests/network/add_router_interface.rb +48 -0
  773. data/lib/fog/openstack/requests/network/associate_floating_ip.rb +49 -0
  774. data/lib/fog/openstack/requests/network/associate_lb_health_monitor.rb +39 -0
  775. data/lib/fog/openstack/requests/network/create_floating_ip.rb +50 -0
  776. data/lib/fog/openstack/requests/network/create_lb_health_monitor.rb +56 -0
  777. data/lib/fog/openstack/requests/network/create_lb_member.rb +53 -0
  778. data/lib/fog/openstack/requests/network/create_lb_pool.rb +60 -0
  779. data/lib/fog/openstack/requests/network/create_lb_vip.rb +60 -0
  780. data/lib/fog/openstack/requests/network/create_network.rb +57 -2
  781. data/lib/fog/openstack/requests/network/create_router.rb +57 -0
  782. data/lib/fog/openstack/requests/network/delete_floating_ip.rb +30 -0
  783. data/lib/fog/openstack/requests/network/delete_lb_health_monitor.rb +30 -0
  784. data/lib/fog/openstack/requests/network/delete_lb_member.rb +30 -0
  785. data/lib/fog/openstack/requests/network/delete_lb_pool.rb +30 -0
  786. data/lib/fog/openstack/requests/network/delete_lb_vip.rb +30 -0
  787. data/lib/fog/openstack/requests/network/delete_quota.rb +26 -0
  788. data/lib/fog/openstack/requests/network/delete_router.rb +30 -0
  789. data/lib/fog/openstack/requests/network/disassociate_floating_ip.rb +49 -0
  790. data/lib/fog/openstack/requests/network/disassociate_lb_health_monitor.rb +31 -0
  791. data/lib/fog/openstack/requests/network/get_floating_ip.rb +42 -0
  792. data/lib/fog/openstack/requests/network/get_lb_health_monitor.rb +30 -0
  793. data/lib/fog/openstack/requests/network/get_lb_member.rb +30 -0
  794. data/lib/fog/openstack/requests/network/get_lb_pool.rb +30 -0
  795. data/lib/fog/openstack/requests/network/get_lb_pool_stats.rb +35 -0
  796. data/lib/fog/openstack/requests/network/get_lb_vip.rb +30 -0
  797. data/lib/fog/openstack/requests/network/get_quota.rb +31 -0
  798. data/lib/fog/openstack/requests/network/get_quotas.rb +31 -0
  799. data/lib/fog/openstack/requests/network/get_router.rb +32 -0
  800. data/lib/fog/openstack/requests/network/list_floating_ips.rb +27 -0
  801. data/lib/fog/openstack/requests/network/list_lb_health_monitors.rb +27 -0
  802. data/lib/fog/openstack/requests/network/list_lb_members.rb +27 -0
  803. data/lib/fog/openstack/requests/network/list_lb_pools.rb +27 -0
  804. data/lib/fog/openstack/requests/network/list_lb_vips.rb +27 -0
  805. data/lib/fog/openstack/requests/network/list_routers.rb +27 -0
  806. data/lib/fog/openstack/requests/network/remove_router_interface.rb +36 -0
  807. data/lib/fog/openstack/requests/network/update_lb_health_monitor.rb +45 -0
  808. data/lib/fog/openstack/requests/network/update_lb_member.rb +41 -0
  809. data/lib/fog/openstack/requests/network/update_lb_pool.rb +42 -0
  810. data/lib/fog/openstack/requests/network/update_lb_vip.rb +44 -0
  811. data/lib/fog/openstack/requests/network/update_quota.rb +33 -0
  812. data/lib/fog/openstack/requests/network/update_router.rb +85 -0
  813. data/lib/fog/openstack/requests/storage/copy_object.rb +27 -0
  814. data/lib/fog/openstack/requests/storage/delete_container.rb +22 -0
  815. data/lib/fog/openstack/requests/storage/delete_object.rb +23 -0
  816. data/lib/fog/openstack/requests/storage/get_container.rb +44 -0
  817. data/lib/fog/openstack/requests/storage/get_containers.rb +33 -0
  818. data/lib/fog/openstack/requests/storage/get_object.rb +29 -0
  819. data/lib/fog/openstack/requests/storage/get_object_https_url.rb +51 -0
  820. data/lib/fog/openstack/requests/storage/head_container.rb +28 -0
  821. data/lib/fog/openstack/requests/storage/head_containers.rb +25 -0
  822. data/lib/fog/openstack/requests/storage/head_object.rb +23 -0
  823. data/lib/fog/openstack/requests/storage/post_set_meta_temp_url_key.rb +37 -0
  824. data/lib/fog/openstack/requests/storage/put_container.rb +22 -0
  825. data/lib/fog/openstack/requests/storage/put_object.rb +33 -0
  826. data/lib/fog/openstack/requests/storage/put_object_manifest.rb +38 -0
  827. data/lib/fog/openstack/requests/volume/create_volume.rb +4 -2
  828. data/lib/fog/openstack/requests/volume/get_quota.rb +31 -0
  829. data/lib/fog/openstack/requests/volume/get_quota_defaults.rb +31 -0
  830. data/lib/fog/openstack/requests/volume/update_quota.rb +32 -0
  831. data/lib/fog/openstack/storage.rb +216 -0
  832. data/lib/fog/openstack/volume.rb +14 -5
  833. data/lib/fog/openvz.rb +9 -0
  834. data/lib/fog/openvz/README.md +188 -0
  835. data/lib/fog/openvz/compute.rb +176 -0
  836. data/lib/fog/openvz/models/compute/server.rb +194 -0
  837. data/lib/fog/openvz/models/compute/servers.rb +27 -0
  838. data/lib/fog/openvz/requests/compute/compact_server.rb +21 -0
  839. data/lib/fog/openvz/requests/compute/convert_server.rb +21 -0
  840. data/lib/fog/openvz/requests/compute/create_server.rb +23 -0
  841. data/lib/fog/openvz/requests/compute/destroy_server.rb +21 -0
  842. data/lib/fog/openvz/requests/compute/exec2_server.rb +21 -0
  843. data/lib/fog/openvz/requests/compute/exec_server.rb +21 -0
  844. data/lib/fog/openvz/requests/compute/get_server_details.rb +21 -0
  845. data/lib/fog/openvz/requests/compute/list_servers.rb +21 -0
  846. data/lib/fog/openvz/requests/compute/mount_server.rb +21 -0
  847. data/lib/fog/openvz/requests/compute/quotainit_server.rb +21 -0
  848. data/lib/fog/openvz/requests/compute/quotaoff_server.rb +21 -0
  849. data/lib/fog/openvz/requests/compute/quotaon_server.rb +21 -0
  850. data/lib/fog/openvz/requests/compute/restart_server.rb +24 -0
  851. data/lib/fog/openvz/requests/compute/resume_server.rb +21 -0
  852. data/lib/fog/openvz/requests/compute/runscript_server.rb +21 -0
  853. data/lib/fog/openvz/requests/compute/set_server.rb +27 -0
  854. data/lib/fog/openvz/requests/compute/snapshot_delete_server.rb +21 -0
  855. data/lib/fog/openvz/requests/compute/snapshot_list_server.rb +21 -0
  856. data/lib/fog/openvz/requests/compute/snapshot_mount_server.rb +21 -0
  857. data/lib/fog/openvz/requests/compute/snapshot_server.rb +21 -0
  858. data/lib/fog/openvz/requests/compute/snapshot_switch_server.rb +21 -0
  859. data/lib/fog/openvz/requests/compute/snapshot_umount_server.rb +21 -0
  860. data/lib/fog/openvz/requests/compute/start_server.rb +24 -0
  861. data/lib/fog/openvz/requests/compute/status_server.rb +21 -0
  862. data/lib/fog/openvz/requests/compute/stop_server.rb +24 -0
  863. data/lib/fog/openvz/requests/compute/suspend_server.rb +21 -0
  864. data/lib/fog/openvz/requests/compute/umount_server.rb +21 -0
  865. data/lib/fog/ovirt/compute.rb +5 -0
  866. data/lib/fog/ovirt/models/compute/quota.rb +21 -0
  867. data/lib/fog/ovirt/models/compute/quotas.rb +24 -0
  868. data/lib/fog/ovirt/models/compute/server.rb +4 -3
  869. data/lib/fog/ovirt/models/compute/volume.rb +2 -0
  870. data/lib/fog/ovirt/requests/compute/get_api_version.rb +16 -0
  871. data/lib/fog/ovirt/requests/compute/get_quota.rb +19 -0
  872. data/lib/fog/ovirt/requests/compute/list_quotas.rb +21 -0
  873. data/lib/fog/ovirt/requests/compute/mock_files/quotas.xml +7 -0
  874. data/lib/fog/rackspace.rb +55 -11
  875. data/lib/fog/rackspace/block_storage.rb +103 -40
  876. data/lib/fog/rackspace/cdn.rb +120 -38
  877. data/lib/fog/rackspace/compute.rb +56 -58
  878. data/lib/fog/rackspace/compute_v2.rb +149 -45
  879. data/lib/fog/rackspace/databases.rb +86 -43
  880. data/lib/fog/rackspace/dns.rb +77 -38
  881. data/lib/fog/rackspace/docs/block_storage.md +417 -0
  882. data/lib/fog/rackspace/docs/compute_v2.md +722 -0
  883. data/lib/fog/rackspace/docs/getting_started.md +86 -0
  884. data/lib/fog/rackspace/docs/storage.md +530 -0
  885. data/lib/fog/rackspace/errors.rb +34 -0
  886. data/lib/fog/rackspace/examples/README.md +47 -0
  887. data/lib/fog/rackspace/examples/block_storage/create_snapshot.rb +118 -0
  888. data/lib/fog/rackspace/examples/block_storage/create_volume.rb +58 -0
  889. data/lib/fog/rackspace/examples/block_storage/delete_volume.rb +53 -0
  890. data/lib/fog/rackspace/examples/compute_v2/create_image.rb +61 -0
  891. data/lib/fog/rackspace/examples/compute_v2/create_server.rb +89 -0
  892. data/lib/fog/rackspace/examples/compute_v2/delete_image.rb +61 -0
  893. data/lib/fog/rackspace/examples/compute_v2/delete_server.rb +56 -0
  894. data/lib/fog/rackspace/examples/compute_v2/detach_volume.rb +93 -0
  895. data/lib/fog/rackspace/examples/compute_v2/resize_server.rb +106 -0
  896. data/lib/fog/rackspace/examples/compute_v2/server_attachments.rb +69 -0
  897. data/lib/fog/rackspace/examples/compute_v2/server_metadata.rb +85 -0
  898. data/lib/fog/rackspace/examples/storage/create_cdn_directory.rb +44 -0
  899. data/lib/fog/rackspace/examples/storage/create_private_directory.rb +46 -0
  900. data/lib/fog/rackspace/examples/storage/delete_directory.rb +62 -0
  901. data/lib/fog/rackspace/examples/storage/delete_file.rb +70 -0
  902. data/lib/fog/rackspace/examples/storage/download_file.rb +75 -0
  903. data/lib/fog/rackspace/examples/storage/lorem.txt +1 -0
  904. data/lib/fog/rackspace/examples/storage/storage_metadata.rb +82 -0
  905. data/lib/fog/rackspace/examples/storage/upload_file.rb +45 -0
  906. data/lib/fog/rackspace/examples/storage/upload_large_files.rb +103 -0
  907. data/lib/fog/rackspace/identity.rb +19 -28
  908. data/lib/fog/rackspace/load_balancers.rb +86 -42
  909. data/lib/fog/rackspace/mock_data.rb +172 -0
  910. data/lib/fog/rackspace/models/block_storage/snapshot.rb +42 -0
  911. data/lib/fog/rackspace/models/block_storage/snapshots.rb +15 -0
  912. data/lib/fog/rackspace/models/block_storage/volume.rb +65 -0
  913. data/lib/fog/rackspace/models/block_storage/volume_type.rb +6 -0
  914. data/lib/fog/rackspace/models/block_storage/volume_types.rb +15 -0
  915. data/lib/fog/rackspace/models/block_storage/volumes.rb +15 -0
  916. data/lib/fog/rackspace/models/compute/server.rb +1 -1
  917. data/lib/fog/rackspace/models/compute_v2/attachment.rb +37 -9
  918. data/lib/fog/rackspace/models/compute_v2/attachments.rb +14 -0
  919. data/lib/fog/rackspace/models/compute_v2/flavor.rb +18 -0
  920. data/lib/fog/rackspace/models/compute_v2/flavors.rb +17 -1
  921. data/lib/fog/rackspace/models/compute_v2/image.rb +82 -3
  922. data/lib/fog/rackspace/models/compute_v2/images.rb +17 -0
  923. data/lib/fog/rackspace/models/compute_v2/key_pair.rb +56 -0
  924. data/lib/fog/rackspace/models/compute_v2/key_pairs.rb +43 -0
  925. data/lib/fog/rackspace/models/compute_v2/meta_parent.rb +42 -0
  926. data/lib/fog/rackspace/models/compute_v2/metadata.rb +112 -0
  927. data/lib/fog/rackspace/models/compute_v2/metadatum.rb +41 -0
  928. data/lib/fog/rackspace/models/compute_v2/network.rb +27 -0
  929. data/lib/fog/rackspace/models/compute_v2/networks.rb +23 -0
  930. data/lib/fog/rackspace/models/compute_v2/server.rb +380 -19
  931. data/lib/fog/rackspace/models/compute_v2/servers.rb +35 -2
  932. data/lib/fog/rackspace/models/dns/records.rb +1 -1
  933. data/lib/fog/rackspace/models/dns/zones.rb +46 -4
  934. data/lib/fog/rackspace/models/identity/credentials.rb +3 -2
  935. data/lib/fog/rackspace/models/identity/service_catalog.rb +83 -0
  936. data/lib/fog/rackspace/models/identity/users.rb +2 -2
  937. data/lib/fog/rackspace/models/load_balancers/load_balancer.rb +7 -7
  938. data/lib/fog/rackspace/models/monitoring/agent_token.rb +40 -0
  939. data/lib/fog/rackspace/models/monitoring/agent_tokens.rb +28 -0
  940. data/lib/fog/rackspace/models/monitoring/alarm.rb +51 -0
  941. data/lib/fog/rackspace/models/monitoring/alarm_example.rb +26 -0
  942. data/lib/fog/rackspace/models/monitoring/alarm_examples.rb +31 -0
  943. data/lib/fog/rackspace/models/monitoring/alarms.rb +40 -0
  944. data/lib/fog/rackspace/models/monitoring/base.rb +36 -0
  945. data/lib/fog/rackspace/models/monitoring/check.rb +75 -0
  946. data/lib/fog/rackspace/models/monitoring/check_type.rb +15 -0
  947. data/lib/fog/rackspace/models/monitoring/check_types.rb +23 -0
  948. data/lib/fog/rackspace/models/monitoring/checks.rb +40 -0
  949. data/lib/fog/rackspace/models/monitoring/data_point.rb +18 -0
  950. data/lib/fog/rackspace/models/monitoring/data_points.rb +49 -0
  951. data/lib/fog/rackspace/models/monitoring/entities.rb +48 -0
  952. data/lib/fog/rackspace/models/monitoring/entity.rb +64 -0
  953. data/lib/fog/rackspace/models/monitoring/metric.rb +25 -0
  954. data/lib/fog/rackspace/models/monitoring/metrics.rb +27 -0
  955. data/lib/fog/rackspace/models/storage/account.rb +50 -0
  956. data/lib/fog/rackspace/models/storage/directories.rb +26 -3
  957. data/lib/fog/rackspace/models/storage/directory.rb +151 -38
  958. data/lib/fog/rackspace/models/storage/file.rb +166 -66
  959. data/lib/fog/rackspace/models/storage/files.rb +89 -4
  960. data/lib/fog/rackspace/models/storage/metadata.rb +152 -0
  961. data/lib/fog/rackspace/monitoring.rb +145 -0
  962. data/lib/fog/rackspace/requests/block_storage/create_snapshot.rb +52 -0
  963. data/lib/fog/rackspace/requests/block_storage/create_volume.rb +66 -0
  964. data/lib/fog/rackspace/requests/block_storage/delete_snapshot.rb +17 -0
  965. data/lib/fog/rackspace/requests/block_storage/delete_volume.rb +28 -0
  966. data/lib/fog/rackspace/requests/block_storage/get_snapshot.rb +31 -0
  967. data/lib/fog/rackspace/requests/block_storage/get_volume.rb +41 -0
  968. data/lib/fog/rackspace/requests/block_storage/get_volume_type.rb +27 -0
  969. data/lib/fog/rackspace/requests/block_storage/list_snapshots.rb +25 -0
  970. data/lib/fog/rackspace/requests/block_storage/list_volume_types.rb +20 -0
  971. data/lib/fog/rackspace/requests/block_storage/list_volumes.rb +28 -0
  972. data/lib/fog/rackspace/requests/cdn/delete_object.rb +41 -0
  973. data/lib/fog/rackspace/requests/cdn/get_containers.rb +39 -0
  974. data/lib/fog/rackspace/requests/cdn/head_container.rb +29 -0
  975. data/lib/fog/rackspace/requests/cdn/post_container.rb +27 -1
  976. data/lib/fog/rackspace/requests/cdn/put_container.rb +27 -1
  977. data/lib/fog/rackspace/requests/compute/delete_image.rb +1 -1
  978. data/lib/fog/rackspace/requests/compute_v2/attach_volume.rb +58 -2
  979. data/lib/fog/rackspace/requests/compute_v2/change_server_password.rb +17 -0
  980. data/lib/fog/rackspace/requests/compute_v2/confirm_resize_server.rb +22 -0
  981. data/lib/fog/rackspace/requests/compute_v2/create_image.rb +68 -11
  982. data/lib/fog/rackspace/requests/compute_v2/create_keypair.rb +53 -0
  983. data/lib/fog/rackspace/requests/compute_v2/create_network.rb +36 -0
  984. data/lib/fog/rackspace/requests/compute_v2/create_server.rb +160 -8
  985. data/lib/fog/rackspace/requests/compute_v2/delete_attachment.rb +25 -0
  986. data/lib/fog/rackspace/requests/compute_v2/delete_image.rb +8 -4
  987. data/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb +36 -0
  988. data/lib/fog/rackspace/requests/compute_v2/delete_metadata_item.rb +37 -0
  989. data/lib/fog/rackspace/requests/compute_v2/delete_network.rb +21 -0
  990. data/lib/fog/rackspace/requests/compute_v2/delete_server.rb +21 -0
  991. data/lib/fog/rackspace/requests/compute_v2/get_attachment.rb +24 -0
  992. data/lib/fog/rackspace/requests/compute_v2/get_flavor.rb +29 -0
  993. data/lib/fog/rackspace/requests/compute_v2/get_image.rb +33 -0
  994. data/lib/fog/rackspace/requests/compute_v2/get_keypair.rb +41 -0
  995. data/lib/fog/rackspace/requests/compute_v2/get_metadata_item.rb +39 -0
  996. data/lib/fog/rackspace/requests/compute_v2/get_network.rb +21 -0
  997. data/lib/fog/rackspace/requests/compute_v2/get_server.rb +49 -0
  998. data/lib/fog/rackspace/requests/compute_v2/list_addresses.rb +9 -0
  999. data/lib/fog/rackspace/requests/compute_v2/list_addresses_by_network.rb +16 -0
  1000. data/lib/fog/rackspace/requests/compute_v2/list_attachments.rb +23 -0
  1001. data/lib/fog/rackspace/requests/compute_v2/list_flavors.rb +21 -0
  1002. data/lib/fog/rackspace/requests/compute_v2/list_images.rb +21 -0
  1003. data/lib/fog/rackspace/requests/compute_v2/list_keypairs.rb +37 -0
  1004. data/lib/fog/rackspace/requests/compute_v2/list_metadata.rb +38 -0
  1005. data/lib/fog/rackspace/requests/compute_v2/list_networks.rb +18 -0
  1006. data/lib/fog/rackspace/requests/compute_v2/list_servers.rb +42 -0
  1007. data/lib/fog/rackspace/requests/compute_v2/reboot_server.rb +23 -0
  1008. data/lib/fog/rackspace/requests/compute_v2/rebuild_server.rb +54 -4
  1009. data/lib/fog/rackspace/requests/compute_v2/rescue_server.rb +43 -0
  1010. data/lib/fog/rackspace/requests/compute_v2/resize_server.rb +23 -0
  1011. data/lib/fog/rackspace/requests/compute_v2/revert_resize_server.rb +23 -0
  1012. data/lib/fog/rackspace/requests/compute_v2/set_metadata.rb +41 -0
  1013. data/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb +41 -0
  1014. data/lib/fog/rackspace/requests/compute_v2/unrescue_server.rb +40 -0
  1015. data/lib/fog/rackspace/requests/compute_v2/update_metadata.rb +40 -0
  1016. data/lib/fog/rackspace/requests/compute_v2/update_server.rb +30 -7
  1017. data/lib/fog/rackspace/requests/dns/list_domains.rb +2 -2
  1018. data/lib/fog/rackspace/requests/load_balancers/create_load_balancer.rb +1 -1
  1019. data/lib/fog/rackspace/requests/load_balancers/set_ssl_termination.rb +3 -3
  1020. data/lib/fog/rackspace/requests/load_balancers/update_load_balancer.rb +2 -1
  1021. data/lib/fog/rackspace/requests/monitoring/create_agent_token.rb +19 -0
  1022. data/lib/fog/rackspace/requests/monitoring/create_alarm.rb +19 -0
  1023. data/lib/fog/rackspace/requests/monitoring/create_check.rb +19 -0
  1024. data/lib/fog/rackspace/requests/monitoring/create_entity.rb +19 -0
  1025. data/lib/fog/rackspace/requests/monitoring/delete_agent_token.rb +17 -0
  1026. data/lib/fog/rackspace/requests/monitoring/delete_alarm.rb +18 -0
  1027. data/lib/fog/rackspace/requests/monitoring/delete_check.rb +17 -0
  1028. data/lib/fog/rackspace/requests/monitoring/delete_entity.rb +17 -0
  1029. data/lib/fog/rackspace/requests/monitoring/evaluate_alarm_example.rb +21 -0
  1030. data/lib/fog/rackspace/requests/monitoring/get_agent_token.rb +19 -0
  1031. data/lib/fog/rackspace/requests/monitoring/get_alarm.rb +19 -0
  1032. data/lib/fog/rackspace/requests/monitoring/get_alarm_example.rb +19 -0
  1033. data/lib/fog/rackspace/requests/monitoring/get_check.rb +19 -0
  1034. data/lib/fog/rackspace/requests/monitoring/get_entity.rb +19 -0
  1035. data/lib/fog/rackspace/requests/monitoring/list_agent_tokens.rb +19 -0
  1036. data/lib/fog/rackspace/requests/monitoring/list_alarm_examples.rb +18 -0
  1037. data/lib/fog/rackspace/requests/monitoring/list_alarms.rb +18 -0
  1038. data/lib/fog/rackspace/requests/monitoring/list_check_types.rb +17 -0
  1039. data/lib/fog/rackspace/requests/monitoring/list_checks.rb +18 -0
  1040. data/lib/fog/rackspace/requests/monitoring/list_data_points.rb +18 -0
  1041. data/lib/fog/rackspace/requests/monitoring/list_entities.rb +19 -0
  1042. data/lib/fog/rackspace/requests/monitoring/list_metrics.rb +18 -0
  1043. data/lib/fog/rackspace/requests/monitoring/list_notification_plans.rb +18 -0
  1044. data/lib/fog/rackspace/requests/monitoring/list_overview.rb +19 -0
  1045. data/lib/fog/rackspace/requests/monitoring/update_alarm.rb +18 -0
  1046. data/lib/fog/rackspace/requests/monitoring/update_check.rb +18 -0
  1047. data/lib/fog/rackspace/requests/monitoring/update_entity.rb +18 -0
  1048. data/lib/fog/rackspace/requests/storage/copy_object.rb +4 -0
  1049. data/lib/fog/rackspace/requests/storage/delete_container.rb +4 -1
  1050. data/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb +75 -0
  1051. data/lib/fog/rackspace/requests/storage/delete_object.rb +4 -1
  1052. data/lib/fog/rackspace/requests/storage/delete_static_large_object.rb +50 -0
  1053. data/lib/fog/rackspace/requests/storage/get_container.rb +4 -0
  1054. data/lib/fog/rackspace/requests/storage/get_containers.rb +4 -0
  1055. data/lib/fog/rackspace/requests/storage/get_object.rb +7 -3
  1056. data/lib/fog/rackspace/requests/storage/get_object_https_url.rb +7 -4
  1057. data/lib/fog/rackspace/requests/storage/head_container.rb +4 -0
  1058. data/lib/fog/rackspace/requests/storage/head_containers.rb +4 -0
  1059. data/lib/fog/rackspace/requests/storage/head_object.rb +4 -1
  1060. data/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb +4 -1
  1061. data/lib/fog/rackspace/requests/storage/put_container.rb +6 -2
  1062. data/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb +44 -0
  1063. data/lib/fog/rackspace/requests/storage/put_object.rb +12 -6
  1064. data/lib/fog/rackspace/requests/storage/put_object_manifest.rb +4 -13
  1065. data/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb +60 -0
  1066. data/lib/fog/rackspace/service.rb +121 -0
  1067. data/lib/fog/rackspace/storage.rb +91 -46
  1068. data/lib/fog/riakcs.rb +122 -0
  1069. data/lib/fog/riakcs/provisioning.rb +101 -0
  1070. data/lib/fog/riakcs/requests/provisioning/create_user.rb +77 -0
  1071. data/lib/fog/riakcs/requests/provisioning/disable_user.rb +23 -0
  1072. data/lib/fog/riakcs/requests/provisioning/enable_user.rb +23 -0
  1073. data/lib/fog/riakcs/requests/provisioning/get_user.rb +41 -0
  1074. data/lib/fog/riakcs/requests/provisioning/list_users.rb +43 -0
  1075. data/lib/fog/riakcs/requests/provisioning/regrant_secret.rb +23 -0
  1076. data/lib/fog/riakcs/requests/provisioning/update_user.rb +23 -0
  1077. data/lib/fog/riakcs/requests/usage/get_usage.rb +68 -0
  1078. data/lib/fog/riakcs/usage.rb +67 -0
  1079. data/lib/fog/schema/data_validator.rb +154 -0
  1080. data/lib/fog/serverlove/compute.rb +26 -23
  1081. data/lib/fog/serverlove/models/compute/server.rb +1 -1
  1082. data/lib/fog/storage.rb +11 -24
  1083. data/lib/fog/storm_on_demand.rb +9 -1
  1084. data/lib/fog/storm_on_demand/README.md +49 -0
  1085. data/lib/fog/storm_on_demand/account.rb +58 -0
  1086. data/lib/fog/storm_on_demand/billing.rb +61 -0
  1087. data/lib/fog/storm_on_demand/compute.rb +33 -58
  1088. data/lib/fog/storm_on_demand/dns.rb +85 -0
  1089. data/lib/fog/storm_on_demand/models/account/token.rb +23 -0
  1090. data/lib/fog/storm_on_demand/models/account/tokens.rb +20 -0
  1091. data/lib/fog/storm_on_demand/models/billing/invoice.rb +28 -0
  1092. data/lib/fog/storm_on_demand/models/billing/invoices.rb +30 -0
  1093. data/lib/fog/storm_on_demand/models/billing/payment.rb +17 -0
  1094. data/lib/fog/storm_on_demand/models/billing/payments.rb +19 -0
  1095. data/lib/fog/storm_on_demand/models/compute/config.rb +18 -4
  1096. data/lib/fog/storm_on_demand/models/compute/configs.rb +6 -2
  1097. data/lib/fog/storm_on_demand/models/compute/image.rb +22 -1
  1098. data/lib/fog/storm_on_demand/models/compute/images.rb +12 -2
  1099. data/lib/fog/storm_on_demand/models/compute/notification.rb +34 -0
  1100. data/lib/fog/storm_on_demand/models/compute/notifications.rb +30 -0
  1101. data/lib/fog/storm_on_demand/models/compute/product.rb +40 -0
  1102. data/lib/fog/storm_on_demand/models/compute/products.rb +28 -0
  1103. data/lib/fog/storm_on_demand/models/compute/server.rb +33 -9
  1104. data/lib/fog/storm_on_demand/models/compute/servers.rb +7 -2
  1105. data/lib/fog/storm_on_demand/models/compute/template.rb +7 -1
  1106. data/lib/fog/storm_on_demand/models/compute/templates.rb +7 -2
  1107. data/lib/fog/storm_on_demand/models/dns/domain.rb +34 -0
  1108. data/lib/fog/storm_on_demand/models/dns/domains.rb +20 -0
  1109. data/lib/fog/storm_on_demand/models/dns/record.rb +64 -0
  1110. data/lib/fog/storm_on_demand/models/dns/records.rb +30 -0
  1111. data/lib/fog/storm_on_demand/models/dns/reverse.rb +15 -0
  1112. data/lib/fog/storm_on_demand/models/dns/reverses.rb +23 -0
  1113. data/lib/fog/storm_on_demand/models/dns/zone.rb +40 -0
  1114. data/lib/fog/storm_on_demand/models/dns/zones.rb +30 -0
  1115. data/lib/fog/storm_on_demand/models/monitoring/bandwidth.rb +23 -0
  1116. data/lib/fog/storm_on_demand/models/monitoring/bandwidths.rb +23 -0
  1117. data/lib/fog/storm_on_demand/models/{compute/stat.rb → monitoring/load.rb} +6 -6
  1118. data/lib/fog/storm_on_demand/models/monitoring/loads.rb +24 -0
  1119. data/lib/fog/storm_on_demand/models/monitoring/monitor_service.rb +22 -0
  1120. data/lib/fog/storm_on_demand/models/monitoring/monitor_services.rb +32 -0
  1121. data/lib/fog/storm_on_demand/models/{compute → network}/balancer.rb +27 -5
  1122. data/lib/fog/storm_on_demand/models/network/balancers.rb +44 -0
  1123. data/lib/fog/storm_on_demand/models/network/firewall.rb +20 -0
  1124. data/lib/fog/storm_on_demand/models/network/firewalls.rb +32 -0
  1125. data/lib/fog/storm_on_demand/models/network/network_ip.rb +23 -0
  1126. data/lib/fog/storm_on_demand/models/network/network_ips.rb +48 -0
  1127. data/lib/fog/storm_on_demand/models/network/pool.rb +32 -0
  1128. data/lib/fog/storm_on_demand/models/network/pools.rb +28 -0
  1129. data/lib/fog/storm_on_demand/models/{compute → network}/private_ip.rb +2 -3
  1130. data/lib/fog/storm_on_demand/models/network/private_ips.rb +40 -0
  1131. data/lib/fog/storm_on_demand/models/network/ruleset.rb +27 -0
  1132. data/lib/fog/storm_on_demand/models/network/rulesets.rb +28 -0
  1133. data/lib/fog/storm_on_demand/models/network/zone.rb +27 -0
  1134. data/lib/fog/storm_on_demand/models/network/zones.rb +24 -0
  1135. data/lib/fog/storm_on_demand/models/storage/cluster.rb +20 -0
  1136. data/lib/fog/storm_on_demand/models/storage/clusters.rb +20 -0
  1137. data/lib/fog/storm_on_demand/models/storage/volume.rb +54 -0
  1138. data/lib/fog/storm_on_demand/models/storage/volumes.rb +30 -0
  1139. data/lib/fog/storm_on_demand/models/support/alert.rb +19 -0
  1140. data/lib/fog/storm_on_demand/models/support/alerts.rb +20 -0
  1141. data/lib/fog/storm_on_demand/models/support/ticket.rb +74 -0
  1142. data/lib/fog/storm_on_demand/models/support/tickets.rb +33 -0
  1143. data/lib/fog/storm_on_demand/models/vpn/vpn.rb +30 -0
  1144. data/lib/fog/storm_on_demand/models/vpn/vpns.rb +27 -0
  1145. data/lib/fog/storm_on_demand/monitoring.rb +68 -0
  1146. data/lib/fog/storm_on_demand/network.rb +113 -0
  1147. data/lib/fog/storm_on_demand/requests/account/create_token.rb +16 -0
  1148. data/lib/fog/storm_on_demand/requests/account/expire_token.rb +16 -0
  1149. data/lib/fog/storm_on_demand/requests/billing/get_invoice.rb +16 -0
  1150. data/lib/fog/storm_on_demand/requests/billing/list_invoices.rb +16 -0
  1151. data/lib/fog/storm_on_demand/requests/billing/make_payment.rb +16 -0
  1152. data/lib/fog/storm_on_demand/requests/billing/next_invoice.rb +16 -0
  1153. data/lib/fog/storm_on_demand/requests/compute/clone_server.rb +1 -1
  1154. data/lib/fog/storm_on_demand/requests/compute/create_image.rb +16 -0
  1155. data/lib/fog/storm_on_demand/requests/compute/create_server.rb +1 -1
  1156. data/lib/fog/storm_on_demand/requests/compute/current_notifications.rb +16 -0
  1157. data/lib/fog/storm_on_demand/requests/compute/delete_image.rb +16 -0
  1158. data/lib/fog/storm_on_demand/requests/compute/delete_server.rb +1 -1
  1159. data/lib/fog/storm_on_demand/requests/compute/get_config_details.rb +16 -0
  1160. data/lib/fog/storm_on_demand/requests/compute/get_image_details.rb +16 -0
  1161. data/lib/fog/storm_on_demand/requests/compute/get_notification.rb +16 -0
  1162. data/lib/fog/storm_on_demand/requests/compute/get_product.rb +16 -0
  1163. data/lib/fog/storm_on_demand/requests/compute/get_product_code.rb +16 -0
  1164. data/lib/fog/storm_on_demand/requests/compute/get_product_price.rb +16 -0
  1165. data/lib/fog/storm_on_demand/requests/compute/get_product_starting_price.rb +16 -0
  1166. data/lib/fog/storm_on_demand/requests/compute/get_server.rb +1 -1
  1167. data/lib/fog/storm_on_demand/requests/compute/get_template_details.rb +16 -0
  1168. data/lib/fog/storm_on_demand/requests/compute/list_configs.rb +1 -1
  1169. data/lib/fog/storm_on_demand/requests/compute/list_images.rb +2 -2
  1170. data/lib/fog/storm_on_demand/requests/compute/list_notifications.rb +16 -0
  1171. data/lib/fog/storm_on_demand/requests/compute/list_products.rb +16 -0
  1172. data/lib/fog/storm_on_demand/requests/compute/list_servers.rb +2 -2
  1173. data/lib/fog/storm_on_demand/requests/compute/list_templates.rb +2 -2
  1174. data/lib/fog/storm_on_demand/requests/compute/reboot_server.rb +1 -1
  1175. data/lib/fog/storm_on_demand/requests/compute/resize_server.rb +1 -1
  1176. data/lib/fog/storm_on_demand/requests/compute/resolve_notification.rb +16 -0
  1177. data/lib/fog/storm_on_demand/requests/compute/restore_image.rb +16 -0
  1178. data/lib/fog/storm_on_demand/requests/compute/restore_template.rb +16 -0
  1179. data/lib/fog/storm_on_demand/requests/compute/server_history.rb +16 -0
  1180. data/lib/fog/storm_on_demand/requests/compute/server_status.rb +16 -0
  1181. data/lib/fog/storm_on_demand/requests/compute/shutdown_server.rb +16 -0
  1182. data/lib/fog/storm_on_demand/requests/compute/start_server.rb +16 -0
  1183. data/lib/fog/storm_on_demand/requests/compute/update_image.rb +16 -0
  1184. data/lib/fog/storm_on_demand/requests/compute/update_server.rb +16 -0
  1185. data/lib/fog/storm_on_demand/requests/dns/check_zone_delegation.rb +16 -0
  1186. data/lib/fog/storm_on_demand/requests/dns/create_record.rb +16 -0
  1187. data/lib/fog/storm_on_demand/requests/dns/create_record_region.rb +16 -0
  1188. data/lib/fog/storm_on_demand/requests/dns/create_zone.rb +16 -0
  1189. data/lib/fog/storm_on_demand/requests/dns/delete_record.rb +16 -0
  1190. data/lib/fog/storm_on_demand/requests/dns/delete_record_region.rb +16 -0
  1191. data/lib/fog/storm_on_demand/requests/dns/delete_reverse.rb +16 -0
  1192. data/lib/fog/storm_on_demand/requests/dns/delete_zone.rb +16 -0
  1193. data/lib/fog/storm_on_demand/requests/dns/get_record.rb +16 -0
  1194. data/lib/fog/storm_on_demand/requests/dns/get_zone.rb +16 -0
  1195. data/lib/fog/storm_on_demand/requests/dns/list_domains.rb +16 -0
  1196. data/lib/fog/storm_on_demand/requests/dns/list_records.rb +16 -0
  1197. data/lib/fog/storm_on_demand/requests/dns/list_zones.rb +16 -0
  1198. data/lib/fog/storm_on_demand/requests/dns/renew_domain.rb +16 -0
  1199. data/lib/fog/storm_on_demand/requests/dns/update_record.rb +16 -0
  1200. data/lib/fog/storm_on_demand/requests/dns/update_record_region.rb +16 -0
  1201. data/lib/fog/storm_on_demand/requests/dns/update_reverse.rb +16 -0
  1202. data/lib/fog/storm_on_demand/requests/dns/update_zone.rb +16 -0
  1203. data/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_graph.rb +16 -0
  1204. data/lib/fog/storm_on_demand/requests/monitoring/get_bandwidth_stats.rb +16 -0
  1205. data/lib/fog/storm_on_demand/requests/monitoring/get_load_graph.rb +16 -0
  1206. data/lib/fog/storm_on_demand/requests/monitoring/get_load_stats.rb +16 -0
  1207. data/lib/fog/storm_on_demand/requests/monitoring/get_service.rb +16 -0
  1208. data/lib/fog/storm_on_demand/requests/monitoring/get_service_status.rb +16 -0
  1209. data/lib/fog/storm_on_demand/requests/monitoring/monitoring_ips.rb +16 -0
  1210. data/lib/fog/storm_on_demand/requests/monitoring/update_service.rb +16 -0
  1211. data/lib/fog/storm_on_demand/requests/{compute → network}/add_balancer_node.rb +2 -2
  1212. data/lib/fog/storm_on_demand/requests/network/add_balancer_service.rb +16 -0
  1213. data/lib/fog/storm_on_demand/requests/network/add_ip_to_server.rb +16 -0
  1214. data/lib/fog/storm_on_demand/requests/network/attach_server_to_private_ip.rb +16 -0
  1215. data/lib/fog/storm_on_demand/requests/network/check_balancer_available.rb +16 -0
  1216. data/lib/fog/storm_on_demand/requests/network/check_server_attached.rb +16 -0
  1217. data/lib/fog/storm_on_demand/requests/network/create_balancer.rb +16 -0
  1218. data/lib/fog/storm_on_demand/requests/network/create_pool.rb +16 -0
  1219. data/lib/fog/storm_on_demand/requests/network/create_ruleset.rb +16 -0
  1220. data/lib/fog/storm_on_demand/requests/network/delete_balancer.rb +16 -0
  1221. data/lib/fog/storm_on_demand/requests/network/delete_pool.rb +16 -0
  1222. data/lib/fog/storm_on_demand/requests/network/detach_server_from_private_ip.rb +16 -0
  1223. data/lib/fog/storm_on_demand/requests/network/get_assignments.rb +16 -0
  1224. data/lib/fog/storm_on_demand/requests/network/get_balancer_details.rb +16 -0
  1225. data/lib/fog/storm_on_demand/requests/network/get_balancer_possible_nodes.rb +16 -0
  1226. data/lib/fog/storm_on_demand/requests/network/get_balancer_strategies.rb +16 -0
  1227. data/lib/fog/storm_on_demand/requests/network/get_firewall.rb +16 -0
  1228. data/lib/fog/storm_on_demand/requests/network/get_firewall_basic_options.rb +16 -0
  1229. data/lib/fog/storm_on_demand/requests/network/get_firewall_rules.rb +16 -0
  1230. data/lib/fog/storm_on_demand/requests/network/get_ip_details.rb +16 -0
  1231. data/lib/fog/storm_on_demand/requests/network/get_pool.rb +16 -0
  1232. data/lib/fog/storm_on_demand/requests/network/get_private_ip.rb +16 -0
  1233. data/lib/fog/storm_on_demand/requests/network/get_ruleset.rb +16 -0
  1234. data/lib/fog/storm_on_demand/requests/network/get_zone.rb +16 -0
  1235. data/lib/fog/storm_on_demand/requests/{compute → network}/list_balancers.rb +3 -3
  1236. data/lib/fog/storm_on_demand/requests/network/list_ip_public_accounts.rb +16 -0
  1237. data/lib/fog/storm_on_demand/requests/network/list_network_ips.rb +16 -0
  1238. data/lib/fog/storm_on_demand/requests/network/list_network_public_ips.rb +16 -0
  1239. data/lib/fog/storm_on_demand/requests/{compute → network}/list_private_ips.rb +3 -3
  1240. data/lib/fog/storm_on_demand/requests/network/list_rulesets.rb +16 -0
  1241. data/lib/fog/storm_on_demand/requests/network/list_zones.rb +16 -0
  1242. data/lib/fog/storm_on_demand/requests/{compute → network}/remove_balancer_node.rb +2 -2
  1243. data/lib/fog/storm_on_demand/requests/network/remove_balancer_service.rb +16 -0
  1244. data/lib/fog/storm_on_demand/requests/network/remove_ip_from_server.rb +16 -0
  1245. data/lib/fog/storm_on_demand/requests/network/request_new_ips.rb +16 -0
  1246. data/lib/fog/storm_on_demand/requests/network/set_default_zone.rb +16 -0
  1247. data/lib/fog/storm_on_demand/requests/network/update_balancer.rb +16 -0
  1248. data/lib/fog/storm_on_demand/requests/network/update_firewall.rb +16 -0
  1249. data/lib/fog/storm_on_demand/requests/network/update_pool.rb +16 -0
  1250. data/lib/fog/storm_on_demand/requests/network/update_ruleset.rb +16 -0
  1251. data/lib/fog/storm_on_demand/requests/storage/attach_volume_to_server.rb +16 -0
  1252. data/lib/fog/storm_on_demand/requests/storage/create_volume.rb +16 -0
  1253. data/lib/fog/storm_on_demand/requests/storage/delete_volume.rb +16 -0
  1254. data/lib/fog/storm_on_demand/requests/storage/detach_volume_from_server.rb +16 -0
  1255. data/lib/fog/storm_on_demand/requests/storage/get_volume.rb +16 -0
  1256. data/lib/fog/storm_on_demand/requests/storage/list_clusters.rb +16 -0
  1257. data/lib/fog/storm_on_demand/requests/storage/list_volumes.rb +16 -0
  1258. data/lib/fog/storm_on_demand/requests/storage/resize_volume.rb +16 -0
  1259. data/lib/fog/storm_on_demand/requests/storage/update_volume.rb +16 -0
  1260. data/lib/fog/storm_on_demand/requests/support/add_feedback.rb +16 -0
  1261. data/lib/fog/storm_on_demand/requests/support/add_transaction_feedback.rb +16 -0
  1262. data/lib/fog/storm_on_demand/requests/support/authenticate.rb +16 -0
  1263. data/lib/fog/storm_on_demand/requests/support/close_ticket.rb +16 -0
  1264. data/lib/fog/storm_on_demand/requests/support/create_ticket.rb +16 -0
  1265. data/lib/fog/storm_on_demand/requests/support/get_active_alert.rb +16 -0
  1266. data/lib/fog/storm_on_demand/requests/support/get_ticket_details.rb +16 -0
  1267. data/lib/fog/storm_on_demand/requests/support/list_ticket_types.rb +16 -0
  1268. data/lib/fog/storm_on_demand/requests/support/list_tickets.rb +16 -0
  1269. data/lib/fog/storm_on_demand/requests/support/reopen_ticket.rb +16 -0
  1270. data/lib/fog/storm_on_demand/requests/support/reply_ticket.rb +16 -0
  1271. data/lib/fog/storm_on_demand/requests/vpn/create_vpn.rb +16 -0
  1272. data/lib/fog/storm_on_demand/requests/vpn/get_vpn.rb +16 -0
  1273. data/lib/fog/storm_on_demand/requests/vpn/list_vpn_users.rb +16 -0
  1274. data/lib/fog/storm_on_demand/requests/vpn/update_vpn.rb +16 -0
  1275. data/lib/fog/storm_on_demand/shared.rb +55 -0
  1276. data/lib/fog/storm_on_demand/storage.rb +69 -0
  1277. data/lib/fog/storm_on_demand/support.rb +68 -0
  1278. data/lib/fog/storm_on_demand/vpn.rb +58 -0
  1279. data/lib/fog/support.rb +26 -0
  1280. data/lib/fog/terremark/models/shared/server.rb +5 -3
  1281. data/lib/fog/terremark/parser.rb +14 -13
  1282. data/lib/fog/terremark/parsers/shared/get_catalog.rb +5 -19
  1283. data/lib/fog/terremark/parsers/shared/get_catalog_item.rb +4 -14
  1284. data/lib/fog/terremark/parsers/shared/get_internet_services.rb +1 -1
  1285. data/lib/fog/terremark/parsers/shared/get_keys_list.rb +4 -18
  1286. data/lib/fog/terremark/parsers/shared/get_network_ips.rb +1 -1
  1287. data/lib/fog/terremark/parsers/shared/get_node_services.rb +1 -1
  1288. data/lib/fog/terremark/parsers/shared/get_organization.rb +4 -3
  1289. data/lib/fog/terremark/parsers/shared/get_organizations.rb +3 -2
  1290. data/lib/fog/terremark/parsers/shared/get_public_ips.rb +1 -1
  1291. data/lib/fog/terremark/parsers/shared/get_tasks_list.rb +4 -17
  1292. data/lib/fog/terremark/parsers/shared/get_vapp_template.rb +3 -14
  1293. data/lib/fog/terremark/parsers/shared/get_vdc.rb +6 -38
  1294. data/lib/fog/terremark/parsers/shared/instantiate_vapp_template.rb +3 -14
  1295. data/lib/fog/terremark/parsers/shared/internet_service.rb +2 -5
  1296. data/lib/fog/terremark/parsers/shared/network.rb +3 -11
  1297. data/lib/fog/terremark/parsers/shared/node_service.rb +1 -1
  1298. data/lib/fog/terremark/parsers/shared/public_ip.rb +1 -1
  1299. data/lib/fog/terremark/parsers/shared/task.rb +3 -14
  1300. data/lib/fog/terremark/parsers/shared/vapp.rb +3 -14
  1301. data/lib/fog/vcloud/compute.rb +9 -2
  1302. data/lib/fog/vcloud/models/compute/catalog_item.rb +8 -0
  1303. data/lib/fog/vcloud/models/compute/server.rb +36 -2
  1304. data/lib/fog/vcloud/models/compute/tag.rb +18 -0
  1305. data/lib/fog/vcloud/models/compute/tags.rb +32 -0
  1306. data/lib/fog/vcloud/models/compute/vapp.rb +11 -0
  1307. data/lib/fog/vcloud/requests/compute/configure_metadata.rb +36 -0
  1308. data/lib/fog/vcloud/requests/compute/configure_vm.rb +2 -2
  1309. data/lib/fog/vcloud/requests/compute/configure_vm_cpus.rb +1 -1
  1310. data/lib/fog/vcloud/requests/compute/configure_vm_customization_script.rb +33 -0
  1311. data/lib/fog/vcloud/requests/compute/configure_vm_memory.rb +1 -1
  1312. data/lib/fog/vcloud/requests/compute/configure_vm_network.rb +36 -0
  1313. data/lib/fog/vcloud/requests/compute/delete_metadata.rb +10 -0
  1314. data/lib/fog/vcloud/requests/compute/get_metadata.rb +10 -0
  1315. data/lib/fog/vcloud/requests/compute/instantiate_vapp_template.rb +8 -4
  1316. data/lib/fog/version.rb +1 -1
  1317. data/lib/fog/volume.rb +6 -6
  1318. data/lib/fog/vpn.rb +25 -0
  1319. data/lib/fog/vsphere/compute.rb +160 -15
  1320. data/lib/fog/vsphere/models/compute/customfield.rb +19 -0
  1321. data/lib/fog/vsphere/models/compute/customfields.rb +27 -0
  1322. data/lib/fog/vsphere/models/compute/customvalue.rb +17 -0
  1323. data/lib/fog/vsphere/models/compute/customvalues.rb +37 -0
  1324. data/lib/fog/vsphere/models/compute/datacenter.rb +4 -0
  1325. data/lib/fog/vsphere/models/compute/interface.rb +2 -0
  1326. data/lib/fog/vsphere/models/compute/interfaces.rb +14 -2
  1327. data/lib/fog/vsphere/models/compute/networks.rb +2 -2
  1328. data/lib/fog/vsphere/models/compute/server.rb +44 -8
  1329. data/lib/fog/vsphere/models/compute/servers.rb +9 -9
  1330. data/lib/fog/vsphere/requests/compute/create_vm.rb +18 -3
  1331. data/lib/fog/vsphere/requests/compute/get_datacenter.rb +3 -1
  1332. data/lib/fog/vsphere/requests/compute/get_datastore.rb +6 -1
  1333. data/lib/fog/vsphere/requests/compute/get_folder.rb +3 -1
  1334. data/lib/fog/vsphere/requests/compute/get_network.rb +6 -1
  1335. data/lib/fog/vsphere/requests/compute/get_template.rb +16 -0
  1336. data/lib/fog/vsphere/requests/compute/get_virtual_machine.rb +13 -28
  1337. data/lib/fog/vsphere/requests/compute/list_customfields.rb +22 -0
  1338. data/lib/fog/vsphere/requests/compute/list_datacenters.rb +1 -0
  1339. data/lib/fog/vsphere/requests/compute/list_templates.rb +49 -0
  1340. data/lib/fog/vsphere/requests/compute/list_virtual_machines.rb +25 -122
  1341. data/lib/fog/vsphere/requests/compute/list_vm_customvalues.rb +22 -0
  1342. data/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb +14 -1
  1343. data/lib/fog/vsphere/requests/compute/modify_vm_interface.rb +58 -0
  1344. data/lib/fog/vsphere/requests/compute/vm_clone.rb +79 -50
  1345. data/lib/fog/vsphere/requests/compute/vm_power_off.rb +2 -0
  1346. data/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb +1 -1
  1347. data/lib/fog/xenserver.rb +2 -0
  1348. data/lib/fog/xenserver/CHANGELOG.md +77 -0
  1349. data/lib/fog/xenserver/compute.rb +23 -12
  1350. data/lib/fog/xenserver/examples/networks-and-vlans.rb +45 -0
  1351. data/lib/fog/xenserver/models/compute/console.rb +27 -0
  1352. data/lib/fog/xenserver/models/compute/consoles.rb +25 -0
  1353. data/lib/fog/xenserver/models/compute/host.rb +19 -6
  1354. data/lib/fog/xenserver/models/compute/host_cpu.rb +37 -0
  1355. data/lib/fog/xenserver/models/compute/network.rb +33 -0
  1356. data/lib/fog/xenserver/models/compute/pbd.rb +1 -1
  1357. data/lib/fog/xenserver/models/compute/pool.rb +4 -4
  1358. data/lib/fog/xenserver/models/compute/server.rb +13 -7
  1359. data/lib/fog/xenserver/models/compute/servers.rb +5 -0
  1360. data/lib/fog/xenserver/models/compute/storage_repository.rb +4 -4
  1361. data/lib/fog/xenserver/models/compute/vlan.rb +80 -0
  1362. data/lib/fog/xenserver/models/compute/vlans.rb +39 -0
  1363. data/lib/fog/xenserver/requests/compute/create_network.rb +42 -0
  1364. data/lib/fog/xenserver/requests/compute/create_server.rb +4 -0
  1365. data/lib/fog/xenserver/requests/compute/create_vlan.rb +35 -0
  1366. data/lib/fog/xenserver/requests/compute/destroy_network.rb +33 -0
  1367. data/lib/fog/xenserver/requests/compute/destroy_vlan.rb +32 -0
  1368. data/lib/fog/xenserver/requests/compute/snapshot_revert.rb +22 -0
  1369. data/lib/fog/xenserver/requests/compute/snapshot_server.rb +22 -0
  1370. data/lib/fog/xml.rb +21 -0
  1371. data/lib/fog/xml/sax_parser_connection.rb +46 -0
  1372. data/lib/fog/zerigo/models/dns/record.rb +0 -1
  1373. data/lib/fog/zerigo/models/dns/records.rb +15 -12
  1374. data/lib/fog/zerigo/models/dns/zone.rb +1 -1
  1375. data/lib/fog/zerigo/models/dns/zones.rb +2 -2
  1376. data/lib/fog/zerigo/requests/dns/list_zones.rb +7 -1
  1377. data/lib/tasks/changelog_task.rb +8 -2
  1378. data/tests/aws/models/auto_scaling/groups_test.rb +22 -0
  1379. data/tests/aws/models/compute/volume_tests.rb +1 -1
  1380. data/tests/aws/models/data_pipeline/pipeline_tests.rb +8 -0
  1381. data/tests/aws/models/data_pipeline/pipelines_tests.rb +8 -0
  1382. data/tests/aws/models/elb/model_tests.rb +28 -1
  1383. data/tests/aws/models/iam/roles_tests.rb +63 -0
  1384. data/tests/aws/models/rds/server_tests.rb +10 -9
  1385. data/tests/aws/models/storage/directory_tests.rb +41 -5
  1386. data/tests/aws/models/storage/file_tests.rb +1 -2
  1387. data/tests/aws/models/storage/files_tests.rb +6 -4
  1388. data/tests/aws/models/storage/url_tests.rb +7 -5
  1389. data/tests/aws/models/storage/version_tests.rb +2 -2
  1390. data/tests/aws/models/storage/versions_tests.rb +5 -5
  1391. data/tests/aws/parsers/elb/describe_load_balancers.rb +65 -0
  1392. data/tests/aws/requests/cloud_formation/stack_tests.rb +10 -0
  1393. data/tests/aws/requests/compute/address_tests.rb +4 -0
  1394. data/tests/aws/requests/compute/image_tests.rb +22 -2
  1395. data/tests/aws/requests/compute/instance_tests.rb +50 -54
  1396. data/tests/aws/requests/compute/security_group_tests.rb +1 -1
  1397. data/tests/aws/requests/compute/spot_instance_tests.rb +3 -2
  1398. data/tests/aws/requests/compute/volume_tests.rb +3 -3
  1399. data/tests/aws/requests/data_pipeline/helper.rb +44 -0
  1400. data/tests/aws/requests/data_pipeline/pipeline_tests.rb +54 -0
  1401. data/tests/aws/requests/elasticache/describe_reserved_cache_nodes.rb +17 -0
  1402. data/tests/aws/requests/elasticache/helper.rb +17 -0
  1403. data/tests/aws/requests/elb/helper.rb +2 -1
  1404. data/tests/aws/requests/elb/listener_tests.rb +1 -1
  1405. data/tests/aws/requests/elb/load_balancer_tests.rb +5 -1
  1406. data/tests/aws/requests/elb/policy_tests.rb +85 -6
  1407. data/tests/aws/requests/glacier/vault_tests.rb +1 -1
  1408. data/tests/aws/requests/iam/helper.rb +4 -1
  1409. data/tests/aws/requests/iam/server_certificate_tests.rb +33 -1
  1410. data/tests/aws/requests/iam/user_tests.rb +10 -8
  1411. data/tests/aws/requests/rds/helper.rb +14 -0
  1412. data/tests/aws/requests/rds/instance_tests.rb +8 -5
  1413. data/tests/aws/requests/rds/log_file_tests.rb +19 -0
  1414. data/tests/aws/requests/ses/verified_domain_identity_tests.rb +16 -0
  1415. data/tests/aws/requests/storage/bucket_tests.rb +23 -3
  1416. data/tests/aws/requests/storage/multipart_upload_tests.rb +1 -1
  1417. data/tests/aws/requests/storage/object_tests.rb +22 -13
  1418. data/tests/aws/requests/sts/assume_role_tests.rb +19 -0
  1419. data/tests/bluebox/requests/blb/helper.rb +64 -0
  1420. data/tests/bluebox/requests/blb/lb_tests.rb +75 -0
  1421. data/tests/brightbox/compute/image_selector_tests.rb +103 -0
  1422. data/tests/brightbox/oauth2_tests.rb +8 -1
  1423. data/tests/brightbox/requests/compute/collaboration_tests.rb +41 -0
  1424. data/tests/brightbox/requests/compute/firewall_policy_tests.rb +7 -0
  1425. data/tests/brightbox/requests/compute/helper.rb +50 -4
  1426. data/tests/brightbox/requests/compute/user_collaboration_tests.rb +67 -0
  1427. data/tests/cloudsigma/models/server_tests.rb +72 -0
  1428. data/tests/cloudsigma/models/servers_tests.rb +7 -0
  1429. data/tests/cloudsigma/models/volume_tests.rb +21 -0
  1430. data/tests/cloudsigma/models/volumes_tests.rb +9 -0
  1431. data/tests/cloudsigma/requests/server_tests.rb +81 -0
  1432. data/tests/cloudsigma/requests/volumes_tests.rb +55 -0
  1433. data/tests/cloudstack/compute/models/disk_offering_tests.rb +5 -0
  1434. data/tests/cloudstack/compute/models/snapshot_tests.rb +19 -0
  1435. data/tests/cloudstack/requests/disk_offering_tests.rb +3 -3
  1436. data/tests/cloudstack/requests/os_type_tests.rb +2 -3
  1437. data/tests/compute/helper.rb +17 -0
  1438. data/tests/core/connection_tests.rb +26 -0
  1439. data/tests/core/mocking_tests.rb +15 -0
  1440. data/tests/core/parser_tests.rb +32 -6
  1441. data/tests/digitalocean/helper.rb +51 -0
  1442. data/tests/digitalocean/models/compute/flavor_tests.rb +30 -0
  1443. data/tests/digitalocean/models/compute/image_tests.rb +31 -0
  1444. data/tests/digitalocean/models/compute/region_tests.rb +30 -0
  1445. data/tests/digitalocean/models/compute/server_tests.rb +92 -0
  1446. data/tests/digitalocean/models/compute/servers_tests.rb +21 -0
  1447. data/tests/digitalocean/models/compute/ssh_key_tests.rb +44 -0
  1448. data/tests/digitalocean/models/compute/ssh_keys_tests.rb +32 -0
  1449. data/tests/digitalocean/requests/compute/create_server_tests.rb +25 -0
  1450. data/tests/digitalocean/requests/compute/create_ssh_key_tests.rb +22 -0
  1451. data/tests/digitalocean/requests/compute/destroy_server_tests.rb +14 -0
  1452. data/tests/digitalocean/requests/compute/destroy_ssh_key_tests.rb +23 -0
  1453. data/tests/digitalocean/requests/compute/get_server_details_tests.rb +13 -0
  1454. data/tests/digitalocean/requests/compute/get_ssh_key_tests.rb +25 -0
  1455. data/tests/digitalocean/requests/compute/list_flavors_tests.rb +23 -0
  1456. data/tests/digitalocean/requests/compute/list_images_tests.rb +24 -0
  1457. data/tests/digitalocean/requests/compute/list_regions_tests.rb +23 -0
  1458. data/tests/digitalocean/requests/compute/list_servers_tests.rb +26 -0
  1459. data/tests/digitalocean/requests/compute/list_ssh_keys_tests.rb +24 -0
  1460. data/tests/digitalocean/requests/compute/power_cycle_server_tests.rb +20 -0
  1461. data/tests/digitalocean/requests/compute/power_state_tests.rb +25 -0
  1462. data/tests/digitalocean/requests/compute/reboot_server_tests.rb +14 -0
  1463. data/tests/dnsimple/requests/dns/dns_tests.rb +30 -26
  1464. data/tests/dreamhost/README.md +56 -0
  1465. data/tests/dreamhost/dns_tests.rb +20 -0
  1466. data/tests/dreamhost/helper.rb +19 -0
  1467. data/tests/dreamhost/models/dns/record_tests.rb +73 -0
  1468. data/tests/dreamhost/models/dns/records_tests.rb +29 -0
  1469. data/tests/dreamhost/models/dns/zone_tests.rb +62 -0
  1470. data/tests/dreamhost/models/dns/zones_tests.rb +29 -0
  1471. data/tests/dreamhost/requests/dns/create_record_tests.rb +39 -0
  1472. data/tests/dreamhost/requests/dns/delete_record_tests.rb +26 -0
  1473. data/tests/dreamhost/requests/dns/list_records_tests.rb +31 -0
  1474. data/tests/dynect/requests/dns/dns_tests.rb +4 -7
  1475. data/tests/ecloud/compute/models/server_tests.rb +9 -1
  1476. data/tests/glesys/requests/compute/helper.rb +5 -5
  1477. data/tests/google/models/compute/server_tests.rb +24 -0
  1478. data/tests/google/requests/compute/disk_tests.rb +88 -0
  1479. data/tests/google/requests/compute/firewall_tests.rb +85 -0
  1480. data/tests/google/requests/compute/image_tests.rb +80 -0
  1481. data/tests/google/requests/compute/network_tests.rb +74 -0
  1482. data/tests/google/requests/compute/operation_tests.rb +19 -0
  1483. data/tests/google/requests/compute/server_tests.rb +84 -0
  1484. data/tests/google/requests/compute/zone_tests.rb +46 -0
  1485. data/tests/helper.rb +16 -1
  1486. data/tests/helpers/collection_helper.rb +35 -0
  1487. data/tests/helpers/formats_helper.rb +63 -50
  1488. data/tests/helpers/formats_helper_tests.rb +87 -36
  1489. data/tests/helpers/mock_helper.rb +15 -2
  1490. data/tests/helpers/schema_validator_tests.rb +107 -0
  1491. data/tests/hp/models/block_storage/bootable_volume_tests.rb +23 -0
  1492. data/tests/hp/models/block_storage/snapshot_tests.rb +23 -0
  1493. data/tests/hp/models/block_storage/volume_tests.rb +21 -0
  1494. data/tests/hp/models/compute/address_tests.rb +1 -1
  1495. data/tests/hp/models/compute/addresses_tests.rb +1 -1
  1496. data/tests/hp/models/compute/key_pair_tests.rb +1 -1
  1497. data/tests/hp/models/compute/key_pairs_tests.rb +1 -1
  1498. data/tests/hp/models/compute/metadata_image_tests.rb +60 -0
  1499. data/tests/hp/models/compute/metadata_server_tests.rb +54 -0
  1500. data/tests/hp/models/compute/security_group_tests.rb +3 -1
  1501. data/tests/hp/models/compute/security_groups_tests.rb +1 -1
  1502. data/tests/hp/models/storage/directories_tests.rb +23 -0
  1503. data/tests/hp/models/storage/directory_tests.rb +62 -0
  1504. data/tests/hp/models/storage/file_tests.rb +44 -0
  1505. data/tests/hp/models/storage/files_tests.rb +38 -0
  1506. data/tests/hp/requests/block_storage/bootable_volume_tests.rb +78 -0
  1507. data/tests/hp/requests/block_storage/snapshot_tests.rb +56 -0
  1508. data/tests/hp/requests/block_storage/volume_tests.rb +94 -0
  1509. data/tests/hp/requests/cdn/container_tests.rb +1 -1
  1510. data/tests/hp/requests/compute/address_tests.rb +5 -6
  1511. data/tests/hp/requests/compute/flavor_tests.rb +1 -1
  1512. data/tests/hp/requests/compute/image_tests.rb +1 -1
  1513. data/tests/hp/requests/compute/key_pair_tests.rb +1 -1
  1514. data/tests/hp/requests/compute/metadata_tests.rb +70 -0
  1515. data/tests/hp/requests/compute/persistent_server_tests.rb +66 -0
  1516. data/tests/hp/requests/compute/security_group_rule_tests.rb +1 -1
  1517. data/tests/hp/requests/compute/security_group_tests.rb +1 -1
  1518. data/tests/hp/requests/compute/server_address_tests.rb +1 -1
  1519. data/tests/hp/requests/compute/server_tests.rb +5 -6
  1520. data/tests/hp/requests/compute/server_volume_tests.rb +76 -0
  1521. data/tests/hp/requests/storage/container_tests.rb +1 -1
  1522. data/tests/hp/requests/storage/object_tests.rb +9 -1
  1523. data/tests/hp/user_agent_tests.rb +13 -0
  1524. data/tests/internet_archive/models/storage/directory_tests.rb +43 -0
  1525. data/tests/internet_archive/models/storage/file_tests.rb +61 -0
  1526. data/tests/internet_archive/models/storage/files_tests.rb +58 -0
  1527. data/tests/internet_archive/models/storage/url_tests.rb +28 -0
  1528. data/tests/internet_archive/requests/storage/acl_utils_tests.rb +209 -0
  1529. data/tests/internet_archive/requests/storage/bucket_tests.rb +324 -0
  1530. data/tests/internet_archive/requests/storage/cors_utils_tests.rb +108 -0
  1531. data/tests/internet_archive/requests/storage/multipart_upload_tests.rb +132 -0
  1532. data/tests/internet_archive/requests/storage/object_tests.rb +166 -0
  1533. data/tests/internet_archive/signaturev4_tests.rb +41 -0
  1534. data/tests/internet_archive/signed_params_tests.rb +5 -0
  1535. data/tests/joyent/requests/compute/networks_tests.rb +39 -0
  1536. data/tests/openstack/models/compute/images_tests.rb +14 -0
  1537. data/tests/openstack/models/compute/server_tests.rb +133 -2
  1538. data/tests/openstack/models/identity/roles_tests.rb +1 -0
  1539. data/tests/openstack/models/identity/user_tests.rb +2 -2
  1540. data/tests/openstack/models/image/images_tests.rb +5 -0
  1541. data/tests/openstack/models/network/floating_ip_tests.rb +30 -0
  1542. data/tests/openstack/models/network/floating_ips_tests.rb +27 -0
  1543. data/tests/openstack/models/network/lb_health_monitor_tests.rb +52 -0
  1544. data/tests/openstack/models/network/lb_health_monitors_tests.rb +21 -0
  1545. data/tests/openstack/models/network/lb_member_tests.rb +28 -0
  1546. data/tests/openstack/models/network/lb_members_tests.rb +21 -0
  1547. data/tests/openstack/models/network/lb_pool_tests.rb +53 -0
  1548. data/tests/openstack/models/network/lb_pools_tests.rb +20 -0
  1549. data/tests/openstack/models/network/lb_vip_tests.rb +39 -0
  1550. data/tests/openstack/models/network/lb_vips_tests.rb +21 -0
  1551. data/tests/openstack/models/network/network_tests.rb +38 -1
  1552. data/tests/openstack/models/network/router_tests.rb +38 -0
  1553. data/tests/openstack/models/network/routers_tests.rb +21 -0
  1554. data/tests/openstack/models/storage/file_tests.rb +178 -0
  1555. data/tests/openstack/requests/compute/address_tests.rb +8 -0
  1556. data/tests/openstack/requests/compute/flavor_tests.rb +12 -0
  1557. data/tests/openstack/requests/compute/limit_tests.rb +1 -1
  1558. data/tests/openstack/requests/compute/tenant_tests.rb +2 -2
  1559. data/tests/openstack/requests/compute/volume_tests.rb +11 -9
  1560. data/tests/openstack/requests/identity/ec2_credentials_tests.rb +7 -4
  1561. data/tests/openstack/requests/identity/helper.rb +17 -0
  1562. data/tests/openstack/requests/identity/role_tests.rb +6 -0
  1563. data/tests/openstack/requests/identity/tenant_tests.rb +14 -12
  1564. data/tests/openstack/requests/identity/user_tests.rb +9 -5
  1565. data/tests/openstack/requests/metering/meter_tests.rb +52 -0
  1566. data/tests/openstack/requests/metering/resource_tests.rb +19 -0
  1567. data/tests/openstack/requests/network/lb_health_monitor_tests.rb +93 -0
  1568. data/tests/openstack/requests/network/lb_member_tests.rb +60 -0
  1569. data/tests/openstack/requests/network/lb_pool_tests.rb +80 -0
  1570. data/tests/openstack/requests/network/lb_vip_tests.rb +71 -0
  1571. data/tests/openstack/requests/network/network_tests.rb +61 -10
  1572. data/tests/openstack/requests/network/quota_tests.rb +65 -0
  1573. data/tests/openstack/requests/network/router_tests.rb +75 -0
  1574. data/tests/openstack/requests/storage/container_tests.rb +64 -0
  1575. data/tests/openstack/requests/storage/large_object_tests.rb +111 -0
  1576. data/tests/openstack/requests/storage/object_tests.rb +109 -0
  1577. data/tests/openstack/requests/volume/quota_tests.rb +51 -0
  1578. data/tests/openstack/storage_tests.rb +19 -0
  1579. data/tests/openstack/version_tests.rb +55 -0
  1580. data/tests/openstack/volume_tests.rb +15 -0
  1581. data/tests/openvz/helper.rb +47 -0
  1582. data/tests/openvz/models/compute/server_tests.rb +56 -0
  1583. data/tests/openvz/models/compute/servers_tests.rb +35 -0
  1584. data/tests/ovirt/requests/compute/list_quotas_tests.rb +12 -0
  1585. data/tests/rackspace/block_storage_tests.rb +114 -0
  1586. data/tests/rackspace/cdn_tests.rb +173 -0
  1587. data/tests/rackspace/compute_tests.rb +99 -0
  1588. data/tests/rackspace/compute_v2_tests.rb +113 -0
  1589. data/tests/rackspace/databases_tests.rb +110 -0
  1590. data/tests/rackspace/dns_tests.rb +105 -0
  1591. data/tests/rackspace/helper.rb +47 -1
  1592. data/tests/rackspace/identity_tests.rb +25 -0
  1593. data/tests/rackspace/load_balancer_tests.rb +111 -0
  1594. data/tests/rackspace/models/block_storage/snapshot_tests.rb +4 -6
  1595. data/tests/rackspace/models/block_storage/snapshots_tests.rb +1 -3
  1596. data/tests/rackspace/models/block_storage/volume_tests.rb +3 -5
  1597. data/tests/rackspace/models/block_storage/volume_types_tests.rb +1 -3
  1598. data/tests/rackspace/models/block_storage/volumes_tests.rb +1 -3
  1599. data/tests/rackspace/models/compute_v2/flavors_tests.rb +2 -5
  1600. data/tests/rackspace/models/compute_v2/image_tests.rb +57 -10
  1601. data/tests/rackspace/models/compute_v2/images_tests.rb +2 -4
  1602. data/tests/rackspace/models/compute_v2/keypairs_tests.rb +47 -0
  1603. data/tests/rackspace/models/compute_v2/metadata_tests.rb +44 -0
  1604. data/tests/rackspace/models/compute_v2/network_tests.rb +10 -0
  1605. data/tests/rackspace/models/compute_v2/networks_tests.rb +10 -0
  1606. data/tests/rackspace/models/compute_v2/server_tests.rb +152 -15
  1607. data/tests/rackspace/models/compute_v2/servers_tests.rb +9 -7
  1608. data/tests/rackspace/models/dns/zones_tests.rb +36 -0
  1609. data/tests/rackspace/models/identity/credentials_tests.rb +14 -5
  1610. data/tests/rackspace/models/identity/service_catalog_tests.rb +81 -0
  1611. data/tests/rackspace/models/load_balancers/load_balancer_tests.rb +2 -0
  1612. data/tests/rackspace/models/monitoring/agent_token_tests.rb +9 -0
  1613. data/tests/rackspace/models/monitoring/agent_tokens_tests.rb +9 -0
  1614. data/tests/rackspace/models/monitoring/alarm_example_tests.rb +18 -0
  1615. data/tests/rackspace/models/monitoring/alarm_examples_tests.rb +19 -0
  1616. data/tests/rackspace/models/monitoring/alarm_tests.rb +56 -0
  1617. data/tests/rackspace/models/monitoring/alarms_tests.rb +25 -0
  1618. data/tests/rackspace/models/monitoring/check_tests.rb +50 -0
  1619. data/tests/rackspace/models/monitoring/check_types_tests.rb +14 -0
  1620. data/tests/rackspace/models/monitoring/checks_tests.rb +16 -0
  1621. data/tests/rackspace/models/monitoring/data_points_tests.rb +19 -0
  1622. data/tests/rackspace/models/monitoring/entities_tests.rb +14 -0
  1623. data/tests/rackspace/models/monitoring/entity_tests.rb +26 -0
  1624. data/tests/rackspace/models/monitoring/metric_tests.rb +19 -0
  1625. data/tests/rackspace/models/monitoring/metrics_tests.rb +17 -0
  1626. data/tests/rackspace/models/storage/account_tests.rb +28 -0
  1627. data/tests/rackspace/models/storage/directories_tests.rb +29 -0
  1628. data/tests/rackspace/models/storage/directory_tests.rb +141 -0
  1629. data/tests/rackspace/models/storage/file_tests.rb +146 -16
  1630. data/tests/rackspace/models/storage/metadata_tests.rb +174 -0
  1631. data/tests/rackspace/monitoring_tests.rb +72 -0
  1632. data/tests/rackspace/rackspace_tests.rb +56 -0
  1633. data/tests/rackspace/requests/block_storage/snapshot_tests.rb +14 -15
  1634. data/tests/rackspace/requests/block_storage/volume_tests.rb +9 -11
  1635. data/tests/rackspace/requests/block_storage/volume_type_tests.rb +6 -16
  1636. data/tests/rackspace/requests/cdn/cdn_tests.rb +76 -0
  1637. data/tests/rackspace/requests/compute/image_tests.rb +3 -3
  1638. data/tests/rackspace/requests/compute_v2/address_tests.rb +1 -1
  1639. data/tests/rackspace/requests/compute_v2/attachment_tests.rb +19 -20
  1640. data/tests/rackspace/requests/compute_v2/flavor_tests.rb +8 -10
  1641. data/tests/rackspace/requests/compute_v2/image_tests.rb +19 -21
  1642. data/tests/rackspace/requests/compute_v2/keypair_tests.rb +55 -0
  1643. data/tests/rackspace/requests/compute_v2/metadata_tests.rb +104 -0
  1644. data/tests/rackspace/requests/compute_v2/network_tests.rb +49 -0
  1645. data/tests/rackspace/requests/compute_v2/server_tests.rb +55 -58
  1646. data/tests/rackspace/requests/databases/database_tests.rb +23 -20
  1647. data/tests/rackspace/requests/databases/user_tests.rb +6 -6
  1648. data/tests/rackspace/requests/dns/dns_tests.rb +1 -1
  1649. data/tests/rackspace/requests/dns/records_tests.rb +3 -3
  1650. data/tests/rackspace/requests/identity/token_tests.rb +9 -0
  1651. data/tests/rackspace/requests/identity/user_tests.rb +4 -5
  1652. data/tests/rackspace/requests/load_balancers/helper.rb +2 -0
  1653. data/tests/rackspace/requests/load_balancers/load_balancer_tests.rb +2 -1
  1654. data/tests/rackspace/requests/load_balancers/usage_tests.rb +4 -2
  1655. data/tests/rackspace/requests/monitoring/agent_tests.rb +34 -0
  1656. data/tests/rackspace/requests/monitoring/alarm_example_tests.rb +30 -0
  1657. data/tests/rackspace/requests/monitoring/alarm_tests.rb +56 -0
  1658. data/tests/rackspace/requests/monitoring/check_tests.rb +40 -0
  1659. data/tests/rackspace/requests/monitoring/entity_tests.rb +37 -0
  1660. data/tests/rackspace/requests/monitoring/helper.rb +78 -0
  1661. data/tests/rackspace/requests/monitoring/list_tests.rb +60 -0
  1662. data/tests/rackspace/requests/storage/container_tests.rb +8 -1
  1663. data/tests/rackspace/requests/storage/large_object_tests.rb +326 -18
  1664. data/tests/rackspace/requests/storage/object_tests.rb +89 -4
  1665. data/tests/rackspace/service_tests.rb +83 -0
  1666. data/tests/rackspace/storage_tests.rb +116 -0
  1667. data/tests/riakcs/requests/provisioning/provisioning_tests.rb +174 -0
  1668. data/tests/riakcs/requests/usage/usage_tests.rb +29 -0
  1669. data/tests/storage/helper.rb +3 -0
  1670. data/tests/vcloud/requests/compute/disk_configure_tests.rb +7 -2
  1671. data/tests/vsphere/models/compute/server_tests.rb +1 -1
  1672. data/tests/vsphere/requests/compute/list_virtual_machines_tests.rb +2 -2
  1673. data/tests/vsphere/requests/compute/vm_clone_tests.rb +21 -5
  1674. data/tests/xenserver/compute_tests.rb +5 -5
  1675. data/tests/xenserver/models/compute/console_test.rb +35 -0
  1676. data/tests/xenserver/models/compute/consoles_test.rb +19 -0
  1677. data/tests/xenserver/models/compute/host_cpu_tests.rb +58 -0
  1678. data/tests/xenserver/models/compute/host_metrics_tests.rb +1 -1
  1679. data/tests/xenserver/models/compute/host_tests.rb +13 -1
  1680. data/tests/xenserver/models/compute/network_tests.rb +18 -6
  1681. data/tests/xenserver/models/compute/server_tests.rb +35 -18
  1682. data/tests/xenserver/models/compute/servers_tests.rb +1 -0
  1683. data/tests/xenserver/models/compute/vlan_tests.rb +76 -0
  1684. data/tests/xenserver/models/compute/vlans_tests.rb +36 -0
  1685. data/tests/xenserver/requests/compute/create_network_tests.rb +20 -0
  1686. data/tests/xenserver/requests/compute/create_vlan_tests.rb +36 -0
  1687. data/tests/xenserver/requests/compute/destroy_network_tests.rb +13 -0
  1688. data/tests/xenserver/requests/compute/destroy_vlan_tests.rb +36 -0
  1689. data/tests/zerigo/requests/dns/dns_tests.rb +59 -13
  1690. metadata +1211 -107
  1691. data/docs/storage/aws.markdown +0 -21
  1692. data/lib/fog/bin/virtual_box.rb +0 -57
  1693. data/lib/fog/openstack/README.identity.md +0 -69
  1694. data/lib/fog/providers.rb +0 -33
  1695. data/lib/fog/rackspace/requests/identity/get_credentials.rb +0 -15
  1696. data/lib/fog/storm_on_demand/models/compute/balancers.rb +0 -21
  1697. data/lib/fog/storm_on_demand/models/compute/private_ips.rb +0 -31
  1698. data/lib/fog/storm_on_demand/models/compute/stats.rb +0 -22
  1699. data/lib/fog/storm_on_demand/requests/compute/get_stats.rb +0 -16
  1700. data/lib/fog/virtual_box.rb +0 -11
  1701. data/lib/fog/virtual_box/compute.rb +0 -59
  1702. data/lib/fog/virtual_box/models/compute/medium.rb +0 -87
  1703. data/lib/fog/virtual_box/models/compute/medium_format.rb +0 -34
  1704. data/lib/fog/virtual_box/models/compute/mediums.rb +0 -32
  1705. data/lib/fog/virtual_box/models/compute/nat_engine.rb +0 -65
  1706. data/lib/fog/virtual_box/models/compute/nat_redirect.rb +0 -91
  1707. data/lib/fog/virtual_box/models/compute/nat_redirects.rb +0 -41
  1708. data/lib/fog/virtual_box/models/compute/network_adapter.rb +0 -82
  1709. data/lib/fog/virtual_box/models/compute/network_adapters.rb +0 -42
  1710. data/lib/fog/virtual_box/models/compute/server.rb +0 -199
  1711. data/lib/fog/virtual_box/models/compute/servers.rb +0 -41
  1712. data/lib/fog/virtual_box/models/compute/storage_controller.rb +0 -83
  1713. data/lib/fog/virtual_box/models/compute/storage_controllers.rb +0 -38
@@ -15,7 +15,7 @@ Shindo.tests('Fog::Compute[:aws] | security group requests', ['aws']) do
15
15
  'fromPort' => Fog::Nullable::Integer,
16
16
  'groups' => [{ 'groupName' => Fog::Nullable::String, 'userId' => String, 'groupId' => String }],
17
17
  'ipProtocol' => String,
18
- 'ipRanges' => [],
18
+ 'ipRanges' => [Fog::Nullable::Hash],
19
19
  'toPort' => Fog::Nullable::Integer,
20
20
  }],
21
21
  'ipPermissionsEgress' => [],
@@ -12,6 +12,7 @@ Shindo.tests('Fog::Compute[:aws] | spot instance requests', ['aws']) do
12
12
  'imageId' => String,
13
13
  'instanceType' => String,
14
14
  'monitoring' => Fog::Boolean,
15
+ 'ebsOptimized' => Fog::Boolean,
15
16
  'subnetId' => Fog::Nullable::String,
16
17
  'iamInstanceProfile' => Fog::Nullable::Hash,
17
18
  },
@@ -38,13 +39,13 @@ Shindo.tests('Fog::Compute[:aws] | spot instance requests', ['aws']) do
38
39
  pending if Fog.mocking?
39
40
 
40
41
  tests("#request_spot_instances('ami-3202f25b', 't1.micro', '0.001')").formats(@spot_instance_requests_format) do
41
- data = Fog::Compute[:aws].request_spot_instances('ami-3202f25b', 't1.micro', '0.001').body
42
+ data = Fog::Compute[:aws].request_spot_instances('ami-3202f25b', 't1.micro', '0.001',{'LaunchSpecification.EbsOptimized' => false}).body
42
43
  @spot_instance_request_id = data['spotInstanceRequestSet'].first['spotInstanceRequestId']
43
44
  data
44
45
  end
45
46
 
46
47
  tests("#describe_spot_instance_requests").formats(@spot_instance_requests_format) do
47
- Fog::Compute[:aws].describe_spot_instance_requests.body
48
+ Fog::Compute[:aws].describe_spot_instance_requests('spot-instance-request-id' => [@spot_instance_request_id]).body
48
49
  end
49
50
 
50
51
  tests("#cancel_spot_instance_requests('#{@spot_instance_request_id}')").formats(@cancel_spot_instance_request_format) do
@@ -192,9 +192,9 @@ Shindo.tests('Fog::Compute[:aws] | volume requests', ['aws']) do
192
192
  Fog::Compute[:aws].create_volume(@server.availability_zone, 10, 'VolumeType' => 'io1', 'Iops' => 99)
193
193
  end
194
194
 
195
- # iops invalid value (greater than 2000)
196
- tests("#create_volume('#{@server.availability_zone}', 1024, 'VolumeType' => 'io1', 'Iops' => 2001)").raises(Fog::Compute::AWS::Error) do
197
- Fog::Compute[:aws].create_volume(@server.availability_zone, 1024, 'VolumeType' => 'io1', 'Iops' => 2001)
195
+ # iops invalid value (greater than 4000)
196
+ tests("#create_volume('#{@server.availability_zone}', 1024, 'VolumeType' => 'io1', 'Iops' => 4001)").raises(Fog::Compute::AWS::Error) do
197
+ Fog::Compute[:aws].create_volume(@server.availability_zone, 1024, 'VolumeType' => 'io1', 'Iops' => 4001)
198
198
  end
199
199
 
200
200
  @volume.destroy
@@ -0,0 +1,44 @@
1
+ class AWS
2
+ module DataPipeline
3
+ module Formats
4
+
5
+ BASIC = {
6
+ 'pipelineId' => String,
7
+ }
8
+
9
+ LIST_PIPELINES = {
10
+ "hasMoreResults" => Fog::Nullable::Boolean,
11
+ "marker" => Fog::Nullable::String,
12
+ "pipelineIdList" => [
13
+ {
14
+ "id" => String,
15
+ "name" => String,
16
+ }
17
+ ]
18
+ }
19
+
20
+ DESCRIBE_PIPELINES = {
21
+ "pipelineDescriptionList" => [
22
+ {
23
+ "description" => Fog::Nullable::String,
24
+ "name" => String,
25
+ "pipelineId" => String,
26
+ "fields" => [
27
+ {
28
+ "key" => String,
29
+ "refValue" => Fog::Nullable::String,
30
+ "stringValue" => Fog::Nullable::String,
31
+ }
32
+ ]
33
+ }
34
+ ]
35
+ }
36
+
37
+ PUT_PIPELINE_DEFINITION = {
38
+ "errored" => Fog::Boolean,
39
+ "validationErrors" => Fog::Nullable::Array,
40
+ }
41
+
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,54 @@
1
+ Shindo.tests('AWS::DataPipeline | pipeline_tests', ['aws', 'data_pipeline']) do
2
+ pending if Fog.mocking?
3
+
4
+ @pipeline_id = nil
5
+
6
+ tests('success') do
7
+ tests("#create_pipeline").formats(AWS::DataPipeline::Formats::BASIC) do
8
+ unique_id = 'fog-test-pipeline-unique-id'
9
+ name = 'fog-test-pipeline-name'
10
+ description = 'Fog test pipeline'
11
+
12
+ result = Fog::AWS[:data_pipeline].create_pipeline(unique_id, name, description)
13
+ @pipeline_id = result['pipelineId']
14
+ result
15
+ end
16
+
17
+ tests("#list_pipelines").formats(AWS::DataPipeline::Formats::LIST_PIPELINES) do
18
+ Fog::AWS[:data_pipeline].list_pipelines()
19
+ end
20
+
21
+ tests("#describe_pipelines").formats(AWS::DataPipeline::Formats::DESCRIBE_PIPELINES) do
22
+ ids = [@pipeline_id]
23
+ Fog::AWS[:data_pipeline].describe_pipelines(ids)
24
+ end
25
+
26
+ tests("#put_pipeline_definition").formats(AWS::DataPipeline::Formats::PUT_PIPELINE_DEFINITION) do
27
+ objects = [
28
+ {
29
+ "id" => "Nightly",
30
+ "type" => "Schedule",
31
+ "startDateTime" => Time.now.strftime("%Y-%m-%dT%H:%M:%S"),
32
+ "period" => "24 hours",
33
+ },
34
+ {
35
+ "id" => "Default",
36
+ "role" => "role-dumps",
37
+ "resourceRole" => "role-dumps-inst",
38
+ "schedule" => { "ref" => "Nightly" },
39
+ },
40
+ ]
41
+
42
+ Fog::AWS[:data_pipeline].put_pipeline_definition(@pipeline_id, objects)
43
+ end
44
+
45
+ tests("#activate_pipeline") do
46
+ Fog::AWS[:data_pipeline].activate_pipeline(@pipeline_id)
47
+ end
48
+
49
+ tests("#delete_pipeline") do
50
+ Fog::AWS[:data_pipeline].delete_pipeline(@pipeline_id)
51
+ end
52
+
53
+ end
54
+ end
@@ -0,0 +1,17 @@
1
+ Shindo.tests('AWS::Elasticache | describe reserved cache nodes',
2
+ ['aws', 'elasticache']) do
3
+
4
+ tests('success') do
5
+ pending if Fog.mocking?
6
+
7
+ tests(
8
+ '#describe_reserved_cache_nodes'
9
+ ).formats(AWS::Elasticache::Formats::RESERVED_CACHE_NODES) do
10
+ AWS[:elasticache].describe_reserved_cache_nodes().body['ReservedCacheNodes']
11
+ end
12
+ end
13
+
14
+ tests('failure') do
15
+ # TODO:
16
+ end
17
+ end
@@ -63,6 +63,23 @@ class AWS
63
63
  'SourceType' => String,
64
64
  }
65
65
  EVENT_LIST = [EVENT]
66
+
67
+ RESERVED_CACHE_CLUSTER = {
68
+ 'CacheNodeCount' => Integer,
69
+ 'CacheNodeType' => String,
70
+ 'Duration' => Integer,
71
+ 'FixedPrice' => Float,
72
+ 'OfferingType' => String,
73
+ 'ProductDescription' => String,
74
+ 'RecurringCharges' => Array,
75
+ 'ReservedCacheNodeId' => String,
76
+ 'ReservedCacheNodesOfferingId' => String,
77
+ 'StartTime' => DateTime,
78
+ 'State' => String,
79
+ 'UsagePrice' => Float
80
+ }
81
+ RESERVED_CACHE_CLUSTER_LIST = [RESERVED_CACHE_CLUSTER]
82
+
66
83
  end
67
84
  end
68
85
  end
@@ -8,6 +8,7 @@ class AWS
8
8
 
9
9
  LOAD_BALANCER = {
10
10
  "AvailabilityZones" => Array,
11
+ "BackendServerDescriptions" => Array,
11
12
  "CanonicalHostedZoneName" => String,
12
13
  "CanonicalHostedZoneNameID" => String,
13
14
  "CreatedTime" => Time,
@@ -25,7 +26,7 @@ class AWS
25
26
  }
26
27
  }],
27
28
  "LoadBalancerName" => String,
28
- "Policies" => {"LBCookieStickinessPolicies" => Array, "AppCookieStickinessPolicies" => Array},
29
+ "Policies" => {"LBCookieStickinessPolicies" => Array, "AppCookieStickinessPolicies" => Array, "OtherPolicies" => Array},
29
30
  "Scheme" => String,
30
31
  "SecurityGroups" => [Fog::Nullable::String],
31
32
  "SourceSecurityGroup" => {"GroupName" => String, "OwnerAlias" => String},
@@ -4,7 +4,7 @@ Shindo.tests('AWS::ELB | listener_tests', ['aws', 'elb']) do
4
4
 
5
5
  tests('success') do
6
6
  Fog::AWS[:elb].create_load_balancer(['us-east-1a'], @load_balancer_id, [{'LoadBalancerPort' => 80, 'InstancePort' => 80, 'Protocol' => 'HTTP'}])
7
- @certificate = Fog::AWS[:iam].upload_server_certificate(AWS::IAM::SERVER_CERT_PUBLIC_KEY, AWS::IAM::SERVER_CERT_PRIVATE_KEY, @key_name).body['Certificate']
7
+ @certificate = Fog::AWS[:iam].upload_server_certificate(AWS::IAM::SERVER_CERT, AWS::IAM::SERVER_CERT_PRIVATE_KEY, @key_name).body['Certificate']
8
8
 
9
9
  tests("#create_load_balancer_listeners").formats(AWS::ELB::Formats::BASIC) do
10
10
  listeners = [
@@ -3,7 +3,11 @@ Shindo.tests('AWS::ELB | load_balancer_tests', ['aws', 'elb']) do
3
3
  @key_name = 'fog-test'
4
4
 
5
5
  tests('success') do
6
- @certificate = Fog::AWS[:iam].upload_server_certificate(AWS::IAM::SERVER_CERT_PUBLIC_KEY, AWS::IAM::SERVER_CERT_PRIVATE_KEY, @key_name).body['Certificate']
6
+ if (Fog::AWS[:iam].get_server_certificate(@key_name) rescue nil)
7
+ Fog::AWS[:iam].delete_server_certificate(@key_name)
8
+ end
9
+
10
+ @certificate = Fog::AWS[:iam].upload_server_certificate(AWS::IAM::SERVER_CERT, AWS::IAM::SERVER_CERT_PRIVATE_KEY, @key_name).body['Certificate']
7
11
 
8
12
  tests("#create_load_balancer").formats(AWS::ELB::Formats::CREATE_LOAD_BALANCER) do
9
13
  zones = ['us-east-1a']
@@ -5,6 +5,10 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
5
5
  listeners = [{'LoadBalancerPort' => 80, 'InstancePort' => 80, 'Protocol' => 'HTTP'}]
6
6
  Fog::AWS[:elb].create_load_balancer(['us-east-1a'], @load_balancer_id, listeners)
7
7
 
8
+ tests("#describe_load_balancer_policy_types").formats(AWS::ELB::Formats::DESCRIBE_LOAD_BALANCER_POLICY_TYPES) do
9
+ @policy_types = Fog::AWS[:elb].describe_load_balancer_policy_types.body
10
+ end
11
+
8
12
  tests("#create_app_cookie_stickiness_policy").formats(AWS::ELB::Formats::BASIC) do
9
13
  cookie, policy = 'fog-app-cookie', 'fog-app-policy'
10
14
  Fog::AWS[:elb].create_app_cookie_stickiness_policy(@load_balancer_id, policy, cookie).body
@@ -21,17 +25,78 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
21
25
  Fog::AWS[:elb].create_lb_cookie_stickiness_policy(@load_balancer_id, policy).body
22
26
  end
23
27
 
24
- tests("#describe_load_balancer_policy_types").formats(AWS::ELB::Formats::DESCRIBE_LOAD_BALANCER_POLICY_TYPES) do
25
- @policy_types = Fog::AWS[:elb].describe_load_balancer_policy_types.body
26
- end
27
-
28
28
  tests("#create_load_balancer_policy").formats(AWS::ELB::Formats::BASIC) do
29
29
  policy = 'fog-policy'
30
30
  Fog::AWS[:elb].create_load_balancer_policy(@load_balancer_id, policy, 'PublicKeyPolicyType', {'PublicKey' => AWS::IAM::SERVER_CERT_PUBLIC_KEY}).body
31
31
  end
32
32
 
33
- tests("#describe_load_balancer_policies").formats(AWS::ELB::Formats::DESCRIBE_LOAD_BALANCER_POLICIES) do
34
- Fog::AWS[:elb].describe_load_balancer_policies(@load_balancer_id).body
33
+ tests("#describe_load_balancer_policies") do
34
+ body = Fog::AWS[:elb].describe_load_balancer_policies(@load_balancer_id).body
35
+ formats(AWS::ELB::Formats::DESCRIBE_LOAD_BALANCER_POLICIES) { body }
36
+
37
+ # Check the result of each policy by name
38
+ returns({
39
+ "PolicyAttributeDescriptions"=>[{
40
+ "AttributeName"=>"CookieName",
41
+ "AttributeValue"=>"fog-app-cookie"
42
+ }],
43
+ "PolicyName"=>"fog-app-policy",
44
+ "PolicyTypeName"=>"AppCookieStickinessPolicyType"
45
+ }) do
46
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-app-policy' }
47
+ end
48
+
49
+ returns({
50
+ "PolicyAttributeDescriptions"=>[{
51
+ "AttributeName"=>"CookieExpirationPeriod",
52
+ "AttributeValue"=>"300"
53
+ }],
54
+ "PolicyName"=>"fog-lb-expiry",
55
+ "PolicyTypeName"=>"LBCookieStickinessPolicyType"
56
+ }) do
57
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-lb-expiry' }
58
+ end
59
+
60
+ returns({
61
+ "PolicyAttributeDescriptions"=>[{
62
+ "AttributeName"=>"CookieExpirationPeriod",
63
+ "AttributeValue"=>"0"
64
+ }],
65
+ "PolicyName"=>"fog-lb-no-expiry",
66
+ "PolicyTypeName"=>"LBCookieStickinessPolicyType"
67
+ }) do
68
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-lb-no-expiry' }
69
+ end
70
+
71
+ returns({
72
+ "PolicyAttributeDescriptions"=>[{
73
+ "AttributeName"=>"PublicKey",
74
+ "AttributeValue"=> AWS::IAM::SERVER_CERT_PUBLIC_KEY
75
+ }],
76
+ "PolicyName"=>"fog-policy",
77
+ "PolicyTypeName"=>"PublicKeyPolicyType"
78
+ }) do
79
+ body["DescribeLoadBalancerPoliciesResult"]["PolicyDescriptions"].detect{|e| e['PolicyName'] == 'fog-policy' }
80
+ end
81
+ end
82
+
83
+ tests("#describe_load_balancer includes all policies") do
84
+ lb = Fog::AWS[:elb].describe_load_balancers("LoadBalancerNames" => [@load_balancer_id]).body["DescribeLoadBalancersResult"]["LoadBalancerDescriptions"].first
85
+ returns([
86
+ {"PolicyName"=>"fog-app-policy", "CookieName"=>"fog-app-cookie"}
87
+ ]) { lb["Policies"]["AppCookieStickinessPolicies"] }
88
+
89
+ returns([
90
+ {"PolicyName"=>"fog-lb-expiry", "CookieExpirationPeriod"=> 300}
91
+ ]) { lb["Policies"]["LBCookieStickinessPolicies"].select{|e| e["PolicyName"] == "fog-lb-expiry"} }
92
+
93
+ returns([
94
+ {"PolicyName" => "fog-lb-no-expiry"}
95
+ ]) { lb["Policies"]["LBCookieStickinessPolicies"].select{|e| e["PolicyName"] == "fog-lb-no-expiry"} }
96
+
97
+ returns([
98
+ "fog-policy"
99
+ ]) { lb["Policies"]["OtherPolicies"] }
35
100
  end
36
101
 
37
102
  tests("#delete_load_balancer_policy").formats(AWS::ELB::Formats::BASIC) do
@@ -49,6 +114,20 @@ Shindo.tests('AWS::ELB | policy_tests', ['aws', 'elb']) do
49
114
  Fog::AWS[:elb].set_load_balancer_policies_of_listener(@load_balancer_id, port, []).body
50
115
  end
51
116
 
117
+ proxy_policy = "EnableProxyProtocol"
118
+ Fog::AWS[:elb].create_load_balancer_policy(@load_balancer_id, proxy_policy, 'ProxyProtocolPolicyType', { "ProxyProtocol" => true })
119
+
120
+ tests("#set_load_balancer_policies_for_backend_server replaces policies on port").formats(AWS::ELB::Formats::BASIC) do
121
+ Fog::AWS[:elb].set_load_balancer_policies_for_backend_server(@load_balancer_id, 80, [proxy_policy]).body
122
+ end
123
+
124
+ tests("#describe_load_balancers has other policies") do
125
+ Fog::AWS[:elb].set_load_balancer_policies_for_backend_server(@load_balancer_id, 80, [proxy_policy]).body
126
+ description = Fog::AWS[:elb].describe_load_balancers("LoadBalancerNames" => [@load_balancer_id]).body["DescribeLoadBalancersResult"]["LoadBalancerDescriptions"].first
127
+ returns(true) { description["Policies"]["OtherPolicies"].include?(proxy_policy) }
128
+ end
129
+
52
130
  Fog::AWS[:elb].delete_load_balancer(@load_balancer_id)
53
131
  end
54
132
  end
133
+
@@ -32,4 +32,4 @@ Shindo.tests('AWS::Glacier | glacier vault requests', ['aws']) do
32
32
 
33
33
  Fog::AWS[:sns].delete_topic topic_arn
34
34
 
35
- end
35
+ end
@@ -4,7 +4,7 @@ class AWS
4
4
  # A self-signed test keypair. Generated using the command:
5
5
  # openssl req -new -newkey rsa:1024 -days 3650 -nodes -x509 -keyout server-private.key -out server-public.crt
6
6
  # NB: Amazon returns an error on extraneous linebreaks
7
- SERVER_CERT_PUBLIC_KEY = %{-----BEGIN CERTIFICATE-----
7
+ SERVER_CERT = %{-----BEGIN CERTIFICATE-----
8
8
  MIIDQzCCAqygAwIBAgIJAJaZ8wH+19AtMA0GCSqGSIb3DQEBBQUAMHUxCzAJBgNV
9
9
  BAYTAlVTMREwDwYDVQQIEwhOZXcgWW9yazERMA8GA1UEBxMITmV3IFlvcmsxHzAd
10
10
  BgNVBAoTFkZvZyBUZXN0IFNuYWtlb2lsIENlcnQxHzAdBgNVBAsTFkZvZyBUZXN0
@@ -25,6 +25,9 @@ DF3qnnPyArLFx0HLB7wQdm9xYVIqQuLO+V6GRuOd+uSX//aDLDZhwbERf35hoyto
25
25
  Jfk4gX/qwuRFNy0vjQeTzdvhB1igG/w=
26
26
  -----END CERTIFICATE-----
27
27
  }
28
+ # The public key for SERVER_CERT. Generated using the command:
29
+ # openssl x509 -inform pem -in server-public.crt -pubkey -noout > server.pubkey
30
+ SERVER_CERT_PUBLIC_KEY = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC0CR76sovjdmpWRmEaf8XaG+nGe7czhpdLKkau2b16VtSjkPctxPL5U4vaMxQUboLPr+9oL+9fSYN31VzDD4hyaeGoeI5fhnGeqk71kq5uHONBOQUMbZbBQ8PVd9Sdk+y9JJ6E5fC+GhLL5I+y2DK7syBzyymq1Wi6rPp1XXF7AQIDAQAB"
28
31
 
29
32
  SERVER_CERT_PRIVATE_KEY = %{-----BEGIN RSA PRIVATE KEY-----
30
33
  MIICXAIBAAKBgQC0CR76sovjdmpWRmEaf8XaG+nGe7czhpdLKkau2b16VtSjkPct
@@ -13,6 +13,9 @@ Shindo.tests('AWS::IAM | server certificate requests', ['aws']) do
13
13
  'Certificate' => @certificate_format,
14
14
  'RequestId' => String
15
15
  }
16
+ @update_format = {
17
+ 'RequestId' => String
18
+ }
16
19
  @get_server_certificate_format = {
17
20
  'Certificate' => @certificate_format,
18
21
  'RequestId' => String
@@ -22,7 +25,7 @@ Shindo.tests('AWS::IAM | server certificate requests', ['aws']) do
22
25
  }
23
26
 
24
27
  tests('#upload_server_certificate') do
25
- public_key = AWS::IAM::SERVER_CERT_PUBLIC_KEY
28
+ public_key = AWS::IAM::SERVER_CERT
26
29
  private_key = AWS::IAM::SERVER_CERT_PRIVATE_KEY
27
30
  private_key_pkcs8 = AWS::IAM::SERVER_CERT_PRIVATE_KEY_PKCS8
28
31
  private_key_mismatch = AWS::IAM::SERVER_CERT_PRIVATE_KEY_MISMATCHED
@@ -64,6 +67,35 @@ Shindo.tests('AWS::IAM | server certificate requests', ['aws']) do
64
67
  end
65
68
  end
66
69
 
70
+ tests('#update_server_certificate') do
71
+ public_key = AWS::IAM::SERVER_CERT
72
+ private_key = AWS::IAM::SERVER_CERT_PRIVATE_KEY
73
+ key_name = "update-key"
74
+
75
+ Fog::AWS::IAM.new.upload_server_certificate(public_key, private_key, key_name)
76
+
77
+ tests('duplicate name').raises(Fog::AWS::IAM::EntityAlreadyExists) do
78
+ other_key_name = "other-key-name"
79
+ Fog::AWS::IAM.new.upload_server_certificate(public_key, private_key, other_key_name)
80
+
81
+ Fog::AWS::IAM.new.update_server_certificate(key_name, {'NewServerCertificateName' => other_key_name})
82
+ end
83
+
84
+ tests('unknown name').raises(Fog::AWS::IAM::NotFound) do
85
+ Fog::AWS::IAM.new.update_server_certificate("unknown-key-name", {'NewServerCertificateName' => "other-keyname"})
86
+ end
87
+
88
+ tests('format').formats(@update_format) do
89
+ Fog::AWS::IAM.new.update_server_certificate(key_name).body
90
+ end
91
+
92
+ tests('updates name') do
93
+ other_key_name = "successful-update-key-name"
94
+ Fog::AWS::IAM.new.update_server_certificate(key_name, {'NewServerCertificateName' => other_key_name})
95
+ returns(true) { Fog::AWS::IAM.new.get_server_certificate(other_key_name).body['Certificate']['ServerCertificateName'] == other_key_name }
96
+ end
97
+ end
98
+
67
99
  tests('#get_server_certificate').formats(@get_server_certificate_format) do
68
100
  tests('raises NotFound').raises(Fog::AWS::IAM::NotFound) do
69
101
  Fog::AWS::IAM.new.get_server_certificate("#{@key_name}fake")
@@ -6,10 +6,11 @@ Shindo.tests('AWS::IAM | user requests', ['aws']) do
6
6
 
7
7
  @user_format = {
8
8
  'User' => {
9
- 'Arn' => String,
10
- 'Path' => String,
11
- 'UserId' => String,
12
- 'UserName' => String
9
+ 'Arn' => String,
10
+ 'Path' => String,
11
+ 'UserId' => String,
12
+ 'UserName' => String,
13
+ 'CreateDate' => Time
13
14
  },
14
15
  'RequestId' => String
15
16
  }
@@ -20,10 +21,11 @@ Shindo.tests('AWS::IAM | user requests', ['aws']) do
20
21
 
21
22
  @users_format = {
22
23
  'Users' => [{
23
- 'Arn' => String,
24
- 'Path' => String,
25
- 'UserId' => String,
26
- 'UserName' => String
24
+ 'Arn' => String,
25
+ 'Path' => String,
26
+ 'UserId' => String,
27
+ 'UserName' => String,
28
+ 'CreateDate' => Time
27
29
  }],
28
30
  'IsTruncated' => Fog::Boolean,
29
31
  'RequestId' => String