fog-aws 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1275) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.travis.yml +48 -0
  4. data/Gemfile +7 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +36 -0
  7. data/Rakefile +8 -0
  8. data/fog-aws.gemspec +30 -0
  9. data/gemfiles/Gemfile-edge +9 -0
  10. data/gemfiles/Gemfile-ruby-1.8.7 +6 -0
  11. data/lib/fog/aws.rb +31 -0
  12. data/lib/fog/aws/auto_scaling.rb +279 -0
  13. data/lib/fog/aws/beanstalk.rb +156 -0
  14. data/lib/fog/aws/cdn.rb +205 -0
  15. data/lib/fog/aws/cloud_formation.rb +133 -0
  16. data/lib/fog/aws/cloud_watch.rb +167 -0
  17. data/lib/fog/aws/compute.rb +543 -0
  18. data/lib/fog/aws/core.rb +343 -0
  19. data/lib/fog/aws/credential_fetcher.rb +63 -0
  20. data/lib/fog/aws/data_pipeline.rb +126 -0
  21. data/lib/fog/aws/dns.rb +154 -0
  22. data/lib/fog/aws/dynamodb.rb +152 -0
  23. data/lib/fog/aws/elasticache.rb +216 -0
  24. data/lib/fog/aws/elb.rb +240 -0
  25. data/lib/fog/aws/elb/policy_types.rb +477 -0
  26. data/lib/fog/aws/emr.rb +139 -0
  27. data/lib/fog/aws/glacier.rb +179 -0
  28. data/lib/fog/aws/iam.rb +260 -0
  29. data/lib/fog/aws/models/auto_scaling/activities.rb +37 -0
  30. data/lib/fog/aws/models/auto_scaling/activity.rb +27 -0
  31. data/lib/fog/aws/models/auto_scaling/configuration.rb +69 -0
  32. data/lib/fog/aws/models/auto_scaling/configurations.rb +33 -0
  33. data/lib/fog/aws/models/auto_scaling/group.rb +150 -0
  34. data/lib/fog/aws/models/auto_scaling/groups.rb +37 -0
  35. data/lib/fog/aws/models/auto_scaling/instance.rb +58 -0
  36. data/lib/fog/aws/models/auto_scaling/instances.rb +28 -0
  37. data/lib/fog/aws/models/auto_scaling/policies.rb +37 -0
  38. data/lib/fog/aws/models/auto_scaling/policy.rb +46 -0
  39. data/lib/fog/aws/models/beanstalk/application.rb +59 -0
  40. data/lib/fog/aws/models/beanstalk/applications.rb +23 -0
  41. data/lib/fog/aws/models/beanstalk/environment.rb +145 -0
  42. data/lib/fog/aws/models/beanstalk/environments.rb +27 -0
  43. data/lib/fog/aws/models/beanstalk/event.rb +18 -0
  44. data/lib/fog/aws/models/beanstalk/events.rb +17 -0
  45. data/lib/fog/aws/models/beanstalk/template.rb +76 -0
  46. data/lib/fog/aws/models/beanstalk/templates.rb +68 -0
  47. data/lib/fog/aws/models/beanstalk/version.rb +77 -0
  48. data/lib/fog/aws/models/beanstalk/versions.rb +29 -0
  49. data/lib/fog/aws/models/cdn/distribution.rb +90 -0
  50. data/lib/fog/aws/models/cdn/distribution_helper.rb +60 -0
  51. data/lib/fog/aws/models/cdn/distributions.rb +30 -0
  52. data/lib/fog/aws/models/cdn/distributions_helper.rb +45 -0
  53. data/lib/fog/aws/models/cdn/invalidation.rb +60 -0
  54. data/lib/fog/aws/models/cdn/invalidations.rb +50 -0
  55. data/lib/fog/aws/models/cdn/streaming_distribution.rb +74 -0
  56. data/lib/fog/aws/models/cdn/streaming_distributions.rb +30 -0
  57. data/lib/fog/aws/models/cloud_watch/alarm.rb +60 -0
  58. data/lib/fog/aws/models/cloud_watch/alarm_data.rb +38 -0
  59. data/lib/fog/aws/models/cloud_watch/alarm_datum.rb +65 -0
  60. data/lib/fog/aws/models/cloud_watch/alarm_histories.rb +17 -0
  61. data/lib/fog/aws/models/cloud_watch/alarm_history.rb +15 -0
  62. data/lib/fog/aws/models/cloud_watch/alarms.rb +45 -0
  63. data/lib/fog/aws/models/cloud_watch/metric.rb +13 -0
  64. data/lib/fog/aws/models/cloud_watch/metric_statistic.rb +44 -0
  65. data/lib/fog/aws/models/cloud_watch/metric_statistics.rb +22 -0
  66. data/lib/fog/aws/models/cloud_watch/metrics.rb +50 -0
  67. data/lib/fog/aws/models/compute/address.rb +74 -0
  68. data/lib/fog/aws/models/compute/addresses.rb +96 -0
  69. data/lib/fog/aws/models/compute/dhcp_option.rb +66 -0
  70. data/lib/fog/aws/models/compute/dhcp_options.rb +87 -0
  71. data/lib/fog/aws/models/compute/flavor.rb +19 -0
  72. data/lib/fog/aws/models/compute/flavors.rb +606 -0
  73. data/lib/fog/aws/models/compute/image.rb +45 -0
  74. data/lib/fog/aws/models/compute/images.rb +59 -0
  75. data/lib/fog/aws/models/compute/internet_gateway.rb +78 -0
  76. data/lib/fog/aws/models/compute/internet_gateways.rb +87 -0
  77. data/lib/fog/aws/models/compute/key_pair.rb +53 -0
  78. data/lib/fog/aws/models/compute/key_pairs.rb +84 -0
  79. data/lib/fog/aws/models/compute/network_acl.rb +180 -0
  80. data/lib/fog/aws/models/compute/network_acls.rb +136 -0
  81. data/lib/fog/aws/models/compute/network_interface.rb +73 -0
  82. data/lib/fog/aws/models/compute/network_interfaces.rb +133 -0
  83. data/lib/fog/aws/models/compute/route_table.rb +66 -0
  84. data/lib/fog/aws/models/compute/route_tables.rb +88 -0
  85. data/lib/fog/aws/models/compute/security_group.rb +322 -0
  86. data/lib/fog/aws/models/compute/security_groups.rb +117 -0
  87. data/lib/fog/aws/models/compute/server.rb +271 -0
  88. data/lib/fog/aws/models/compute/servers.rb +211 -0
  89. data/lib/fog/aws/models/compute/snapshot.rb +53 -0
  90. data/lib/fog/aws/models/compute/snapshots.rb +48 -0
  91. data/lib/fog/aws/models/compute/spot_request.rb +119 -0
  92. data/lib/fog/aws/models/compute/spot_requests.rb +86 -0
  93. data/lib/fog/aws/models/compute/subnet.rb +61 -0
  94. data/lib/fog/aws/models/compute/subnets.rb +95 -0
  95. data/lib/fog/aws/models/compute/tag.rb +31 -0
  96. data/lib/fog/aws/models/compute/tags.rb +31 -0
  97. data/lib/fog/aws/models/compute/volume.rb +126 -0
  98. data/lib/fog/aws/models/compute/volumes.rb +117 -0
  99. data/lib/fog/aws/models/compute/vpc.rb +75 -0
  100. data/lib/fog/aws/models/compute/vpcs.rb +89 -0
  101. data/lib/fog/aws/models/data_pipeline/pipeline.rb +63 -0
  102. data/lib/fog/aws/models/data_pipeline/pipelines.rb +33 -0
  103. data/lib/fog/aws/models/dns/record.rb +116 -0
  104. data/lib/fog/aws/models/dns/records.rb +120 -0
  105. data/lib/fog/aws/models/dns/zone.rb +49 -0
  106. data/lib/fog/aws/models/dns/zones.rb +29 -0
  107. data/lib/fog/aws/models/elasticache/cluster.rb +69 -0
  108. data/lib/fog/aws/models/elasticache/clusters.rb +29 -0
  109. data/lib/fog/aws/models/elasticache/parameter_group.rb +28 -0
  110. data/lib/fog/aws/models/elasticache/parameter_groups.rb +28 -0
  111. data/lib/fog/aws/models/elasticache/security_group.rb +48 -0
  112. data/lib/fog/aws/models/elasticache/security_groups.rb +28 -0
  113. data/lib/fog/aws/models/elasticache/subnet_group.rb +32 -0
  114. data/lib/fog/aws/models/elasticache/subnet_groups.rb +24 -0
  115. data/lib/fog/aws/models/elb/backend_server_description.rb +11 -0
  116. data/lib/fog/aws/models/elb/backend_server_descriptions.rb +20 -0
  117. data/lib/fog/aws/models/elb/listener.rb +56 -0
  118. data/lib/fog/aws/models/elb/listeners.rb +30 -0
  119. data/lib/fog/aws/models/elb/load_balancer.rb +241 -0
  120. data/lib/fog/aws/models/elb/load_balancers.rb +37 -0
  121. data/lib/fog/aws/models/elb/policies.rb +52 -0
  122. data/lib/fog/aws/models/elb/policy.rb +59 -0
  123. data/lib/fog/aws/models/glacier/archive.rb +68 -0
  124. data/lib/fog/aws/models/glacier/archives.rb +26 -0
  125. data/lib/fog/aws/models/glacier/job.rb +61 -0
  126. data/lib/fog/aws/models/glacier/jobs.rb +40 -0
  127. data/lib/fog/aws/models/glacier/vault.rb +50 -0
  128. data/lib/fog/aws/models/glacier/vaults.rb +24 -0
  129. data/lib/fog/aws/models/iam/access_key.rb +39 -0
  130. data/lib/fog/aws/models/iam/access_keys.rb +32 -0
  131. data/lib/fog/aws/models/iam/policies.rb +40 -0
  132. data/lib/fog/aws/models/iam/policy.rb +36 -0
  133. data/lib/fog/aws/models/iam/role.rb +34 -0
  134. data/lib/fog/aws/models/iam/roles.rb +37 -0
  135. data/lib/fog/aws/models/iam/user.rb +38 -0
  136. data/lib/fog/aws/models/iam/users.rb +47 -0
  137. data/lib/fog/aws/models/rds/event_subscription.rb +41 -0
  138. data/lib/fog/aws/models/rds/event_subscriptions.rb +24 -0
  139. data/lib/fog/aws/models/rds/instance_option.rb +18 -0
  140. data/lib/fog/aws/models/rds/instance_options.rb +28 -0
  141. data/lib/fog/aws/models/rds/log_file.rb +22 -0
  142. data/lib/fog/aws/models/rds/log_files.rb +48 -0
  143. data/lib/fog/aws/models/rds/parameter.rb +18 -0
  144. data/lib/fog/aws/models/rds/parameter_group.rb +34 -0
  145. data/lib/fog/aws/models/rds/parameter_groups.rb +24 -0
  146. data/lib/fog/aws/models/rds/parameters.rb +36 -0
  147. data/lib/fog/aws/models/rds/security_group.rb +79 -0
  148. data/lib/fog/aws/models/rds/security_groups.rb +41 -0
  149. data/lib/fog/aws/models/rds/server.rb +142 -0
  150. data/lib/fog/aws/models/rds/servers.rb +24 -0
  151. data/lib/fog/aws/models/rds/snapshot.rb +49 -0
  152. data/lib/fog/aws/models/rds/snapshots.rb +69 -0
  153. data/lib/fog/aws/models/rds/subnet_group.rb +31 -0
  154. data/lib/fog/aws/models/rds/subnet_groups.rb +24 -0
  155. data/lib/fog/aws/models/sns/subscription.rb +0 -0
  156. data/lib/fog/aws/models/sns/subscriptions.rb +17 -0
  157. data/lib/fog/aws/models/sns/topic.rb +48 -0
  158. data/lib/fog/aws/models/sns/topics.rb +24 -0
  159. data/lib/fog/aws/models/storage/directories.rb +39 -0
  160. data/lib/fog/aws/models/storage/directory.rb +126 -0
  161. data/lib/fog/aws/models/storage/file.rb +280 -0
  162. data/lib/fog/aws/models/storage/files.rb +119 -0
  163. data/lib/fog/aws/models/storage/version.rb +33 -0
  164. data/lib/fog/aws/models/storage/versions.rb +34 -0
  165. data/lib/fog/aws/parsers/auto_scaling/basic.rb +24 -0
  166. data/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb +49 -0
  167. data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb +156 -0
  168. data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb +40 -0
  169. data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types.rb +40 -0
  170. data/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb +97 -0
  171. data/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb +64 -0
  172. data/lib/fog/aws/parsers/auto_scaling/describe_notification_configurations.rb +39 -0
  173. data/lib/fog/aws/parsers/auto_scaling/describe_policies.rb +65 -0
  174. data/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb +44 -0
  175. data/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb +49 -0
  176. data/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb +43 -0
  177. data/lib/fog/aws/parsers/auto_scaling/describe_tags.rb +42 -0
  178. data/lib/fog/aws/parsers/auto_scaling/describe_termination_policy_types.rb +40 -0
  179. data/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb +24 -0
  180. data/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb +27 -0
  181. data/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb +32 -0
  182. data/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb +16 -0
  183. data/lib/fog/aws/parsers/beanstalk/create_application.rb +21 -0
  184. data/lib/fog/aws/parsers/beanstalk/create_application_version.rb +23 -0
  185. data/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb +26 -0
  186. data/lib/fog/aws/parsers/beanstalk/create_environment.rb +34 -0
  187. data/lib/fog/aws/parsers/beanstalk/create_storage_location.rb +15 -0
  188. data/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb +23 -0
  189. data/lib/fog/aws/parsers/beanstalk/describe_applications.rb +21 -0
  190. data/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb +29 -0
  191. data/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb +27 -0
  192. data/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb +34 -0
  193. data/lib/fog/aws/parsers/beanstalk/describe_environments.rb +35 -0
  194. data/lib/fog/aws/parsers/beanstalk/describe_events.rb +24 -0
  195. data/lib/fog/aws/parsers/beanstalk/empty.rb +20 -0
  196. data/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb +18 -0
  197. data/lib/fog/aws/parsers/beanstalk/parser.rb +84 -0
  198. data/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb +19 -0
  199. data/lib/fog/aws/parsers/beanstalk/terminate_environment.rb +34 -0
  200. data/lib/fog/aws/parsers/beanstalk/update_application.rb +21 -0
  201. data/lib/fog/aws/parsers/beanstalk/update_application_version.rb +23 -0
  202. data/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb +26 -0
  203. data/lib/fog/aws/parsers/beanstalk/update_environment.rb +34 -0
  204. data/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb +19 -0
  205. data/lib/fog/aws/parsers/cdn/distribution.rb +55 -0
  206. data/lib/fog/aws/parsers/cdn/get_distribution_list.rb +57 -0
  207. data/lib/fog/aws/parsers/cdn/get_invalidation.rb +28 -0
  208. data/lib/fog/aws/parsers/cdn/get_invalidation_list.rb +38 -0
  209. data/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb +55 -0
  210. data/lib/fog/aws/parsers/cdn/post_invalidation.rb +24 -0
  211. data/lib/fog/aws/parsers/cdn/streaming_distribution.rb +56 -0
  212. data/lib/fog/aws/parsers/cloud_formation/basic.rb +10 -0
  213. data/lib/fog/aws/parsers/cloud_formation/create_stack.rb +16 -0
  214. data/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb +28 -0
  215. data/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb +28 -0
  216. data/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb +78 -0
  217. data/lib/fog/aws/parsers/cloud_formation/get_template.rb +16 -0
  218. data/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb +30 -0
  219. data/lib/fog/aws/parsers/cloud_formation/list_stacks.rb +32 -0
  220. data/lib/fog/aws/parsers/cloud_formation/update_stack.rb +16 -0
  221. data/lib/fog/aws/parsers/cloud_formation/validate_template.rb +49 -0
  222. data/lib/fog/aws/parsers/cloud_watch/delete_alarms.rb +24 -0
  223. data/lib/fog/aws/parsers/cloud_watch/describe_alarm_history.rb +38 -0
  224. data/lib/fog/aws/parsers/cloud_watch/describe_alarms.rb +71 -0
  225. data/lib/fog/aws/parsers/cloud_watch/describe_alarms_for_metric.rb +69 -0
  226. data/lib/fog/aws/parsers/cloud_watch/disable_alarm_actions.rb +24 -0
  227. data/lib/fog/aws/parsers/cloud_watch/enable_alarm_actions.rb +24 -0
  228. data/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb +40 -0
  229. data/lib/fog/aws/parsers/cloud_watch/list_metrics.rb +56 -0
  230. data/lib/fog/aws/parsers/cloud_watch/put_metric_alarm.rb +24 -0
  231. data/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb +24 -0
  232. data/lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb +24 -0
  233. data/lib/fog/aws/parsers/compute/allocate_address.rb +16 -0
  234. data/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb +22 -0
  235. data/lib/fog/aws/parsers/compute/associate_address.rb +22 -0
  236. data/lib/fog/aws/parsers/compute/associate_route_table.rb +16 -0
  237. data/lib/fog/aws/parsers/compute/attach_network_interface.rb +16 -0
  238. data/lib/fog/aws/parsers/compute/attach_volume.rb +18 -0
  239. data/lib/fog/aws/parsers/compute/basic.rb +22 -0
  240. data/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb +26 -0
  241. data/lib/fog/aws/parsers/compute/copy_image.rb +18 -0
  242. data/lib/fog/aws/parsers/compute/copy_snapshot.rb +18 -0
  243. data/lib/fog/aws/parsers/compute/create_dhcp_options.rb +73 -0
  244. data/lib/fog/aws/parsers/compute/create_image.rb +16 -0
  245. data/lib/fog/aws/parsers/compute/create_internet_gateway.rb +61 -0
  246. data/lib/fog/aws/parsers/compute/create_key_pair.rb +16 -0
  247. data/lib/fog/aws/parsers/compute/create_network_acl.rb +28 -0
  248. data/lib/fog/aws/parsers/compute/create_network_interface.rb +28 -0
  249. data/lib/fog/aws/parsers/compute/create_route_table.rb +71 -0
  250. data/lib/fog/aws/parsers/compute/create_security_group.rb +22 -0
  251. data/lib/fog/aws/parsers/compute/create_snapshot.rb +22 -0
  252. data/lib/fog/aws/parsers/compute/create_subnet.rb +46 -0
  253. data/lib/fog/aws/parsers/compute/create_volume.rb +22 -0
  254. data/lib/fog/aws/parsers/compute/create_vpc.rb +47 -0
  255. data/lib/fog/aws/parsers/compute/deregister_image.rb +16 -0
  256. data/lib/fog/aws/parsers/compute/describe_account_attributes.rb +41 -0
  257. data/lib/fog/aws/parsers/compute/describe_addresses.rb +26 -0
  258. data/lib/fog/aws/parsers/compute/describe_availability_zones.rb +40 -0
  259. data/lib/fog/aws/parsers/compute/describe_dhcp_options.rb +72 -0
  260. data/lib/fog/aws/parsers/compute/describe_images.rb +89 -0
  261. data/lib/fog/aws/parsers/compute/describe_instance_status.rb +73 -0
  262. data/lib/fog/aws/parsers/compute/describe_instances.rb +122 -0
  263. data/lib/fog/aws/parsers/compute/describe_internet_gateways.rb +60 -0
  264. data/lib/fog/aws/parsers/compute/describe_key_pairs.rb +26 -0
  265. data/lib/fog/aws/parsers/compute/describe_network_acls.rb +42 -0
  266. data/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb +77 -0
  267. data/lib/fog/aws/parsers/compute/describe_network_interfaces.rb +42 -0
  268. data/lib/fog/aws/parsers/compute/describe_placement_groups.rb +26 -0
  269. data/lib/fog/aws/parsers/compute/describe_regions.rb +26 -0
  270. data/lib/fog/aws/parsers/compute/describe_reserved_instances.rb +58 -0
  271. data/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb +30 -0
  272. data/lib/fog/aws/parsers/compute/describe_route_tables.rb +81 -0
  273. data/lib/fog/aws/parsers/compute/describe_security_groups.rb +111 -0
  274. data/lib/fog/aws/parsers/compute/describe_snapshots.rb +52 -0
  275. data/lib/fog/aws/parsers/compute/describe_spot_price_history.rb +30 -0
  276. data/lib/fog/aws/parsers/compute/describe_subnets.rb +49 -0
  277. data/lib/fog/aws/parsers/compute/describe_tags.rb +26 -0
  278. data/lib/fog/aws/parsers/compute/describe_volume_status.rb +87 -0
  279. data/lib/fog/aws/parsers/compute/describe_volumes.rb +71 -0
  280. data/lib/fog/aws/parsers/compute/describe_vpc_attribute.rb +48 -0
  281. data/lib/fog/aws/parsers/compute/describe_vpcs.rb +47 -0
  282. data/lib/fog/aws/parsers/compute/detach_volume.rb +18 -0
  283. data/lib/fog/aws/parsers/compute/get_console_output.rb +24 -0
  284. data/lib/fog/aws/parsers/compute/get_password_data.rb +22 -0
  285. data/lib/fog/aws/parsers/compute/import_key_pair.rb +16 -0
  286. data/lib/fog/aws/parsers/compute/modify_subnet_attribute.rb +24 -0
  287. data/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb +31 -0
  288. data/lib/fog/aws/parsers/compute/network_acl_parser.rb +103 -0
  289. data/lib/fog/aws/parsers/compute/network_interface_parser.rb +108 -0
  290. data/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb +20 -0
  291. data/lib/fog/aws/parsers/compute/register_image.rb +16 -0
  292. data/lib/fog/aws/parsers/compute/replace_network_acl_association.rb +20 -0
  293. data/lib/fog/aws/parsers/compute/run_instances.rb +90 -0
  294. data/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb +25 -0
  295. data/lib/fog/aws/parsers/compute/spot_instance_requests.rb +69 -0
  296. data/lib/fog/aws/parsers/compute/start_stop_instances.rb +37 -0
  297. data/lib/fog/aws/parsers/compute/terminate_instances.rb +51 -0
  298. data/lib/fog/aws/parsers/dns/change_resource_record_sets.rb +22 -0
  299. data/lib/fog/aws/parsers/dns/create_health_check.rb +0 -0
  300. data/lib/fog/aws/parsers/dns/create_hosted_zone.rb +51 -0
  301. data/lib/fog/aws/parsers/dns/delete_hosted_zone.rb +21 -0
  302. data/lib/fog/aws/parsers/dns/get_change.rb +22 -0
  303. data/lib/fog/aws/parsers/dns/get_hosted_zone.rb +41 -0
  304. data/lib/fog/aws/parsers/dns/health_check.rb +33 -0
  305. data/lib/fog/aws/parsers/dns/list_health_checks.rb +41 -0
  306. data/lib/fog/aws/parsers/dns/list_hosted_zones.rb +33 -0
  307. data/lib/fog/aws/parsers/dns/list_resource_record_sets.rb +58 -0
  308. data/lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb +21 -0
  309. data/lib/fog/aws/parsers/elasticache/base.rb +28 -0
  310. data/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb +77 -0
  311. data/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb +32 -0
  312. data/lib/fog/aws/parsers/elasticache/describe_cache_clusters.rb +26 -0
  313. data/lib/fog/aws/parsers/elasticache/describe_cache_parameters.rb +21 -0
  314. data/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb +34 -0
  315. data/lib/fog/aws/parsers/elasticache/describe_engine_default_parameters.rb +21 -0
  316. data/lib/fog/aws/parsers/elasticache/describe_parameter_groups.rb +26 -0
  317. data/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb +32 -0
  318. data/lib/fog/aws/parsers/elasticache/describe_security_groups.rb +26 -0
  319. data/lib/fog/aws/parsers/elasticache/engine_defaults_parser.rb +58 -0
  320. data/lib/fog/aws/parsers/elasticache/event_list.rb +38 -0
  321. data/lib/fog/aws/parsers/elasticache/modify_parameter_group.rb +26 -0
  322. data/lib/fog/aws/parsers/elasticache/parameter_group_parser.rb +29 -0
  323. data/lib/fog/aws/parsers/elasticache/reset_parameter_group.rb +26 -0
  324. data/lib/fog/aws/parsers/elasticache/security_group_parser.rb +38 -0
  325. data/lib/fog/aws/parsers/elasticache/single_cache_cluster.rb +21 -0
  326. data/lib/fog/aws/parsers/elasticache/single_parameter_group.rb +21 -0
  327. data/lib/fog/aws/parsers/elasticache/single_security_group.rb +33 -0
  328. data/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb +35 -0
  329. data/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb +22 -0
  330. data/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb +22 -0
  331. data/lib/fog/aws/parsers/elb/configure_health_check.rb +33 -0
  332. data/lib/fog/aws/parsers/elb/create_load_balancer.rb +22 -0
  333. data/lib/fog/aws/parsers/elb/delete_load_balancer.rb +20 -0
  334. data/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb +22 -0
  335. data/lib/fog/aws/parsers/elb/describe_instance_health.rb +26 -0
  336. data/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb +54 -0
  337. data/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb +60 -0
  338. data/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb +66 -0
  339. data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +167 -0
  340. data/lib/fog/aws/parsers/elb/describe_tags.rb +26 -0
  341. data/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb +22 -0
  342. data/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb +22 -0
  343. data/lib/fog/aws/parsers/elb/empty.rb +24 -0
  344. data/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb +22 -0
  345. data/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb +22 -0
  346. data/lib/fog/aws/parsers/elb/tag_list_parser.rb +57 -0
  347. data/lib/fog/aws/parsers/emr/add_instance_groups.rb +26 -0
  348. data/lib/fog/aws/parsers/emr/add_job_flow_steps.rb +16 -0
  349. data/lib/fog/aws/parsers/emr/describe_job_flows.rb +137 -0
  350. data/lib/fog/aws/parsers/emr/modify_instance_groups.rb +16 -0
  351. data/lib/fog/aws/parsers/emr/run_job_flow.rb +18 -0
  352. data/lib/fog/aws/parsers/emr/set_termination_protection.rb +16 -0
  353. data/lib/fog/aws/parsers/emr/terminate_job_flows.rb +16 -0
  354. data/lib/fog/aws/parsers/iam/base_instance_profile.rb +75 -0
  355. data/lib/fog/aws/parsers/iam/basic.rb +16 -0
  356. data/lib/fog/aws/parsers/iam/create_access_key.rb +22 -0
  357. data/lib/fog/aws/parsers/iam/create_group.rb +22 -0
  358. data/lib/fog/aws/parsers/iam/create_user.rb +22 -0
  359. data/lib/fog/aws/parsers/iam/get_account_password_policy.rb +26 -0
  360. data/lib/fog/aws/parsers/iam/get_account_summary.rb +42 -0
  361. data/lib/fog/aws/parsers/iam/get_group.rb +52 -0
  362. data/lib/fog/aws/parsers/iam/get_group_policy.rb +30 -0
  363. data/lib/fog/aws/parsers/iam/get_role_policy.rb +28 -0
  364. data/lib/fog/aws/parsers/iam/get_user.rb +26 -0
  365. data/lib/fog/aws/parsers/iam/get_user_policy.rb +30 -0
  366. data/lib/fog/aws/parsers/iam/instance_profile.rb +28 -0
  367. data/lib/fog/aws/parsers/iam/list_access_keys.rb +28 -0
  368. data/lib/fog/aws/parsers/iam/list_account_aliases.rb +24 -0
  369. data/lib/fog/aws/parsers/iam/list_groups.rb +28 -0
  370. data/lib/fog/aws/parsers/iam/list_groups_for_user.rb +28 -0
  371. data/lib/fog/aws/parsers/iam/list_instance_profiles.rb +29 -0
  372. data/lib/fog/aws/parsers/iam/list_mfa_devices.rb +30 -0
  373. data/lib/fog/aws/parsers/iam/list_policies.rb +24 -0
  374. data/lib/fog/aws/parsers/iam/list_roles.rb +29 -0
  375. data/lib/fog/aws/parsers/iam/list_server_certificates.rb +34 -0
  376. data/lib/fog/aws/parsers/iam/list_signing_certificates.rb +28 -0
  377. data/lib/fog/aws/parsers/iam/list_users.rb +30 -0
  378. data/lib/fog/aws/parsers/iam/login_profile.rb +24 -0
  379. data/lib/fog/aws/parsers/iam/role_parser.rb +49 -0
  380. data/lib/fog/aws/parsers/iam/single_role.rb +27 -0
  381. data/lib/fog/aws/parsers/iam/update_group.rb +23 -0
  382. data/lib/fog/aws/parsers/iam/update_user.rb +24 -0
  383. data/lib/fog/aws/parsers/iam/upload_server_certificate.rb +24 -0
  384. data/lib/fog/aws/parsers/iam/upload_signing_certificate.rb +22 -0
  385. data/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb +32 -0
  386. data/lib/fog/aws/parsers/rds/base.rb +28 -0
  387. data/lib/fog/aws/parsers/rds/create_db_instance.rb +32 -0
  388. data/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb +32 -0
  389. data/lib/fog/aws/parsers/rds/create_db_parameter_group.rb +33 -0
  390. data/lib/fog/aws/parsers/rds/create_db_security_group.rb +32 -0
  391. data/lib/fog/aws/parsers/rds/create_db_snapshot.rb +32 -0
  392. data/lib/fog/aws/parsers/rds/create_db_subnet_group.rb +32 -0
  393. data/lib/fog/aws/parsers/rds/create_event_subscription.rb +32 -0
  394. data/lib/fog/aws/parsers/rds/db_engine_version_parser.rb +32 -0
  395. data/lib/fog/aws/parsers/rds/db_parser.rb +136 -0
  396. data/lib/fog/aws/parsers/rds/delete_db_instance.rb +33 -0
  397. data/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb +25 -0
  398. data/lib/fog/aws/parsers/rds/delete_db_security_group.rb +29 -0
  399. data/lib/fog/aws/parsers/rds/delete_db_snapshot.rb +32 -0
  400. data/lib/fog/aws/parsers/rds/delete_db_subnet_group.rb +29 -0
  401. data/lib/fog/aws/parsers/rds/delete_event_subscription.rb +29 -0
  402. data/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb +34 -0
  403. data/lib/fog/aws/parsers/rds/describe_db_instances.rb +34 -0
  404. data/lib/fog/aws/parsers/rds/describe_db_log_files.rb +42 -0
  405. data/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb +33 -0
  406. data/lib/fog/aws/parsers/rds/describe_db_parameters.rb +42 -0
  407. data/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb +38 -0
  408. data/lib/fog/aws/parsers/rds/describe_db_security_groups.rb +34 -0
  409. data/lib/fog/aws/parsers/rds/describe_db_snapshots.rb +34 -0
  410. data/lib/fog/aws/parsers/rds/describe_db_subnet_groups.rb +34 -0
  411. data/lib/fog/aws/parsers/rds/describe_event_subscriptions.rb +34 -0
  412. data/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb +45 -0
  413. data/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb +22 -0
  414. data/lib/fog/aws/parsers/rds/event_list.rb +38 -0
  415. data/lib/fog/aws/parsers/rds/event_subscription_parser.rb +37 -0
  416. data/lib/fog/aws/parsers/rds/modify_db_instance.rb +32 -0
  417. data/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb +26 -0
  418. data/lib/fog/aws/parsers/rds/promote_read_replica.rb +32 -0
  419. data/lib/fog/aws/parsers/rds/reboot_db_instance.rb +33 -0
  420. data/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb +32 -0
  421. data/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb +32 -0
  422. data/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb +32 -0
  423. data/lib/fog/aws/parsers/rds/security_group_parser.rb +36 -0
  424. data/lib/fog/aws/parsers/rds/snapshot_parser.rb +39 -0
  425. data/lib/fog/aws/parsers/rds/subnet_group_parser.rb +35 -0
  426. data/lib/fog/aws/parsers/rds/tag_list_parser.rb +33 -0
  427. data/lib/fog/aws/parsers/redshift/cluster.rb +28 -0
  428. data/lib/fog/aws/parsers/redshift/cluster_parser.rb +143 -0
  429. data/lib/fog/aws/parsers/redshift/cluster_security_group_parser.rb +49 -0
  430. data/lib/fog/aws/parsers/redshift/cluster_snapshot.rb +31 -0
  431. data/lib/fog/aws/parsers/redshift/cluster_snapshot_parser.rb +65 -0
  432. data/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb +50 -0
  433. data/lib/fog/aws/parsers/redshift/create_cluster_parameter_group.rb +29 -0
  434. data/lib/fog/aws/parsers/redshift/create_cluster_security_group.rb +30 -0
  435. data/lib/fog/aws/parsers/redshift/describe_cluster_parameter_groups.rb +40 -0
  436. data/lib/fog/aws/parsers/redshift/describe_cluster_parameters.rb +47 -0
  437. data/lib/fog/aws/parsers/redshift/describe_cluster_security_groups.rb +37 -0
  438. data/lib/fog/aws/parsers/redshift/describe_cluster_snapshots.rb +37 -0
  439. data/lib/fog/aws/parsers/redshift/describe_cluster_subnet_groups.rb +55 -0
  440. data/lib/fog/aws/parsers/redshift/describe_cluster_versions.rb +50 -0
  441. data/lib/fog/aws/parsers/redshift/describe_clusters.rb +29 -0
  442. data/lib/fog/aws/parsers/redshift/describe_default_cluster_parameters.rb +48 -0
  443. data/lib/fog/aws/parsers/redshift/describe_events.rb +43 -0
  444. data/lib/fog/aws/parsers/redshift/describe_orderable_cluster_options.rb +53 -0
  445. data/lib/fog/aws/parsers/redshift/describe_reserved_node_offerings.rb +63 -0
  446. data/lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb +70 -0
  447. data/lib/fog/aws/parsers/redshift/describe_resize.rb +58 -0
  448. data/lib/fog/aws/parsers/redshift/purchase_reserved_node_offering.rb +56 -0
  449. data/lib/fog/aws/parsers/redshift/revoke_cluster_security_group_ingress.rb +30 -0
  450. data/lib/fog/aws/parsers/redshift/update_cluster_parameter_group_parser.rb +28 -0
  451. data/lib/fog/aws/parsers/ses/delete_verified_email_address.rb +20 -0
  452. data/lib/fog/aws/parsers/ses/get_send_quota.rb +22 -0
  453. data/lib/fog/aws/parsers/ses/get_send_statistics.rb +26 -0
  454. data/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb +22 -0
  455. data/lib/fog/aws/parsers/ses/send_email.rb +22 -0
  456. data/lib/fog/aws/parsers/ses/send_raw_email.rb +22 -0
  457. data/lib/fog/aws/parsers/ses/verify_domain_identity.rb +22 -0
  458. data/lib/fog/aws/parsers/ses/verify_email_address.rb +20 -0
  459. data/lib/fog/aws/parsers/simpledb/basic.rb +27 -0
  460. data/lib/fog/aws/parsers/simpledb/domain_metadata.rb +28 -0
  461. data/lib/fog/aws/parsers/simpledb/get_attributes.rb +32 -0
  462. data/lib/fog/aws/parsers/simpledb/list_domains.rb +26 -0
  463. data/lib/fog/aws/parsers/simpledb/select.rb +37 -0
  464. data/lib/fog/aws/parsers/sns/add_permission.rb +20 -0
  465. data/lib/fog/aws/parsers/sns/confirm_subscription.rb +20 -0
  466. data/lib/fog/aws/parsers/sns/create_topic.rb +20 -0
  467. data/lib/fog/aws/parsers/sns/delete_topic.rb +20 -0
  468. data/lib/fog/aws/parsers/sns/get_topic_attributes.rb +29 -0
  469. data/lib/fog/aws/parsers/sns/list_subscriptions.rb +26 -0
  470. data/lib/fog/aws/parsers/sns/list_topics.rb +22 -0
  471. data/lib/fog/aws/parsers/sns/publish.rb +20 -0
  472. data/lib/fog/aws/parsers/sns/remove_permission.rb +20 -0
  473. data/lib/fog/aws/parsers/sns/set_topic_attributes.rb +20 -0
  474. data/lib/fog/aws/parsers/sns/subscribe.rb +20 -0
  475. data/lib/fog/aws/parsers/sns/unsubscribe.rb +20 -0
  476. data/lib/fog/aws/parsers/sqs/basic.rb +20 -0
  477. data/lib/fog/aws/parsers/sqs/create_queue.rb +22 -0
  478. data/lib/fog/aws/parsers/sqs/get_queue_attributes.rb +31 -0
  479. data/lib/fog/aws/parsers/sqs/list_queues.rb +22 -0
  480. data/lib/fog/aws/parsers/sqs/receive_message.rb +37 -0
  481. data/lib/fog/aws/parsers/sqs/send_message.rb +24 -0
  482. data/lib/fog/aws/parsers/storage/access_control_list.rb +42 -0
  483. data/lib/fog/aws/parsers/storage/complete_multipart_upload.rb +20 -0
  484. data/lib/fog/aws/parsers/storage/copy_object.rb +18 -0
  485. data/lib/fog/aws/parsers/storage/cors_configuration.rb +38 -0
  486. data/lib/fog/aws/parsers/storage/delete_multiple_objects.rb +45 -0
  487. data/lib/fog/aws/parsers/storage/get_bucket.rb +58 -0
  488. data/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb +64 -0
  489. data/lib/fog/aws/parsers/storage/get_bucket_location.rb +16 -0
  490. data/lib/fog/aws/parsers/storage/get_bucket_logging.rb +36 -0
  491. data/lib/fog/aws/parsers/storage/get_bucket_notification.rb +61 -0
  492. data/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb +84 -0
  493. data/lib/fog/aws/parsers/storage/get_bucket_tagging.rb +33 -0
  494. data/lib/fog/aws/parsers/storage/get_bucket_versioning.rb +20 -0
  495. data/lib/fog/aws/parsers/storage/get_bucket_website.rb +26 -0
  496. data/lib/fog/aws/parsers/storage/get_request_payment.rb +16 -0
  497. data/lib/fog/aws/parsers/storage/get_service.rb +28 -0
  498. data/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb +20 -0
  499. data/lib/fog/aws/parsers/storage/list_multipart_uploads.rb +52 -0
  500. data/lib/fog/aws/parsers/storage/list_parts.rb +36 -0
  501. data/lib/fog/aws/parsers/sts/assume_role.rb +26 -0
  502. data/lib/fog/aws/parsers/sts/assume_role_with_saml.rb +26 -0
  503. data/lib/fog/aws/parsers/sts/get_session_token.rb +26 -0
  504. data/lib/fog/aws/rds.rb +269 -0
  505. data/lib/fog/aws/redshift.rb +133 -0
  506. data/lib/fog/aws/region_methods.rb +11 -0
  507. data/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb +140 -0
  508. data/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb +114 -0
  509. data/lib/fog/aws/requests/auto_scaling/create_or_update_tags.rb +57 -0
  510. data/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb +55 -0
  511. data/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb +51 -0
  512. data/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb +58 -0
  513. data/lib/fog/aws/requests/auto_scaling/delete_policy.rb +50 -0
  514. data/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb +42 -0
  515. data/lib/fog/aws/requests/auto_scaling/delete_tags.rb +57 -0
  516. data/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb +48 -0
  517. data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb +134 -0
  518. data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb +89 -0
  519. data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_notification_types.rb +50 -0
  520. data/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb +112 -0
  521. data/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb +56 -0
  522. data/lib/fog/aws/requests/auto_scaling/describe_notification_configurations.rb +73 -0
  523. data/lib/fog/aws/requests/auto_scaling/describe_policies.rb +105 -0
  524. data/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb +82 -0
  525. data/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb +49 -0
  526. data/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb +82 -0
  527. data/lib/fog/aws/requests/auto_scaling/describe_tags.rb +68 -0
  528. data/lib/fog/aws/requests/auto_scaling/describe_termination_policy_types.rb +47 -0
  529. data/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb +50 -0
  530. data/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb +60 -0
  531. data/lib/fog/aws/requests/auto_scaling/execute_policy.rb +44 -0
  532. data/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb +64 -0
  533. data/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb +79 -0
  534. data/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb +64 -0
  535. data/lib/fog/aws/requests/auto_scaling/resume_processes.rb +53 -0
  536. data/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb +81 -0
  537. data/lib/fog/aws/requests/auto_scaling/set_instance_health.rb +49 -0
  538. data/lib/fog/aws/requests/auto_scaling/suspend_processes.rb +56 -0
  539. data/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb +59 -0
  540. data/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb +93 -0
  541. data/lib/fog/aws/requests/beanstalk/check_dns_availability.rb +26 -0
  542. data/lib/fog/aws/requests/beanstalk/create_application.rb +28 -0
  543. data/lib/fog/aws/requests/beanstalk/create_application_version.rb +40 -0
  544. data/lib/fog/aws/requests/beanstalk/create_configuration_template.rb +46 -0
  545. data/lib/fog/aws/requests/beanstalk/create_environment.rb +49 -0
  546. data/lib/fog/aws/requests/beanstalk/create_storage_location.rb +26 -0
  547. data/lib/fog/aws/requests/beanstalk/delete_application.rb +28 -0
  548. data/lib/fog/aws/requests/beanstalk/delete_application_version.rb +35 -0
  549. data/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb +33 -0
  550. data/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb +33 -0
  551. data/lib/fog/aws/requests/beanstalk/describe_application_versions.rb +33 -0
  552. data/lib/fog/aws/requests/beanstalk/describe_applications.rb +29 -0
  553. data/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb +39 -0
  554. data/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb +30 -0
  555. data/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb +28 -0
  556. data/lib/fog/aws/requests/beanstalk/describe_environments.rb +39 -0
  557. data/lib/fog/aws/requests/beanstalk/describe_events.rb +28 -0
  558. data/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb +26 -0
  559. data/lib/fog/aws/requests/beanstalk/rebuild_environment.rb +29 -0
  560. data/lib/fog/aws/requests/beanstalk/request_environment_info.rb +28 -0
  561. data/lib/fog/aws/requests/beanstalk/restart_app_server.rb +28 -0
  562. data/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb +28 -0
  563. data/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb +28 -0
  564. data/lib/fog/aws/requests/beanstalk/terminate_environment.rb +30 -0
  565. data/lib/fog/aws/requests/beanstalk/update_application.rb +29 -0
  566. data/lib/fog/aws/requests/beanstalk/update_application_version.rb +29 -0
  567. data/lib/fog/aws/requests/beanstalk/update_configuration_template.rb +35 -0
  568. data/lib/fog/aws/requests/beanstalk/update_environment.rb +41 -0
  569. data/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb +32 -0
  570. data/lib/fog/aws/requests/cdn/delete_distribution.rb +52 -0
  571. data/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb +51 -0
  572. data/lib/fog/aws/requests/cdn/get_distribution.rb +78 -0
  573. data/lib/fog/aws/requests/cdn/get_distribution_list.rb +81 -0
  574. data/lib/fog/aws/requests/cdn/get_invalidation.rb +58 -0
  575. data/lib/fog/aws/requests/cdn/get_invalidation_list.rb +76 -0
  576. data/lib/fog/aws/requests/cdn/get_streaming_distribution.rb +69 -0
  577. data/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb +81 -0
  578. data/lib/fog/aws/requests/cdn/post_distribution.rb +130 -0
  579. data/lib/fog/aws/requests/cdn/post_invalidation.rb +75 -0
  580. data/lib/fog/aws/requests/cdn/post_streaming_distribution.rb +115 -0
  581. data/lib/fog/aws/requests/cdn/put_distribution_config.rb +116 -0
  582. data/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb +105 -0
  583. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +88 -0
  584. data/lib/fog/aws/requests/cloud_formation/delete_stack.rb +25 -0
  585. data/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb +39 -0
  586. data/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb +38 -0
  587. data/lib/fog/aws/requests/cloud_formation/describe_stacks.rb +37 -0
  588. data/lib/fog/aws/requests/cloud_formation/get_template.rb +27 -0
  589. data/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb +34 -0
  590. data/lib/fog/aws/requests/cloud_formation/list_stacks.rb +35 -0
  591. data/lib/fog/aws/requests/cloud_formation/update_stack.rb +56 -0
  592. data/lib/fog/aws/requests/cloud_formation/validate_template.rb +29 -0
  593. data/lib/fog/aws/requests/cloud_watch/delete_alarms.rb +47 -0
  594. data/lib/fog/aws/requests/cloud_watch/describe_alarm_history.rb +32 -0
  595. data/lib/fog/aws/requests/cloud_watch/describe_alarms.rb +55 -0
  596. data/lib/fog/aws/requests/cloud_watch/describe_alarms_for_metric.rb +38 -0
  597. data/lib/fog/aws/requests/cloud_watch/disable_alarm_actions.rb +29 -0
  598. data/lib/fog/aws/requests/cloud_watch/enable_alarm_actions.rb +29 -0
  599. data/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb +46 -0
  600. data/lib/fog/aws/requests/cloud_watch/list_metrics.rb +62 -0
  601. data/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb +93 -0
  602. data/lib/fog/aws/requests/cloud_watch/put_metric_data.rb +72 -0
  603. data/lib/fog/aws/requests/cloud_watch/set_alarm_state.rb +30 -0
  604. data/lib/fog/aws/requests/compute/allocate_address.rb +55 -0
  605. data/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb +55 -0
  606. data/lib/fog/aws/requests/compute/associate_address.rb +126 -0
  607. data/lib/fog/aws/requests/compute/associate_dhcp_options.rb +53 -0
  608. data/lib/fog/aws/requests/compute/associate_route_table.rb +70 -0
  609. data/lib/fog/aws/requests/compute/attach_internet_gateway.rb +52 -0
  610. data/lib/fog/aws/requests/compute/attach_network_interface.rb +61 -0
  611. data/lib/fog/aws/requests/compute/attach_volume.rb +83 -0
  612. data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +230 -0
  613. data/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb +32 -0
  614. data/lib/fog/aws/requests/compute/copy_image.rb +59 -0
  615. data/lib/fog/aws/requests/compute/copy_snapshot.rb +54 -0
  616. data/lib/fog/aws/requests/compute/create_dhcp_options.rb +74 -0
  617. data/lib/fog/aws/requests/compute/create_image.rb +91 -0
  618. data/lib/fog/aws/requests/compute/create_internet_gateway.rb +52 -0
  619. data/lib/fog/aws/requests/compute/create_key_pair.rb +52 -0
  620. data/lib/fog/aws/requests/compute/create_network_acl.rb +105 -0
  621. data/lib/fog/aws/requests/compute/create_network_acl_entry.rb +80 -0
  622. data/lib/fog/aws/requests/compute/create_network_interface.rb +134 -0
  623. data/lib/fog/aws/requests/compute/create_placement_group.rb +31 -0
  624. data/lib/fog/aws/requests/compute/create_route.rb +87 -0
  625. data/lib/fog/aws/requests/compute/create_route_table.rb +69 -0
  626. data/lib/fog/aws/requests/compute/create_security_group.rb +60 -0
  627. data/lib/fog/aws/requests/compute/create_snapshot.rb +70 -0
  628. data/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb +39 -0
  629. data/lib/fog/aws/requests/compute/create_subnet.rb +102 -0
  630. data/lib/fog/aws/requests/compute/create_tags.rb +65 -0
  631. data/lib/fog/aws/requests/compute/create_volume.rb +124 -0
  632. data/lib/fog/aws/requests/compute/create_vpc.rb +94 -0
  633. data/lib/fog/aws/requests/compute/delete_dhcp_options.rb +50 -0
  634. data/lib/fog/aws/requests/compute/delete_internet_gateway.rb +48 -0
  635. data/lib/fog/aws/requests/compute/delete_key_pair.rb +43 -0
  636. data/lib/fog/aws/requests/compute/delete_network_acl.rb +52 -0
  637. data/lib/fog/aws/requests/compute/delete_network_acl_entry.rb +55 -0
  638. data/lib/fog/aws/requests/compute/delete_network_interface.rb +51 -0
  639. data/lib/fog/aws/requests/compute/delete_placement_group.rb +30 -0
  640. data/lib/fog/aws/requests/compute/delete_route.rb +57 -0
  641. data/lib/fog/aws/requests/compute/delete_route_table.rb +49 -0
  642. data/lib/fog/aws/requests/compute/delete_security_group.rb +100 -0
  643. data/lib/fog/aws/requests/compute/delete_snapshot.rb +46 -0
  644. data/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb +26 -0
  645. data/lib/fog/aws/requests/compute/delete_subnet.rb +49 -0
  646. data/lib/fog/aws/requests/compute/delete_tags.rb +67 -0
  647. data/lib/fog/aws/requests/compute/delete_volume.rb +52 -0
  648. data/lib/fog/aws/requests/compute/delete_vpc.rb +56 -0
  649. data/lib/fog/aws/requests/compute/deregister_image.rb +49 -0
  650. data/lib/fog/aws/requests/compute/describe_account_attributes.rb +48 -0
  651. data/lib/fog/aws/requests/compute/describe_addresses.rb +62 -0
  652. data/lib/fog/aws/requests/compute/describe_availability_zones.rb +94 -0
  653. data/lib/fog/aws/requests/compute/describe_dhcp_options.rb +54 -0
  654. data/lib/fog/aws/requests/compute/describe_images.rb +126 -0
  655. data/lib/fog/aws/requests/compute/describe_instance_status.rb +46 -0
  656. data/lib/fog/aws/requests/compute/describe_instances.rb +265 -0
  657. data/lib/fog/aws/requests/compute/describe_internet_gateways.rb +59 -0
  658. data/lib/fog/aws/requests/compute/describe_key_pairs.rb +64 -0
  659. data/lib/fog/aws/requests/compute/describe_network_acls.rb +108 -0
  660. data/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb +66 -0
  661. data/lib/fog/aws/requests/compute/describe_network_interfaces.rb +85 -0
  662. data/lib/fog/aws/requests/compute/describe_placement_groups.rb +33 -0
  663. data/lib/fog/aws/requests/compute/describe_regions.rb +64 -0
  664. data/lib/fog/aws/requests/compute/describe_reserved_instances.rb +59 -0
  665. data/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb +80 -0
  666. data/lib/fog/aws/requests/compute/describe_route_tables.rb +86 -0
  667. data/lib/fog/aws/requests/compute/describe_security_groups.rb +98 -0
  668. data/lib/fog/aws/requests/compute/describe_snapshots.rb +120 -0
  669. data/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb +33 -0
  670. data/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb +46 -0
  671. data/lib/fog/aws/requests/compute/describe_spot_price_history.rb +35 -0
  672. data/lib/fog/aws/requests/compute/describe_subnets.rb +71 -0
  673. data/lib/fog/aws/requests/compute/describe_tags.rb +104 -0
  674. data/lib/fog/aws/requests/compute/describe_volume_status.rb +43 -0
  675. data/lib/fog/aws/requests/compute/describe_volumes.rb +118 -0
  676. data/lib/fog/aws/requests/compute/describe_vpc_attribute.rb +55 -0
  677. data/lib/fog/aws/requests/compute/describe_vpcs.rb +74 -0
  678. data/lib/fog/aws/requests/compute/detach_internet_gateway.rb +52 -0
  679. data/lib/fog/aws/requests/compute/detach_network_interface.rb +48 -0
  680. data/lib/fog/aws/requests/compute/detach_volume.rb +61 -0
  681. data/lib/fog/aws/requests/compute/disassociate_address.rb +55 -0
  682. data/lib/fog/aws/requests/compute/disassociate_route_table.rb +54 -0
  683. data/lib/fog/aws/requests/compute/get_console_output.rb +50 -0
  684. data/lib/fog/aws/requests/compute/get_password_data.rb +52 -0
  685. data/lib/fog/aws/requests/compute/import_key_pair.rb +52 -0
  686. data/lib/fog/aws/requests/compute/modify_image_attribute.rb +70 -0
  687. data/lib/fog/aws/requests/compute/modify_instance_attribute.rb +42 -0
  688. data/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb +89 -0
  689. data/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb +35 -0
  690. data/lib/fog/aws/requests/compute/modify_subnet_attribute.rb +58 -0
  691. data/lib/fog/aws/requests/compute/modify_volume_attribute.rb +48 -0
  692. data/lib/fog/aws/requests/compute/modify_vpc_attribute.rb +66 -0
  693. data/lib/fog/aws/requests/compute/monitor_instances.rb +48 -0
  694. data/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb +62 -0
  695. data/lib/fog/aws/requests/compute/reboot_instances.rb +50 -0
  696. data/lib/fog/aws/requests/compute/register_image.rb +133 -0
  697. data/lib/fog/aws/requests/compute/release_address.rb +59 -0
  698. data/lib/fog/aws/requests/compute/replace_network_acl_association.rb +66 -0
  699. data/lib/fog/aws/requests/compute/replace_network_acl_entry.rb +81 -0
  700. data/lib/fog/aws/requests/compute/replace_route.rb +80 -0
  701. data/lib/fog/aws/requests/compute/request_spot_instances.rb +96 -0
  702. data/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb +56 -0
  703. data/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb +98 -0
  704. data/lib/fog/aws/requests/compute/run_instances.rb +274 -0
  705. data/lib/fog/aws/requests/compute/start_instances.rb +58 -0
  706. data/lib/fog/aws/requests/compute/stop_instances.rb +59 -0
  707. data/lib/fog/aws/requests/compute/terminate_instances.rb +92 -0
  708. data/lib/fog/aws/requests/compute/unmonitor_instances.rb +48 -0
  709. data/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb +31 -0
  710. data/lib/fog/aws/requests/data_pipeline/create_pipeline.rb +39 -0
  711. data/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb +30 -0
  712. data/lib/fog/aws/requests/data_pipeline/describe_objects.rb +38 -0
  713. data/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb +32 -0
  714. data/lib/fog/aws/requests/data_pipeline/get_pipeline_definition.rb +33 -0
  715. data/lib/fog/aws/requests/data_pipeline/list_pipelines.rb +32 -0
  716. data/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb +76 -0
  717. data/lib/fog/aws/requests/data_pipeline/query_objects.rb +38 -0
  718. data/lib/fog/aws/requests/dns/change_resource_record_sets.rb +243 -0
  719. data/lib/fog/aws/requests/dns/create_health_check.rb +64 -0
  720. data/lib/fog/aws/requests/dns/create_hosted_zone.rb +108 -0
  721. data/lib/fog/aws/requests/dns/delete_health_check.rb +24 -0
  722. data/lib/fog/aws/requests/dns/delete_hosted_zone.rb +66 -0
  723. data/lib/fog/aws/requests/dns/get_change.rb +59 -0
  724. data/lib/fog/aws/requests/dns/get_health_check.rb +41 -0
  725. data/lib/fog/aws/requests/dns/get_hosted_zone.rb +61 -0
  726. data/lib/fog/aws/requests/dns/list_health_checks.rb +36 -0
  727. data/lib/fog/aws/requests/dns/list_hosted_zones.rb +88 -0
  728. data/lib/fog/aws/requests/dns/list_resource_record_sets.rb +130 -0
  729. data/lib/fog/aws/requests/dynamodb/batch_get_item.rb +41 -0
  730. data/lib/fog/aws/requests/dynamodb/batch_write_item.rb +33 -0
  731. data/lib/fog/aws/requests/dynamodb/create_table.rb +53 -0
  732. data/lib/fog/aws/requests/dynamodb/delete_item.rb +43 -0
  733. data/lib/fog/aws/requests/dynamodb/delete_table.rb +40 -0
  734. data/lib/fog/aws/requests/dynamodb/describe_table.rb +42 -0
  735. data/lib/fog/aws/requests/dynamodb/get_item.rb +41 -0
  736. data/lib/fog/aws/requests/dynamodb/list_tables.rb +27 -0
  737. data/lib/fog/aws/requests/dynamodb/put_item.rb +39 -0
  738. data/lib/fog/aws/requests/dynamodb/query.rb +42 -0
  739. data/lib/fog/aws/requests/dynamodb/scan.rb +43 -0
  740. data/lib/fog/aws/requests/dynamodb/update_item.rb +47 -0
  741. data/lib/fog/aws/requests/dynamodb/update_table.rb +44 -0
  742. data/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb +57 -0
  743. data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +94 -0
  744. data/lib/fog/aws/requests/elasticache/create_cache_parameter_group.rb +52 -0
  745. data/lib/fog/aws/requests/elasticache/create_cache_security_group.rb +51 -0
  746. data/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb +60 -0
  747. data/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb +38 -0
  748. data/lib/fog/aws/requests/elasticache/delete_cache_parameter_group.rb +40 -0
  749. data/lib/fog/aws/requests/elasticache/delete_cache_security_group.rb +39 -0
  750. data/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb +39 -0
  751. data/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb +51 -0
  752. data/lib/fog/aws/requests/elasticache/describe_cache_parameter_groups.rb +47 -0
  753. data/lib/fog/aws/requests/elasticache/describe_cache_parameters.rb +34 -0
  754. data/lib/fog/aws/requests/elasticache/describe_cache_security_groups.rb +64 -0
  755. data/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb +59 -0
  756. data/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb +33 -0
  757. data/lib/fog/aws/requests/elasticache/describe_events.rb +47 -0
  758. data/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb +38 -0
  759. data/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb +99 -0
  760. data/lib/fog/aws/requests/elasticache/modify_cache_parameter_group.rb +43 -0
  761. data/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb +49 -0
  762. data/lib/fog/aws/requests/elasticache/reset_cache_parameter_group.rb +44 -0
  763. data/lib/fog/aws/requests/elasticache/revoke_cache_security_group_ingress.rb +35 -0
  764. data/lib/fog/aws/requests/elb/add_tags.rb +46 -0
  765. data/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb +58 -0
  766. data/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb +58 -0
  767. data/lib/fog/aws/requests/elb/configure_health_check.rb +63 -0
  768. data/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb +52 -0
  769. data/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb +54 -0
  770. data/lib/fog/aws/requests/elb/create_load_balancer.rb +206 -0
  771. data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +86 -0
  772. data/lib/fog/aws/requests/elb/create_load_balancer_policy.rb +80 -0
  773. data/lib/fog/aws/requests/elb/delete_load_balancer.rb +49 -0
  774. data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +48 -0
  775. data/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb +52 -0
  776. data/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb +61 -0
  777. data/lib/fog/aws/requests/elb/describe_instance_health.rb +70 -0
  778. data/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb +58 -0
  779. data/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb +69 -0
  780. data/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb +66 -0
  781. data/lib/fog/aws/requests/elb/describe_load_balancers.rb +137 -0
  782. data/lib/fog/aws/requests/elb/describe_tags.rb +56 -0
  783. data/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb +58 -0
  784. data/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb +57 -0
  785. data/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb +58 -0
  786. data/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb +65 -0
  787. data/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb +62 -0
  788. data/lib/fog/aws/requests/elb/remove_tags.rb +46 -0
  789. data/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb +65 -0
  790. data/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb +66 -0
  791. data/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb +78 -0
  792. data/lib/fog/aws/requests/emr/add_instance_groups.rb +42 -0
  793. data/lib/fog/aws/requests/emr/add_job_flow_steps.rb +45 -0
  794. data/lib/fog/aws/requests/emr/describe_job_flows.rb +104 -0
  795. data/lib/fog/aws/requests/emr/modify_instance_groups.rb +36 -0
  796. data/lib/fog/aws/requests/emr/run_job_flow.rb +104 -0
  797. data/lib/fog/aws/requests/emr/set_termination_protection.rb +35 -0
  798. data/lib/fog/aws/requests/emr/terminate_job_flows.rb +33 -0
  799. data/lib/fog/aws/requests/glacier/abort_multipart_upload.rb +33 -0
  800. data/lib/fog/aws/requests/glacier/complete_multipart_upload.rb +40 -0
  801. data/lib/fog/aws/requests/glacier/create_archive.rb +41 -0
  802. data/lib/fog/aws/requests/glacier/create_vault.rb +32 -0
  803. data/lib/fog/aws/requests/glacier/delete_archive.rb +33 -0
  804. data/lib/fog/aws/requests/glacier/delete_vault.rb +32 -0
  805. data/lib/fog/aws/requests/glacier/delete_vault_notification_configuration.rb +31 -0
  806. data/lib/fog/aws/requests/glacier/describe_job.rb +33 -0
  807. data/lib/fog/aws/requests/glacier/describe_vault.rb +32 -0
  808. data/lib/fog/aws/requests/glacier/get_job_output.rb +39 -0
  809. data/lib/fog/aws/requests/glacier/get_vault_notification_configuration.rb +32 -0
  810. data/lib/fog/aws/requests/glacier/initiate_job.rb +39 -0
  811. data/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb +36 -0
  812. data/lib/fog/aws/requests/glacier/list_jobs.rb +36 -0
  813. data/lib/fog/aws/requests/glacier/list_multipart_uploads.rb +34 -0
  814. data/lib/fog/aws/requests/glacier/list_parts.rb +35 -0
  815. data/lib/fog/aws/requests/glacier/list_vaults.rb +34 -0
  816. data/lib/fog/aws/requests/glacier/set_vault_notification_configuration.rb +35 -0
  817. data/lib/fog/aws/requests/glacier/upload_part.rb +44 -0
  818. data/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb +32 -0
  819. data/lib/fog/aws/requests/iam/add_user_to_group.rb +54 -0
  820. data/lib/fog/aws/requests/iam/create_access_key.rb +66 -0
  821. data/lib/fog/aws/requests/iam/create_account_alias.rb +17 -0
  822. data/lib/fog/aws/requests/iam/create_group.rb +56 -0
  823. data/lib/fog/aws/requests/iam/create_instance_profile.rb +45 -0
  824. data/lib/fog/aws/requests/iam/create_login_profile.rb +34 -0
  825. data/lib/fog/aws/requests/iam/create_role.rb +55 -0
  826. data/lib/fog/aws/requests/iam/create_user.rb +59 -0
  827. data/lib/fog/aws/requests/iam/delete_access_key.rb +47 -0
  828. data/lib/fog/aws/requests/iam/delete_account_alias.rb +17 -0
  829. data/lib/fog/aws/requests/iam/delete_account_password_policy.rb +36 -0
  830. data/lib/fog/aws/requests/iam/delete_group.rb +48 -0
  831. data/lib/fog/aws/requests/iam/delete_group_policy.rb +32 -0
  832. data/lib/fog/aws/requests/iam/delete_instance_profile.rb +30 -0
  833. data/lib/fog/aws/requests/iam/delete_login_profile.rb +29 -0
  834. data/lib/fog/aws/requests/iam/delete_role.rb +30 -0
  835. data/lib/fog/aws/requests/iam/delete_role_policy.rb +32 -0
  836. data/lib/fog/aws/requests/iam/delete_server_certificate.rb +46 -0
  837. data/lib/fog/aws/requests/iam/delete_signing_certificate.rb +31 -0
  838. data/lib/fog/aws/requests/iam/delete_user.rb +44 -0
  839. data/lib/fog/aws/requests/iam/delete_user_policy.rb +46 -0
  840. data/lib/fog/aws/requests/iam/get_account_password_policy.rb +36 -0
  841. data/lib/fog/aws/requests/iam/get_account_summary.rb +75 -0
  842. data/lib/fog/aws/requests/iam/get_group.rb +60 -0
  843. data/lib/fog/aws/requests/iam/get_group_policy.rb +51 -0
  844. data/lib/fog/aws/requests/iam/get_instance_profile.rb +40 -0
  845. data/lib/fog/aws/requests/iam/get_login_profile.rb +33 -0
  846. data/lib/fog/aws/requests/iam/get_role.rb +36 -0
  847. data/lib/fog/aws/requests/iam/get_role_policy.rb +34 -0
  848. data/lib/fog/aws/requests/iam/get_server_certificate.rb +45 -0
  849. data/lib/fog/aws/requests/iam/get_user.rb +55 -0
  850. data/lib/fog/aws/requests/iam/get_user_policy.rb +51 -0
  851. data/lib/fog/aws/requests/iam/list_access_keys.rb +62 -0
  852. data/lib/fog/aws/requests/iam/list_account_aliases.rb +16 -0
  853. data/lib/fog/aws/requests/iam/list_group_policies.rb +37 -0
  854. data/lib/fog/aws/requests/iam/list_groups.rb +57 -0
  855. data/lib/fog/aws/requests/iam/list_groups_for_user.rb +65 -0
  856. data/lib/fog/aws/requests/iam/list_instance_profiles.rb +48 -0
  857. data/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb +49 -0
  858. data/lib/fog/aws/requests/iam/list_mfa_devices.rb +55 -0
  859. data/lib/fog/aws/requests/iam/list_role_policies.rb +37 -0
  860. data/lib/fog/aws/requests/iam/list_roles.rb +41 -0
  861. data/lib/fog/aws/requests/iam/list_server_certificates.rb +54 -0
  862. data/lib/fog/aws/requests/iam/list_signing_certificates.rb +36 -0
  863. data/lib/fog/aws/requests/iam/list_user_policies.rb +53 -0
  864. data/lib/fog/aws/requests/iam/list_users.rb +58 -0
  865. data/lib/fog/aws/requests/iam/put_group_policy.rb +50 -0
  866. data/lib/fog/aws/requests/iam/put_role_policy.rb +34 -0
  867. data/lib/fog/aws/requests/iam/put_user_policy.rb +51 -0
  868. data/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb +33 -0
  869. data/lib/fog/aws/requests/iam/remove_user_from_group.rb +50 -0
  870. data/lib/fog/aws/requests/iam/update_access_key.rb +55 -0
  871. data/lib/fog/aws/requests/iam/update_account_password_policy.rb +56 -0
  872. data/lib/fog/aws/requests/iam/update_group.rb +37 -0
  873. data/lib/fog/aws/requests/iam/update_login_profile.rb +31 -0
  874. data/lib/fog/aws/requests/iam/update_server_certificate.rb +63 -0
  875. data/lib/fog/aws/requests/iam/update_signing_certificate.rb +31 -0
  876. data/lib/fog/aws/requests/iam/update_user.rb +37 -0
  877. data/lib/fog/aws/requests/iam/upload_server_certificate.rb +95 -0
  878. data/lib/fog/aws/requests/iam/upload_signing_certificate.rb +36 -0
  879. data/lib/fog/aws/requests/rds/add_tags_to_resource.rb +42 -0
  880. data/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb +65 -0
  881. data/lib/fog/aws/requests/rds/create_db_instance.rb +132 -0
  882. data/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb +77 -0
  883. data/lib/fog/aws/requests/rds/create_db_parameter_group.rb +53 -0
  884. data/lib/fog/aws/requests/rds/create_db_security_group.rb +49 -0
  885. data/lib/fog/aws/requests/rds/create_db_snapshot.rb +68 -0
  886. data/lib/fog/aws/requests/rds/create_db_subnet_group.rb +61 -0
  887. data/lib/fog/aws/requests/rds/create_event_subscription.rb +67 -0
  888. data/lib/fog/aws/requests/rds/delete_db_instance.rb +51 -0
  889. data/lib/fog/aws/requests/rds/delete_db_parameter_group.rb +41 -0
  890. data/lib/fog/aws/requests/rds/delete_db_security_group.rb +40 -0
  891. data/lib/fog/aws/requests/rds/delete_db_snapshot.rb +42 -0
  892. data/lib/fog/aws/requests/rds/delete_db_subnet_group.rb +38 -0
  893. data/lib/fog/aws/requests/rds/delete_event_subscription.rb +44 -0
  894. data/lib/fog/aws/requests/rds/describe_db_engine_versions.rb +30 -0
  895. data/lib/fog/aws/requests/rds/describe_db_instances.rb +89 -0
  896. data/lib/fog/aws/requests/rds/describe_db_log_files.rb +64 -0
  897. data/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb +58 -0
  898. data/lib/fog/aws/requests/rds/describe_db_parameters.rb +42 -0
  899. data/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb +38 -0
  900. data/lib/fog/aws/requests/rds/describe_db_security_groups.rb +80 -0
  901. data/lib/fog/aws/requests/rds/describe_db_snapshots.rb +66 -0
  902. data/lib/fog/aws/requests/rds/describe_db_subnet_groups.rb +59 -0
  903. data/lib/fog/aws/requests/rds/describe_event_subscriptions.rb +61 -0
  904. data/lib/fog/aws/requests/rds/describe_events.rb +50 -0
  905. data/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb +72 -0
  906. data/lib/fog/aws/requests/rds/download_db_logfile_portion.rb +58 -0
  907. data/lib/fog/aws/requests/rds/list_tags_for_resource.rb +40 -0
  908. data/lib/fog/aws/requests/rds/modify_db_instance.rb +81 -0
  909. data/lib/fog/aws/requests/rds/modify_db_parameter_group.rb +50 -0
  910. data/lib/fog/aws/requests/rds/promote_read_replica.rb +59 -0
  911. data/lib/fog/aws/requests/rds/reboot_db_instance.rb +47 -0
  912. data/lib/fog/aws/requests/rds/remove_tags_from_resource.rb +40 -0
  913. data/lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb +29 -0
  914. data/lib/fog/aws/requests/rds/restore_db_instance_to_point_in_time.rb +29 -0
  915. data/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb +63 -0
  916. data/lib/fog/aws/requests/redshift/authorize_cluster_security_group_ingress.rb +54 -0
  917. data/lib/fog/aws/requests/redshift/authorize_snapshot_access.rb +42 -0
  918. data/lib/fog/aws/requests/redshift/copy_cluster_snapshot.rb +46 -0
  919. data/lib/fog/aws/requests/redshift/create_cluster.rb +148 -0
  920. data/lib/fog/aws/requests/redshift/create_cluster_parameter_group.rb +53 -0
  921. data/lib/fog/aws/requests/redshift/create_cluster_security_group.rb +41 -0
  922. data/lib/fog/aws/requests/redshift/create_cluster_snapshot.rb +43 -0
  923. data/lib/fog/aws/requests/redshift/create_cluster_subnet_group.rb +49 -0
  924. data/lib/fog/aws/requests/redshift/delete_cluster.rb +50 -0
  925. data/lib/fog/aws/requests/redshift/delete_cluster_parameter_group.rb +33 -0
  926. data/lib/fog/aws/requests/redshift/delete_cluster_security_group.rb +32 -0
  927. data/lib/fog/aws/requests/redshift/delete_cluster_snapshot.rb +43 -0
  928. data/lib/fog/aws/requests/redshift/delete_cluster_subnet_group.rb +36 -0
  929. data/lib/fog/aws/requests/redshift/describe_cluster_parameter_groups.rb +47 -0
  930. data/lib/fog/aws/requests/redshift/describe_cluster_parameters.rb +54 -0
  931. data/lib/fog/aws/requests/redshift/describe_cluster_security_groups.rb +49 -0
  932. data/lib/fog/aws/requests/redshift/describe_cluster_snapshots.rb +72 -0
  933. data/lib/fog/aws/requests/redshift/describe_cluster_subnet_groups.rb +46 -0
  934. data/lib/fog/aws/requests/redshift/describe_cluster_versions.rb +53 -0
  935. data/lib/fog/aws/requests/redshift/describe_clusters.rb +49 -0
  936. data/lib/fog/aws/requests/redshift/describe_default_cluster_parameters.rb +48 -0
  937. data/lib/fog/aws/requests/redshift/describe_events.rb +79 -0
  938. data/lib/fog/aws/requests/redshift/describe_orderable_cluster_options.rb +54 -0
  939. data/lib/fog/aws/requests/redshift/describe_reserved_node_offerings.rb +47 -0
  940. data/lib/fog/aws/requests/redshift/describe_reserved_nodes.rb +47 -0
  941. data/lib/fog/aws/requests/redshift/describe_resize.rb +38 -0
  942. data/lib/fog/aws/requests/redshift/modify_cluster.rb +109 -0
  943. data/lib/fog/aws/requests/redshift/modify_cluster_parameter_group.rb +44 -0
  944. data/lib/fog/aws/requests/redshift/modify_cluster_subnet_group.rb +49 -0
  945. data/lib/fog/aws/requests/redshift/purchase_reserved_node_offering.rb +39 -0
  946. data/lib/fog/aws/requests/redshift/reboot_cluster.rb +36 -0
  947. data/lib/fog/aws/requests/redshift/reset_cluster_parameter_group.rb +55 -0
  948. data/lib/fog/aws/requests/redshift/restore_from_cluster_snapshot.rb +76 -0
  949. data/lib/fog/aws/requests/redshift/revoke_cluster_security_group_ingress.rb +54 -0
  950. data/lib/fog/aws/requests/redshift/revoke_snapshot_access.rb +43 -0
  951. data/lib/fog/aws/requests/ses/delete_verified_email_address.rb +26 -0
  952. data/lib/fog/aws/requests/ses/get_send_quota.rb +29 -0
  953. data/lib/fog/aws/requests/ses/get_send_statistics.rb +32 -0
  954. data/lib/fog/aws/requests/ses/list_verified_email_addresses.rb +26 -0
  955. data/lib/fog/aws/requests/ses/send_email.rb +71 -0
  956. data/lib/fog/aws/requests/ses/send_raw_email.rb +39 -0
  957. data/lib/fog/aws/requests/ses/verify_domain_identity.rb +28 -0
  958. data/lib/fog/aws/requests/ses/verify_email_address.rb +26 -0
  959. data/lib/fog/aws/requests/simpledb/batch_put_attributes.rb +60 -0
  960. data/lib/fog/aws/requests/simpledb/create_domain.rb +40 -0
  961. data/lib/fog/aws/requests/simpledb/delete_attributes.rb +69 -0
  962. data/lib/fog/aws/requests/simpledb/delete_domain.rb +41 -0
  963. data/lib/fog/aws/requests/simpledb/domain_metadata.rb +72 -0
  964. data/lib/fog/aws/requests/simpledb/get_attributes.rb +80 -0
  965. data/lib/fog/aws/requests/simpledb/list_domains.rb +55 -0
  966. data/lib/fog/aws/requests/simpledb/put_attributes.rb +74 -0
  967. data/lib/fog/aws/requests/simpledb/select.rb +41 -0
  968. data/lib/fog/aws/requests/sns/add_permission.rb +22 -0
  969. data/lib/fog/aws/requests/sns/confirm_subscription.rb +30 -0
  970. data/lib/fog/aws/requests/sns/create_topic.rb +47 -0
  971. data/lib/fog/aws/requests/sns/delete_topic.rb +36 -0
  972. data/lib/fog/aws/requests/sns/get_topic_attributes.rb +36 -0
  973. data/lib/fog/aws/requests/sns/list_subscriptions.rb +35 -0
  974. data/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb +39 -0
  975. data/lib/fog/aws/requests/sns/list_topics.rb +35 -0
  976. data/lib/fog/aws/requests/sns/publish.rb +31 -0
  977. data/lib/fog/aws/requests/sns/remove_permission.rb +22 -0
  978. data/lib/fog/aws/requests/sns/set_topic_attributes.rb +45 -0
  979. data/lib/fog/aws/requests/sns/subscribe.rb +60 -0
  980. data/lib/fog/aws/requests/sns/unsubscribe.rb +26 -0
  981. data/lib/fog/aws/requests/sqs/change_message_visibility.rb +58 -0
  982. data/lib/fog/aws/requests/sqs/create_queue.rb +62 -0
  983. data/lib/fog/aws/requests/sqs/delete_message.rb +56 -0
  984. data/lib/fog/aws/requests/sqs/delete_queue.rb +47 -0
  985. data/lib/fog/aws/requests/sqs/get_queue_attributes.rb +48 -0
  986. data/lib/fog/aws/requests/sqs/list_queues.rb +41 -0
  987. data/lib/fog/aws/requests/sqs/receive_message.rb +83 -0
  988. data/lib/fog/aws/requests/sqs/send_message.rb +65 -0
  989. data/lib/fog/aws/requests/sqs/set_queue_attributes.rb +49 -0
  990. data/lib/fog/aws/requests/storage/abort_multipart_upload.rb +45 -0
  991. data/lib/fog/aws/requests/storage/acl_utils.rb +60 -0
  992. data/lib/fog/aws/requests/storage/complete_multipart_upload.rb +73 -0
  993. data/lib/fog/aws/requests/storage/copy_object.rb +77 -0
  994. data/lib/fog/aws/requests/storage/cors_utils.rb +39 -0
  995. data/lib/fog/aws/requests/storage/delete_bucket.rb +42 -0
  996. data/lib/fog/aws/requests/storage/delete_bucket_cors.rb +26 -0
  997. data/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb +26 -0
  998. data/lib/fog/aws/requests/storage/delete_bucket_policy.rb +26 -0
  999. data/lib/fog/aws/requests/storage/delete_bucket_tagging.rb +41 -0
  1000. data/lib/fog/aws/requests/storage/delete_bucket_website.rb +26 -0
  1001. data/lib/fog/aws/requests/storage/delete_multiple_objects.rb +164 -0
  1002. data/lib/fog/aws/requests/storage/delete_object.rb +115 -0
  1003. data/lib/fog/aws/requests/storage/get_bucket.rb +108 -0
  1004. data/lib/fog/aws/requests/storage/get_bucket_acl.rb +65 -0
  1005. data/lib/fog/aws/requests/storage/get_bucket_cors.rb +61 -0
  1006. data/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb +35 -0
  1007. data/lib/fog/aws/requests/storage/get_bucket_location.rb +55 -0
  1008. data/lib/fog/aws/requests/storage/get_bucket_logging.rb +45 -0
  1009. data/lib/fog/aws/requests/storage/get_bucket_notification.rb +60 -0
  1010. data/lib/fog/aws/requests/storage/get_bucket_object_versions.rb +160 -0
  1011. data/lib/fog/aws/requests/storage/get_bucket_policy.rb +31 -0
  1012. data/lib/fog/aws/requests/storage/get_bucket_tagging.rb +49 -0
  1013. data/lib/fog/aws/requests/storage/get_bucket_versioning.rb +68 -0
  1014. data/lib/fog/aws/requests/storage/get_bucket_website.rb +38 -0
  1015. data/lib/fog/aws/requests/storage/get_object.rb +189 -0
  1016. data/lib/fog/aws/requests/storage/get_object_acl.rb +76 -0
  1017. data/lib/fog/aws/requests/storage/get_object_http_url.rb +30 -0
  1018. data/lib/fog/aws/requests/storage/get_object_https_url.rb +30 -0
  1019. data/lib/fog/aws/requests/storage/get_object_torrent.rb +45 -0
  1020. data/lib/fog/aws/requests/storage/get_object_url.rb +40 -0
  1021. data/lib/fog/aws/requests/storage/get_request_payment.rb +45 -0
  1022. data/lib/fog/aws/requests/storage/get_service.rb +50 -0
  1023. data/lib/fog/aws/requests/storage/head_bucket.rb +38 -0
  1024. data/lib/fog/aws/requests/storage/head_object.rb +62 -0
  1025. data/lib/fog/aws/requests/storage/initiate_multipart_upload.rb +66 -0
  1026. data/lib/fog/aws/requests/storage/list_multipart_uploads.rb +52 -0
  1027. data/lib/fog/aws/requests/storage/list_parts.rb +53 -0
  1028. data/lib/fog/aws/requests/storage/post_object_hidden_fields.rb +54 -0
  1029. data/lib/fog/aws/requests/storage/post_object_restore.rb +50 -0
  1030. data/lib/fog/aws/requests/storage/put_bucket.rb +73 -0
  1031. data/lib/fog/aws/requests/storage/put_bucket_acl.rb +69 -0
  1032. data/lib/fog/aws/requests/storage/put_bucket_cors.rb +47 -0
  1033. data/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb +76 -0
  1034. data/lib/fog/aws/requests/storage/put_bucket_logging.rb +80 -0
  1035. data/lib/fog/aws/requests/storage/put_bucket_notification.rb +83 -0
  1036. data/lib/fog/aws/requests/storage/put_bucket_policy.rb +25 -0
  1037. data/lib/fog/aws/requests/storage/put_bucket_tagging.rb +55 -0
  1038. data/lib/fog/aws/requests/storage/put_bucket_versioning.rb +74 -0
  1039. data/lib/fog/aws/requests/storage/put_bucket_website.rb +87 -0
  1040. data/lib/fog/aws/requests/storage/put_object.rb +87 -0
  1041. data/lib/fog/aws/requests/storage/put_object_acl.rb +78 -0
  1042. data/lib/fog/aws/requests/storage/put_object_url.rb +41 -0
  1043. data/lib/fog/aws/requests/storage/put_request_payment.rb +45 -0
  1044. data/lib/fog/aws/requests/storage/shared_mock_methods.rb +87 -0
  1045. data/lib/fog/aws/requests/storage/sync_clock.rb +24 -0
  1046. data/lib/fog/aws/requests/storage/upload_part.rb +57 -0
  1047. data/lib/fog/aws/requests/sts/assume_role.rb +44 -0
  1048. data/lib/fog/aws/requests/sts/assume_role_with_saml.rb +44 -0
  1049. data/lib/fog/aws/requests/sts/get_federation_token.rb +62 -0
  1050. data/lib/fog/aws/requests/sts/get_session_token.rb +18 -0
  1051. data/lib/fog/aws/ses.rb +141 -0
  1052. data/lib/fog/aws/signaturev4.rb +119 -0
  1053. data/lib/fog/aws/simpledb.rb +211 -0
  1054. data/lib/fog/aws/sns.rb +156 -0
  1055. data/lib/fog/aws/sqs.rb +164 -0
  1056. data/lib/fog/aws/storage.rb +690 -0
  1057. data/lib/fog/aws/sts.rb +185 -0
  1058. data/lib/fog/aws/version.rb +5 -0
  1059. data/tests/credentials_tests.rb +55 -0
  1060. data/tests/helper.rb +28 -0
  1061. data/tests/helpers/collection_helper.rb +97 -0
  1062. data/tests/helpers/compute/flavors_helper.rb +32 -0
  1063. data/tests/helpers/compute/server_helper.rb +25 -0
  1064. data/tests/helpers/compute/servers_helper.rb +10 -0
  1065. data/tests/helpers/dns_helper.rb +55 -0
  1066. data/tests/helpers/formats_helper.rb +98 -0
  1067. data/tests/helpers/formats_helper_tests.rb +110 -0
  1068. data/tests/helpers/mock_helper.rb +110 -0
  1069. data/tests/helpers/model_helper.rb +31 -0
  1070. data/tests/helpers/responds_to_helper.rb +11 -0
  1071. data/tests/helpers/schema_validator_tests.rb +107 -0
  1072. data/tests/helpers/succeeds_helper.rb +9 -0
  1073. data/tests/lorem.txt +1 -0
  1074. data/tests/models/auto_scaling/activities_tests.rb +6 -0
  1075. data/tests/models/auto_scaling/configuration_test.rb +13 -0
  1076. data/tests/models/auto_scaling/configurations_tests.rb +11 -0
  1077. data/tests/models/auto_scaling/groups_test.rb +27 -0
  1078. data/tests/models/auto_scaling/helper.rb +0 -0
  1079. data/tests/models/auto_scaling/instance_tests.rb +15 -0
  1080. data/tests/models/auto_scaling/instances_tests.rb +6 -0
  1081. data/tests/models/beanstalk/application_tests.rb +69 -0
  1082. data/tests/models/beanstalk/applications_tests.rb +7 -0
  1083. data/tests/models/beanstalk/environment_tests.rb +131 -0
  1084. data/tests/models/beanstalk/environments_tests.rb +34 -0
  1085. data/tests/models/beanstalk/template_tests.rb +47 -0
  1086. data/tests/models/beanstalk/templates_tests.rb +62 -0
  1087. data/tests/models/beanstalk/version_tests.rb +66 -0
  1088. data/tests/models/beanstalk/versions_tests.rb +60 -0
  1089. data/tests/models/cdn/distribution_tests.rb +15 -0
  1090. data/tests/models/cdn/distributions_tests.rb +15 -0
  1091. data/tests/models/cdn/invalidation_tests.rb +31 -0
  1092. data/tests/models/cdn/invalidations_tests.rb +14 -0
  1093. data/tests/models/cdn/streaming_distribution_tests.rb +15 -0
  1094. data/tests/models/cdn/streaming_distributions_tests.rb +15 -0
  1095. data/tests/models/cloud_watch/alarm_data_tests.rb +42 -0
  1096. data/tests/models/cloud_watch/alarm_history_tests.rb +22 -0
  1097. data/tests/models/cloud_watch/metric_statistics_tests.rb +51 -0
  1098. data/tests/models/cloud_watch/metrics_tests.rb +32 -0
  1099. data/tests/models/compute/address_tests.rb +24 -0
  1100. data/tests/models/compute/addresses_tests.rb +5 -0
  1101. data/tests/models/compute/dhcp_option_tests.rb +3 -0
  1102. data/tests/models/compute/dhcp_options_tests.rb +3 -0
  1103. data/tests/models/compute/internet_gateway_tests.rb +3 -0
  1104. data/tests/models/compute/internet_gateways_tests.rb +3 -0
  1105. data/tests/models/compute/key_pair_tests.rb +26 -0
  1106. data/tests/models/compute/key_pairs_tests.rb +5 -0
  1107. data/tests/models/compute/network_acl_tests.rb +109 -0
  1108. data/tests/models/compute/network_acls_tests.rb +20 -0
  1109. data/tests/models/compute/network_interfaces_test.rb +12 -0
  1110. data/tests/models/compute/security_group_tests.rb +64 -0
  1111. data/tests/models/compute/security_groups_tests.rb +5 -0
  1112. data/tests/models/compute/server_tests.rb +83 -0
  1113. data/tests/models/compute/snapshot_tests.rb +10 -0
  1114. data/tests/models/compute/snapshots_tests.rb +10 -0
  1115. data/tests/models/compute/subnet_tests.rb +5 -0
  1116. data/tests/models/compute/subnets_tests.rb +5 -0
  1117. data/tests/models/compute/volume_tests.rb +43 -0
  1118. data/tests/models/compute/volumes_tests.rb +5 -0
  1119. data/tests/models/compute/vpc_tests.rb +4 -0
  1120. data/tests/models/compute/vpcs_tests.rb +19 -0
  1121. data/tests/models/data_pipeline/pipeline_tests.rb +8 -0
  1122. data/tests/models/data_pipeline/pipelines_tests.rb +8 -0
  1123. data/tests/models/dns/record_tests.rb +33 -0
  1124. data/tests/models/dns/records_tests.rb +41 -0
  1125. data/tests/models/dns/zone_tests.rb +4 -0
  1126. data/tests/models/dns/zones_tests.rb +4 -0
  1127. data/tests/models/elasticache/cluster_tests.rb +30 -0
  1128. data/tests/models/elasticache/parameter_groups_tests.rb +15 -0
  1129. data/tests/models/elasticache/security_groups_tests.rb +52 -0
  1130. data/tests/models/elasticache/subnet_groups_tests.rb +44 -0
  1131. data/tests/models/elb/model_tests.rb +360 -0
  1132. data/tests/models/elb/tagging_tests.rb +15 -0
  1133. data/tests/models/glacier/model_tests.rb +47 -0
  1134. data/tests/models/iam/access_keys_tests.rb +53 -0
  1135. data/tests/models/iam/policies_tests.rb +57 -0
  1136. data/tests/models/iam/roles_tests.rb +63 -0
  1137. data/tests/models/iam/users_tests.rb +71 -0
  1138. data/tests/models/rds/event_subscription_tests.rb +9 -0
  1139. data/tests/models/rds/event_subscriptions_tests.rb +6 -0
  1140. data/tests/models/rds/helper.rb +5 -0
  1141. data/tests/models/rds/instance_option_tests.rb +14 -0
  1142. data/tests/models/rds/parameter_group_tests.rb +24 -0
  1143. data/tests/models/rds/parameter_groups_tests.rb +8 -0
  1144. data/tests/models/rds/security_group_tests.rb +53 -0
  1145. data/tests/models/rds/security_groups_tests.rb +5 -0
  1146. data/tests/models/rds/server_tests.rb +110 -0
  1147. data/tests/models/rds/servers_tests.rb +6 -0
  1148. data/tests/models/rds/snapshot_tests.rb +12 -0
  1149. data/tests/models/rds/snapshots_tests.rb +12 -0
  1150. data/tests/models/rds/tagging_tests.rb +20 -0
  1151. data/tests/models/sns/topic_tests.rb +15 -0
  1152. data/tests/models/sns/topics_tests.rb +6 -0
  1153. data/tests/models/storage/directory_tests.rb +87 -0
  1154. data/tests/models/storage/file_tests.rb +92 -0
  1155. data/tests/models/storage/files_tests.rb +58 -0
  1156. data/tests/models/storage/url_tests.rb +26 -0
  1157. data/tests/models/storage/version_tests.rb +52 -0
  1158. data/tests/models/storage/versions_tests.rb +56 -0
  1159. data/tests/parsers/elb/describe_load_balancers.rb +65 -0
  1160. data/tests/requests/auto_scaling/auto_scaling_tests.rb +77 -0
  1161. data/tests/requests/auto_scaling/describe_types_tests.rb +102 -0
  1162. data/tests/requests/auto_scaling/helper.rb +228 -0
  1163. data/tests/requests/auto_scaling/model_tests.rb +233 -0
  1164. data/tests/requests/auto_scaling/notification_configuration_tests.rb +124 -0
  1165. data/tests/requests/auto_scaling/tag_tests.rb +63 -0
  1166. data/tests/requests/beanstalk/application_tests.rb +140 -0
  1167. data/tests/requests/beanstalk/solution_stack_tests.rb +22 -0
  1168. data/tests/requests/cdn/cdn_tests.rb +252 -0
  1169. data/tests/requests/cloud_formation/stack_tests.rb +167 -0
  1170. data/tests/requests/cloud_watch/get_metric_statistics_tests.rb +28 -0
  1171. data/tests/requests/cloud_watch/list_metrics_test.rb +64 -0
  1172. data/tests/requests/cloud_watch/put_metric_data_tests.rb +36 -0
  1173. data/tests/requests/compute/address_tests.rb +108 -0
  1174. data/tests/requests/compute/assign_private_ip_tests.rb +55 -0
  1175. data/tests/requests/compute/availability_zone_tests.rb +25 -0
  1176. data/tests/requests/compute/client_tests.rb +25 -0
  1177. data/tests/requests/compute/dhcp_options_tests.rb +39 -0
  1178. data/tests/requests/compute/helper.rb +10 -0
  1179. data/tests/requests/compute/image_tests.rb +158 -0
  1180. data/tests/requests/compute/instance_tests.rb +297 -0
  1181. data/tests/requests/compute/internet_gateway_tests.rb +49 -0
  1182. data/tests/requests/compute/key_pair_tests.rb +67 -0
  1183. data/tests/requests/compute/network_acl_tests.rb +112 -0
  1184. data/tests/requests/compute/network_interface_tests.rb +250 -0
  1185. data/tests/requests/compute/placement_group_tests.rb +48 -0
  1186. data/tests/requests/compute/region_tests.rb +52 -0
  1187. data/tests/requests/compute/route_tests.rb +339 -0
  1188. data/tests/requests/compute/security_group_tests.rb +437 -0
  1189. data/tests/requests/compute/snapshot_tests.rb +77 -0
  1190. data/tests/requests/compute/spot_datafeed_subscription_tests.rb +47 -0
  1191. data/tests/requests/compute/spot_instance_tests.rb +57 -0
  1192. data/tests/requests/compute/spot_price_history_tests.rb +24 -0
  1193. data/tests/requests/compute/subnet_tests.rb +85 -0
  1194. data/tests/requests/compute/tag_tests.rb +101 -0
  1195. data/tests/requests/compute/volume_tests.rb +206 -0
  1196. data/tests/requests/compute/vpc_tests.rb +111 -0
  1197. data/tests/requests/data_pipeline/helper.rb +72 -0
  1198. data/tests/requests/data_pipeline/pipeline_tests.rb +78 -0
  1199. data/tests/requests/dns/dns_tests.rb +257 -0
  1200. data/tests/requests/dns/health_check_tests.rb +159 -0
  1201. data/tests/requests/dns/helper.rb +21 -0
  1202. data/tests/requests/dynamodb/item_tests.rb +137 -0
  1203. data/tests/requests/dynamodb/table_tests.rb +99 -0
  1204. data/tests/requests/elasticache/cache_cluster_tests.rb +137 -0
  1205. data/tests/requests/elasticache/describe_events.rb +17 -0
  1206. data/tests/requests/elasticache/describe_reserved_cache_nodes.rb +17 -0
  1207. data/tests/requests/elasticache/helper.rb +103 -0
  1208. data/tests/requests/elasticache/parameter_group_tests.rb +105 -0
  1209. data/tests/requests/elasticache/security_group_tests.rb +108 -0
  1210. data/tests/requests/elasticache/subnet_group_tests.rb +52 -0
  1211. data/tests/requests/elb/helper.rb +91 -0
  1212. data/tests/requests/elb/listener_tests.rb +68 -0
  1213. data/tests/requests/elb/load_balancer_tests.rb +89 -0
  1214. data/tests/requests/elb/policy_tests.rb +132 -0
  1215. data/tests/requests/emr/helper.rb +168 -0
  1216. data/tests/requests/emr/instance_group_tests.rb +106 -0
  1217. data/tests/requests/emr/job_flow_tests.rb +88 -0
  1218. data/tests/requests/glacier/archive_tests.rb +13 -0
  1219. data/tests/requests/glacier/multipart_upload_tests.rb +29 -0
  1220. data/tests/requests/glacier/tree_hash_tests.rb +62 -0
  1221. data/tests/requests/glacier/vault_tests.rb +35 -0
  1222. data/tests/requests/iam/access_key_tests.rb +53 -0
  1223. data/tests/requests/iam/account_policy_tests.rb +20 -0
  1224. data/tests/requests/iam/account_tests.rb +34 -0
  1225. data/tests/requests/iam/group_policy_tests.rb +48 -0
  1226. data/tests/requests/iam/group_tests.rb +44 -0
  1227. data/tests/requests/iam/helper.rb +102 -0
  1228. data/tests/requests/iam/login_profile_tests.rb +62 -0
  1229. data/tests/requests/iam/mfa_tests.rb +23 -0
  1230. data/tests/requests/iam/role_tests.rb +167 -0
  1231. data/tests/requests/iam/server_certificate_tests.rb +130 -0
  1232. data/tests/requests/iam/user_policy_tests.rb +45 -0
  1233. data/tests/requests/iam/user_tests.rb +77 -0
  1234. data/tests/requests/rds/describe_events.rb +16 -0
  1235. data/tests/requests/rds/event_subscription_tests.rb +30 -0
  1236. data/tests/requests/rds/helper.rb +296 -0
  1237. data/tests/requests/rds/instance_option_tests.rb +21 -0
  1238. data/tests/requests/rds/instance_tests.rb +133 -0
  1239. data/tests/requests/rds/log_file_tests.rb +19 -0
  1240. data/tests/requests/rds/parameter_group_tests.rb +62 -0
  1241. data/tests/requests/rds/parameter_request_tests.rb +34 -0
  1242. data/tests/requests/rds/security_group_tests.rb +101 -0
  1243. data/tests/requests/rds/subnet_groups_tests.rb +52 -0
  1244. data/tests/requests/rds/tagging_tests.rb +78 -0
  1245. data/tests/requests/redshift/cluster_parameter_group_tests.rb +76 -0
  1246. data/tests/requests/redshift/cluster_security_group_tests.rb +42 -0
  1247. data/tests/requests/redshift/cluster_snapshot_tests.rb +73 -0
  1248. data/tests/requests/redshift/cluster_tests.rb +80 -0
  1249. data/tests/requests/ses/helper.rb +9 -0
  1250. data/tests/requests/ses/verified_domain_identity_tests.rb +16 -0
  1251. data/tests/requests/ses/verified_email_address_tests.rb +27 -0
  1252. data/tests/requests/simpledb/attributes_tests.rb +86 -0
  1253. data/tests/requests/simpledb/domain_tests.rb +51 -0
  1254. data/tests/requests/simpledb/helper.rb +10 -0
  1255. data/tests/requests/sns/helper.rb +9 -0
  1256. data/tests/requests/sns/subscription_tests.rb +86 -0
  1257. data/tests/requests/sns/topic_tests.rb +45 -0
  1258. data/tests/requests/sqs/helper.rb +9 -0
  1259. data/tests/requests/sqs/message_tests.rb +51 -0
  1260. data/tests/requests/sqs/queue_tests.rb +50 -0
  1261. data/tests/requests/storage/acl_utils_tests.rb +209 -0
  1262. data/tests/requests/storage/bucket_tests.rb +399 -0
  1263. data/tests/requests/storage/cors_utils_tests.rb +108 -0
  1264. data/tests/requests/storage/delete_multiple_objects_tests.rb +12 -0
  1265. data/tests/requests/storage/multipart_upload_tests.rb +121 -0
  1266. data/tests/requests/storage/object_tests.rb +189 -0
  1267. data/tests/requests/storage/versioning_tests.rb +258 -0
  1268. data/tests/requests/sts/assume_role_tests.rb +19 -0
  1269. data/tests/requests/sts/assume_role_with_saml_tests.rb +18 -0
  1270. data/tests/requests/sts/get_federation_token_tests.rb +20 -0
  1271. data/tests/requests/sts/session_token_tests.rb +16 -0
  1272. data/tests/signaturev4_tests.rb +88 -0
  1273. data/tests/signed_params_tests.rb +17 -0
  1274. data/tests/storage_tests.rb +7 -0
  1275. metadata +1420 -0
@@ -0,0 +1,126 @@
1
+ require 'fog/core/model'
2
+ require 'fog/aws/models/storage/files'
3
+ require 'fog/aws/models/storage/versions'
4
+
5
+ module Fog
6
+ module Storage
7
+ class AWS
8
+ class Directory < Fog::Model
9
+ VALID_ACLS = ['private', 'public-read', 'public-read-write', 'authenticated-read']
10
+
11
+ attr_reader :acl
12
+
13
+ identity :key, :aliases => ['Name', 'name']
14
+
15
+ attribute :creation_date, :aliases => 'CreationDate', :type => 'time'
16
+ attribute :location, :aliases => 'LocationConstraint', :type => 'string'
17
+
18
+ def acl=(new_acl)
19
+ unless VALID_ACLS.include?(new_acl)
20
+ raise ArgumentError.new("acl must be one of [#{VALID_ACLS.join(', ')}]")
21
+ else
22
+ @acl = new_acl
23
+ end
24
+ end
25
+
26
+ def destroy
27
+ requires :key
28
+ service.delete_bucket(key)
29
+ true
30
+ rescue Excon::Errors::NotFound
31
+ false
32
+ end
33
+
34
+ def location
35
+ @location ||= (bucket_location || self.service.region)
36
+ end
37
+
38
+ # NOTE: you can't change the region once the bucket is created
39
+ def location=(new_location)
40
+ @location = new_location
41
+ end
42
+
43
+ def files
44
+ @files ||= Fog::Storage::AWS::Files.new(:directory => self, :service => service)
45
+ end
46
+
47
+ def payer
48
+ requires :key
49
+ data = service.get_request_payment(key)
50
+ data.body['Payer']
51
+ end
52
+
53
+ def payer=(new_payer)
54
+ requires :key
55
+ service.put_request_payment(key, new_payer)
56
+ @payer = new_payer
57
+ end
58
+
59
+ def versioning?
60
+ requires :key
61
+ data = service.get_bucket_versioning(key)
62
+ data.body['VersioningConfiguration']['Status'] == 'Enabled'
63
+ end
64
+
65
+ def versioning=(new_versioning)
66
+ requires :key
67
+ service.put_bucket_versioning(key, new_versioning ? 'Enabled' : 'Suspended')
68
+ end
69
+
70
+ def versions
71
+ @versions ||= Fog::Storage::AWS::Versions.new(:directory => self, :service => service)
72
+ end
73
+
74
+ def public=(new_public)
75
+ self.acl = new_public ? 'public-read' : 'private'
76
+ new_public
77
+ end
78
+
79
+ def public_url
80
+ requires :key
81
+ if service.get_bucket_acl(key).body['AccessControlList'].find {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}
82
+ service.request_url(
83
+ :bucket_name => key
84
+ )
85
+ else
86
+ nil
87
+ end
88
+ end
89
+
90
+ def save
91
+ requires :key
92
+
93
+ options = {}
94
+
95
+ options['x-amz-acl'] = acl if acl
96
+
97
+ # http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUT.html
98
+ # Ignore the default region us-east-1
99
+ if !persisted? && location != DEFAULT_REGION
100
+ options['LocationConstraint'] = location
101
+ end
102
+
103
+ service.put_bucket(key, options)
104
+ attributes[:is_persisted] = true
105
+
106
+ true
107
+ end
108
+
109
+ def persisted?
110
+ # is_persisted is true in case of directories.get or after #save
111
+ # creation_date is set in case of directories.all
112
+ attributes[:is_persisted] || !!attributes[:creation_date]
113
+ end
114
+
115
+ private
116
+
117
+ def bucket_location
118
+ requires :key
119
+ return nil unless persisted?
120
+ data = service.get_bucket_location(key)
121
+ data.body['LocationConstraint']
122
+ end
123
+ end
124
+ end
125
+ end
126
+ end
@@ -0,0 +1,280 @@
1
+ require 'fog/core/model'
2
+ require 'fog/aws/models/storage/versions'
3
+
4
+ module Fog
5
+ module Storage
6
+ class AWS
7
+ class File < Fog::Model
8
+ # @see AWS Object docs http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectOps.html
9
+
10
+ identity :key, :aliases => 'Key'
11
+
12
+ attr_writer :body
13
+ attribute :cache_control, :aliases => 'Cache-Control'
14
+ attribute :content_disposition, :aliases => 'Content-Disposition'
15
+ attribute :content_encoding, :aliases => 'Content-Encoding'
16
+ attribute :content_length, :aliases => ['Content-Length', 'Size'], :type => :integer
17
+ attribute :content_md5, :aliases => 'Content-MD5'
18
+ attribute :content_type, :aliases => 'Content-Type'
19
+ attribute :etag, :aliases => ['Etag', 'ETag']
20
+ attribute :expires, :aliases => 'Expires'
21
+ attribute :last_modified, :aliases => ['Last-Modified', 'LastModified']
22
+ attribute :metadata
23
+ attribute :owner, :aliases => 'Owner'
24
+ attribute :storage_class, :aliases => ['x-amz-storage-class', 'StorageClass']
25
+ attribute :encryption, :aliases => 'x-amz-server-side-encryption'
26
+ attribute :version, :aliases => 'x-amz-version-id'
27
+
28
+ # @note Chunk size to use for multipart uploads.
29
+ # Use small chunk sizes to minimize memory. E.g. 5242880 = 5mb
30
+ attr_accessor :multipart_chunk_size
31
+
32
+ def acl
33
+ requires :directory, :key
34
+ service.get_object_acl(directory.key, key).body['AccessControlList']
35
+ end
36
+
37
+ # Set file's access control list (ACL).
38
+ #
39
+ # valid acls: private, public-read, public-read-write, authenticated-read, bucket-owner-read, bucket-owner-full-control
40
+ #
41
+ # @param [String] new_acl one of valid options
42
+ # @return [String] @acl
43
+ #
44
+ def acl=(new_acl)
45
+ valid_acls = ['private', 'public-read', 'public-read-write', 'authenticated-read', 'bucket-owner-read', 'bucket-owner-full-control']
46
+ unless valid_acls.include?(new_acl)
47
+ raise ArgumentError.new("acl must be one of [#{valid_acls.join(', ')}]")
48
+ end
49
+ @acl = new_acl
50
+ end
51
+
52
+ # Get file's body if exists, else ' '.
53
+ #
54
+ # @return [File]
55
+ #
56
+ def body
57
+ attributes[:body] ||= if last_modified && (file = collection.get(identity))
58
+ file.body
59
+ else
60
+ ''
61
+ end
62
+ end
63
+
64
+ # Set body attribute.
65
+ #
66
+ # @param [File] new_body
67
+ # @return [File] attributes[:body]
68
+ #
69
+ def body=(new_body)
70
+ attributes[:body] = new_body
71
+ end
72
+
73
+ # Get the file instance's directory.
74
+ #
75
+ # @return [Fog::AWS::Storage::Directory]
76
+ #
77
+ def directory
78
+ @directory
79
+ end
80
+
81
+ # Copy object from one bucket to other bucket.
82
+ #
83
+ # required attributes: directory, key
84
+ #
85
+ # @param target_directory_key [String]
86
+ # @param target_file_key [String]
87
+ # @param options [Hash] options for copy_object method
88
+ # @return [String] Fog::AWS::Files#head status of directory contents
89
+ #
90
+ def copy(target_directory_key, target_file_key, options = {})
91
+ requires :directory, :key
92
+ service.copy_object(directory.key, key, target_directory_key, target_file_key, options)
93
+ target_directory = service.directories.new(:key => target_directory_key)
94
+ target_directory.files.head(target_file_key)
95
+ end
96
+
97
+ # Destroy file via http DELETE.
98
+ #
99
+ # required attributes: directory, key
100
+ #
101
+ # @param options [Hash]
102
+ # @option options versionId []
103
+ # @return [Boolean] true if successful
104
+ #
105
+ def destroy(options = {})
106
+ requires :directory, :key
107
+ attributes[:body] = nil if options['versionId'] == version
108
+ service.delete_object(directory.key, key, options)
109
+ true
110
+ end
111
+
112
+ remove_method :metadata
113
+ def metadata
114
+ attributes.reject {|key, value| !(key.to_s =~ /^x-amz-/)}
115
+ end
116
+
117
+ remove_method :metadata=
118
+ def metadata=(new_metadata)
119
+ merge_attributes(new_metadata)
120
+ end
121
+
122
+ remove_method :owner=
123
+ def owner=(new_owner)
124
+ if new_owner
125
+ attributes[:owner] = {
126
+ :display_name => new_owner['DisplayName'] || new_owner[:display_name],
127
+ :id => new_owner['ID'] || new_owner[:id]
128
+ }
129
+ end
130
+ end
131
+
132
+ def public?
133
+ acl.any? {|grant| grant['Grantee']['URI'] == 'http://acs.amazonaws.com/groups/global/AllUsers' && grant['Permission'] == 'READ'}
134
+ end
135
+
136
+ # Set Access-Control-List permissions.
137
+ #
138
+ # valid new_publics: public_read, private
139
+ #
140
+ # @param [String] new_public
141
+ # @return [String] new_public
142
+ #
143
+ def public=(new_public)
144
+ if new_public
145
+ @acl = 'public-read'
146
+ else
147
+ @acl = 'private'
148
+ end
149
+ new_public
150
+ end
151
+
152
+ # Get publicly accessible url via http GET.
153
+ # Checks permissions before creating.
154
+ # Defaults to s3 subdomain or compliant bucket name
155
+ #
156
+ # required attributes: directory, key
157
+ #
158
+ # @return [String] public url
159
+ #
160
+ def public_url
161
+ requires :directory, :key
162
+ if public?
163
+ service.request_url(
164
+ :bucket_name => directory.key,
165
+ :object_name => key
166
+ )
167
+ else
168
+ nil
169
+ end
170
+ end
171
+
172
+ # Save file with body as contents to directory.key with name key via http PUT
173
+ #
174
+ # required attributes: body, directory, key
175
+ #
176
+ # @param [Hash] options
177
+ # @option options [String] acl sets x-amz-acl HTTP header. Valid values include, private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control
178
+ # @option options [String] cache_control sets Cache-Control header. For example, 'No-cache'
179
+ # @option options [String] content_disposition sets Content-Disposition HTTP header. For exampple, 'attachment; filename=testing.txt'
180
+ # @option options [String] content_encoding sets Content-Encoding HTTP header. For example, 'x-gzip'
181
+ # @option options [String] content_md5 sets Content-MD5. For example, '79054025255fb1a26e4bc422aef54eb4'
182
+ # @option options [String] content_type Content-Type. For example, 'text/plain'
183
+ # @option options [String] expires sets number of seconds before AWS Object expires.
184
+ # @option options [String] storage_class sets x-amz-storage-class HTTP header. Defaults to 'STANDARD'. Or, 'REDUCED_REDUNDANCY'
185
+ # @option options [String] encryption sets HTTP encryption header. Set to 'AES256' to encrypt files at rest on S3
186
+ # @return [Boolean] true if no errors
187
+ #
188
+ def save(options = {})
189
+ requires :body, :directory, :key
190
+ if options != {}
191
+ Fog::Logger.deprecation("options param is deprecated, use acl= instead [light_black](#{caller.first})[/]")
192
+ end
193
+ options['x-amz-acl'] ||= @acl if @acl
194
+ options['Cache-Control'] = cache_control if cache_control
195
+ options['Content-Disposition'] = content_disposition if content_disposition
196
+ options['Content-Encoding'] = content_encoding if content_encoding
197
+ options['Content-MD5'] = content_md5 if content_md5
198
+ options['Content-Type'] = content_type if content_type
199
+ options['Expires'] = expires if expires
200
+ options.merge!(metadata)
201
+ options['x-amz-storage-class'] = storage_class if storage_class
202
+ options['x-amz-server-side-encryption'] = encryption if encryption
203
+
204
+ if multipart_chunk_size && body.respond_to?(:read)
205
+ data = multipart_save(options)
206
+ merge_attributes(data.body)
207
+ else
208
+ data = service.put_object(directory.key, key, body, options)
209
+ merge_attributes(data.headers.reject {|key, value| ['Content-Length', 'Content-Type'].include?(key)})
210
+ end
211
+ self.etag.gsub!('"','')
212
+ self.content_length = Fog::Storage.get_body_size(body)
213
+ self.content_type ||= Fog::Storage.get_content_type(body)
214
+ true
215
+ end
216
+
217
+ # Get a url for file.
218
+ #
219
+ # required attributes: key
220
+ #
221
+ # @param expires [String] number of seconds (since 1970-01-01 00:00) before url expires
222
+ # @param options [Hash]
223
+ # @return [String] url
224
+ #
225
+ def url(expires, options = {})
226
+ requires :key
227
+ collection.get_url(key, expires, options)
228
+ end
229
+
230
+ # File version if exists or creates new version.
231
+ # @return [Fog::Storage::AWS::Version]
232
+ #
233
+ def versions
234
+ @versions ||= begin
235
+ Fog::Storage::AWS::Versions.new(
236
+ :file => self,
237
+ :service => service
238
+ )
239
+ end
240
+ end
241
+
242
+ private
243
+
244
+ def directory=(new_directory)
245
+ @directory = new_directory
246
+ end
247
+
248
+ def multipart_save(options)
249
+ # Initiate the upload
250
+ res = service.initiate_multipart_upload(directory.key, key, options)
251
+ upload_id = res.body["UploadId"]
252
+
253
+ # Store ETags of upload parts
254
+ part_tags = []
255
+
256
+ # Upload each part
257
+ # TODO: optionally upload chunks in parallel using threads
258
+ # (may cause network performance problems with many small chunks)
259
+ # TODO: Support large chunk sizes without reading the chunk into memory
260
+ if body.respond_to?(:rewind)
261
+ body.rewind rescue nil
262
+ end
263
+ while (chunk = body.read(multipart_chunk_size)) do
264
+ md5 = Base64.encode64(Digest::MD5.digest(chunk)).strip
265
+ part_upload = service.upload_part(directory.key, key, upload_id, part_tags.size + 1, chunk, 'Content-MD5' => md5 )
266
+ part_tags << part_upload.headers["ETag"]
267
+ end
268
+
269
+ rescue
270
+ # Abort the upload & reraise
271
+ service.abort_multipart_upload(directory.key, key, upload_id) if upload_id
272
+ raise
273
+ else
274
+ # Complete the upload
275
+ service.complete_multipart_upload(directory.key, key, upload_id, part_tags)
276
+ end
277
+ end
278
+ end
279
+ end
280
+ end
@@ -0,0 +1,119 @@
1
+ require 'fog/core/collection'
2
+ require 'fog/aws/models/storage/file'
3
+
4
+ module Fog
5
+ module Storage
6
+ class AWS
7
+ class Files < Fog::Collection
8
+ extend Fog::Deprecation
9
+ deprecate :get_url, :get_https_url
10
+
11
+ attribute :common_prefixes, :aliases => 'CommonPrefixes'
12
+ attribute :delimiter, :aliases => 'Delimiter'
13
+ attribute :directory
14
+ attribute :is_truncated, :aliases => 'IsTruncated'
15
+ attribute :marker, :aliases => 'Marker'
16
+ attribute :max_keys, :aliases => ['MaxKeys', 'max-keys']
17
+ attribute :prefix, :aliases => 'Prefix'
18
+
19
+ model Fog::Storage::AWS::File
20
+
21
+ def all(options = {})
22
+ requires :directory
23
+ options = {
24
+ 'delimiter' => delimiter,
25
+ 'marker' => marker,
26
+ 'max-keys' => max_keys,
27
+ 'prefix' => prefix
28
+ }.merge!(options)
29
+ options = options.reject {|key,value| value.nil? || value.to_s.empty?}
30
+ merge_attributes(options)
31
+ parent = directory.collection.get(
32
+ directory.key,
33
+ options
34
+ )
35
+ if parent
36
+ merge_attributes(parent.files.attributes)
37
+ load(parent.files.map {|file| file.attributes})
38
+ else
39
+ nil
40
+ end
41
+ end
42
+
43
+ alias_method :each_file_this_page, :each
44
+ def each
45
+ if !block_given?
46
+ self
47
+ else
48
+ subset = dup.all
49
+
50
+ subset.each_file_this_page {|f| yield f}
51
+ while subset.is_truncated
52
+ subset = subset.all(:marker => subset.last.key)
53
+ subset.each_file_this_page {|f| yield f}
54
+ end
55
+
56
+ self
57
+ end
58
+ end
59
+
60
+ def get(key, options = {}, &block)
61
+ requires :directory
62
+ data = service.get_object(directory.key, key, options, &block)
63
+ normalize_headers(data)
64
+ file_data = data.headers.merge({
65
+ :body => data.body,
66
+ :key => key
67
+ })
68
+ new(file_data)
69
+ rescue Excon::Errors::NotFound => error
70
+ case error.response.body
71
+ when /<Code>NoSuchKey<\/Code>/
72
+ nil
73
+ when /<Code>NoSuchBucket<\/Code>/
74
+ raise(Fog::Storage::AWS::NotFound.new("Directory #{directory.identity} does not exist."))
75
+ else
76
+ raise(error)
77
+ end
78
+ end
79
+
80
+ def get_url(key, expires, options = {})
81
+ requires :directory
82
+ service.get_object_url(directory.key, key, expires, options)
83
+ end
84
+
85
+ def get_http_url(key, expires, options = {})
86
+ requires :directory
87
+ service.get_object_http_url(directory.key, key, expires, options)
88
+ end
89
+
90
+ def get_https_url(key, expires, options = {})
91
+ requires :directory
92
+ service.get_object_https_url(directory.key, key, expires, options)
93
+ end
94
+
95
+ def head(key, options = {})
96
+ requires :directory
97
+ data = service.head_object(directory.key, key, options)
98
+ normalize_headers(data)
99
+ file_data = data.headers.merge({
100
+ :key => key
101
+ })
102
+ new(file_data)
103
+ rescue Excon::Errors::NotFound
104
+ nil
105
+ end
106
+
107
+ def new(attributes = {})
108
+ requires :directory
109
+ super({ :directory => directory }.merge!(attributes))
110
+ end
111
+
112
+ def normalize_headers(data)
113
+ data.headers['Last-Modified'] = Time.parse(data.get_header('Last-Modified'))
114
+ data.headers['ETag'] = data.get_header('ETag').gsub('"','')
115
+ end
116
+ end
117
+ end
118
+ end
119
+ end