fog-aws 1.4.1 → 3.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (761) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +17 -603
  3. data/CONTRIBUTING.md +6 -6
  4. data/CONTRIBUTORS.md +104 -1
  5. data/LICENSE.md +1 -1
  6. data/README.md +121 -7
  7. data/fog-aws.gemspec +16 -10
  8. data/lib/fog/aws/auto_scaling.rb +2 -1
  9. data/lib/fog/aws/beanstalk.rb +1 -1
  10. data/lib/fog/aws/cdn.rb +16 -3
  11. data/lib/fog/aws/cloud_formation.rb +1 -1
  12. data/lib/fog/aws/cloud_watch.rb +1 -1
  13. data/lib/fog/aws/compute.rb +119 -19
  14. data/lib/fog/aws/credential_fetcher.rb +93 -9
  15. data/lib/fog/aws/data_pipeline.rb +1 -1
  16. data/lib/fog/aws/dns.rb +155 -6
  17. data/lib/fog/aws/dynamodb.rb +1 -1
  18. data/lib/fog/aws/ecs.rb +1 -1
  19. data/lib/fog/aws/efs.rb +1 -1
  20. data/lib/fog/aws/elasticache.rb +6 -4
  21. data/lib/fog/aws/elb.rb +3 -2
  22. data/lib/fog/aws/elbv2.rb +72 -0
  23. data/lib/fog/aws/emr.rb +1 -1
  24. data/lib/fog/aws/glacier.rb +84 -22
  25. data/lib/fog/aws/iam.rb +1 -1
  26. data/lib/fog/aws/kinesis.rb +24 -16
  27. data/lib/fog/aws/kms.rb +1 -1
  28. data/lib/fog/aws/lambda.rb +1 -1
  29. data/lib/fog/aws/mock.rb +8 -0
  30. data/lib/fog/aws/models/auto_scaling/group.rb +10 -0
  31. data/lib/fog/aws/models/cdn/distribution.rb +4 -4
  32. data/lib/fog/aws/models/cdn/distribution_helper.rb +2 -2
  33. data/lib/fog/aws/models/cdn/distributions.rb +4 -4
  34. data/lib/fog/aws/models/cdn/distributions_helper.rb +2 -2
  35. data/lib/fog/aws/models/cdn/invalidation.rb +2 -2
  36. data/lib/fog/aws/models/cdn/invalidations.rb +3 -3
  37. data/lib/fog/aws/models/cdn/streaming_distribution.rb +3 -3
  38. data/lib/fog/aws/models/cdn/streaming_distributions.rb +4 -4
  39. data/lib/fog/aws/models/compute/address.rb +4 -2
  40. data/lib/fog/aws/models/compute/addresses.rb +3 -3
  41. data/lib/fog/aws/models/compute/dhcp_option.rb +3 -3
  42. data/lib/fog/aws/models/compute/dhcp_options.rb +7 -7
  43. data/lib/fog/aws/models/compute/flavor.rb +2 -2
  44. data/lib/fog/aws/models/compute/flavors.rb +4265 -363
  45. data/lib/fog/aws/models/compute/image.rb +2 -2
  46. data/lib/fog/aws/models/compute/images.rb +3 -3
  47. data/lib/fog/aws/models/compute/internet_gateway.rb +2 -2
  48. data/lib/fog/aws/models/compute/internet_gateways.rb +7 -7
  49. data/lib/fog/aws/models/compute/key_pair.rb +2 -2
  50. data/lib/fog/aws/models/compute/key_pairs.rb +3 -3
  51. data/lib/fog/aws/models/compute/network_acl.rb +4 -4
  52. data/lib/fog/aws/models/compute/network_acls.rb +6 -6
  53. data/lib/fog/aws/models/compute/network_interface.rb +2 -2
  54. data/lib/fog/aws/models/compute/network_interfaces.rb +5 -5
  55. data/lib/fog/aws/models/compute/route_table.rb +2 -2
  56. data/lib/fog/aws/models/compute/route_tables.rb +7 -7
  57. data/lib/fog/aws/models/compute/security_group.rb +15 -7
  58. data/lib/fog/aws/models/compute/security_groups.rb +3 -3
  59. data/lib/fog/aws/models/compute/server.rb +8 -4
  60. data/lib/fog/aws/models/compute/servers.rb +13 -8
  61. data/lib/fog/aws/models/compute/snapshot.rb +9 -8
  62. data/lib/fog/aws/models/compute/snapshots.rb +3 -3
  63. data/lib/fog/aws/models/compute/spot_request.rb +2 -2
  64. data/lib/fog/aws/models/compute/spot_requests.rb +3 -3
  65. data/lib/fog/aws/models/compute/subnet.rb +3 -2
  66. data/lib/fog/aws/models/compute/subnets.rb +3 -3
  67. data/lib/fog/aws/models/compute/tag.rb +2 -2
  68. data/lib/fog/aws/models/compute/tags.rb +3 -3
  69. data/lib/fog/aws/models/compute/volume.rb +21 -32
  70. data/lib/fog/aws/models/compute/volumes.rb +3 -3
  71. data/lib/fog/aws/models/compute/vpc.rb +21 -6
  72. data/lib/fog/aws/models/compute/vpcs.rb +3 -3
  73. data/lib/fog/aws/models/dns/record.rb +2 -2
  74. data/lib/fog/aws/models/dns/records.rb +4 -4
  75. data/lib/fog/aws/models/dns/zone.rb +3 -3
  76. data/lib/fog/aws/models/dns/zones.rb +4 -4
  77. data/lib/fog/aws/models/efs/file_system.rb +4 -0
  78. data/lib/fog/aws/models/elasticache/cluster.rb +1 -1
  79. data/lib/fog/aws/models/elb/backend_server_descriptions.rb +1 -1
  80. data/lib/fog/aws/models/elb/listeners.rb +3 -4
  81. data/lib/fog/aws/models/elb/load_balancer.rb +10 -2
  82. data/lib/fog/aws/models/elb/load_balancers.rb +5 -6
  83. data/lib/fog/aws/models/iam/access_keys.rb +0 -2
  84. data/lib/fog/aws/models/rds/cluster.rb +9 -1
  85. data/lib/fog/aws/models/rds/instance_option.rb +6 -0
  86. data/lib/fog/aws/models/rds/server.rb +66 -63
  87. data/lib/fog/aws/models/storage/directories.rb +4 -3
  88. data/lib/fog/aws/models/storage/directory.rb +40 -6
  89. data/lib/fog/aws/models/storage/file.rb +173 -28
  90. data/lib/fog/aws/models/storage/files.rb +37 -6
  91. data/lib/fog/aws/models/storage/version.rb +2 -2
  92. data/lib/fog/aws/models/storage/versions.rb +3 -3
  93. data/lib/fog/aws/parsers/cdn/distribution.rb +2 -2
  94. data/lib/fog/aws/parsers/cdn/get_distribution_list.rb +2 -2
  95. data/lib/fog/aws/parsers/cdn/get_invalidation.rb +2 -2
  96. data/lib/fog/aws/parsers/cdn/get_invalidation_list.rb +2 -2
  97. data/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb +2 -2
  98. data/lib/fog/aws/parsers/cdn/post_invalidation.rb +2 -2
  99. data/lib/fog/aws/parsers/cdn/streaming_distribution.rb +1 -1
  100. data/lib/fog/aws/parsers/compute/allocate_address.rb +2 -2
  101. data/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb +2 -2
  102. data/lib/fog/aws/parsers/compute/associate_address.rb +2 -2
  103. data/lib/fog/aws/parsers/compute/associate_route_table.rb +2 -2
  104. data/lib/fog/aws/parsers/compute/attach_network_interface.rb +2 -2
  105. data/lib/fog/aws/parsers/compute/attach_volume.rb +2 -2
  106. data/lib/fog/aws/parsers/compute/basic.rb +2 -2
  107. data/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb +2 -2
  108. data/lib/fog/aws/parsers/compute/copy_image.rb +2 -2
  109. data/lib/fog/aws/parsers/compute/copy_snapshot.rb +2 -2
  110. data/lib/fog/aws/parsers/compute/create_dhcp_options.rb +2 -2
  111. data/lib/fog/aws/parsers/compute/create_image.rb +2 -2
  112. data/lib/fog/aws/parsers/compute/create_internet_gateway.rb +2 -2
  113. data/lib/fog/aws/parsers/compute/create_key_pair.rb +2 -2
  114. data/lib/fog/aws/parsers/compute/create_network_acl.rb +2 -2
  115. data/lib/fog/aws/parsers/compute/create_network_interface.rb +2 -2
  116. data/lib/fog/aws/parsers/compute/create_route_table.rb +2 -2
  117. data/lib/fog/aws/parsers/compute/create_security_group.rb +2 -2
  118. data/lib/fog/aws/parsers/compute/create_snapshot.rb +3 -3
  119. data/lib/fog/aws/parsers/compute/create_subnet.rb +37 -8
  120. data/lib/fog/aws/parsers/compute/create_volume.rb +2 -2
  121. data/lib/fog/aws/parsers/compute/create_vpc.rb +2 -2
  122. data/lib/fog/aws/parsers/compute/deregister_image.rb +2 -2
  123. data/lib/fog/aws/parsers/compute/describe_account_attributes.rb +2 -2
  124. data/lib/fog/aws/parsers/compute/describe_addresses.rb +32 -11
  125. data/lib/fog/aws/parsers/compute/describe_availability_zones.rb +2 -2
  126. data/lib/fog/aws/parsers/compute/describe_classic_link_instances.rb +2 -2
  127. data/lib/fog/aws/parsers/compute/describe_dhcp_options.rb +2 -2
  128. data/lib/fog/aws/parsers/compute/describe_image_attribute.rb +122 -0
  129. data/lib/fog/aws/parsers/compute/describe_images.rb +2 -2
  130. data/lib/fog/aws/parsers/compute/describe_instance_attribute.rb +2 -2
  131. data/lib/fog/aws/parsers/compute/describe_instance_status.rb +2 -2
  132. data/lib/fog/aws/parsers/compute/describe_instances.rb +2 -2
  133. data/lib/fog/aws/parsers/compute/describe_internet_gateways.rb +2 -2
  134. data/lib/fog/aws/parsers/compute/describe_key_pairs.rb +2 -2
  135. data/lib/fog/aws/parsers/compute/describe_network_acls.rb +2 -2
  136. data/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb +2 -2
  137. data/lib/fog/aws/parsers/compute/describe_network_interfaces.rb +2 -2
  138. data/lib/fog/aws/parsers/compute/describe_placement_groups.rb +2 -2
  139. data/lib/fog/aws/parsers/compute/describe_regions.rb +2 -2
  140. data/lib/fog/aws/parsers/compute/describe_reserved_instances.rb +2 -2
  141. data/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb +2 -2
  142. data/lib/fog/aws/parsers/compute/describe_route_tables.rb +2 -2
  143. data/lib/fog/aws/parsers/compute/describe_security_groups.rb +21 -7
  144. data/lib/fog/aws/parsers/compute/describe_snapshots.rb +2 -2
  145. data/lib/fog/aws/parsers/compute/describe_spot_price_history.rb +2 -2
  146. data/lib/fog/aws/parsers/compute/describe_subnets.rb +36 -9
  147. data/lib/fog/aws/parsers/compute/describe_tags.rb +2 -2
  148. data/lib/fog/aws/parsers/compute/describe_volume_status.rb +2 -2
  149. data/lib/fog/aws/parsers/compute/describe_volumes.rb +2 -2
  150. data/lib/fog/aws/parsers/compute/describe_volumes_modifications.rb +2 -2
  151. data/lib/fog/aws/parsers/compute/describe_vpc_attribute.rb +2 -2
  152. data/lib/fog/aws/parsers/compute/describe_vpc_classic_link.rb +2 -2
  153. data/lib/fog/aws/parsers/compute/describe_vpc_classic_link_dns_support.rb +2 -2
  154. data/lib/fog/aws/parsers/compute/describe_vpcs.rb +73 -39
  155. data/lib/fog/aws/parsers/compute/detach_volume.rb +2 -2
  156. data/lib/fog/aws/parsers/compute/get_console_output.rb +2 -2
  157. data/lib/fog/aws/parsers/compute/get_password_data.rb +2 -2
  158. data/lib/fog/aws/parsers/compute/import_key_pair.rb +2 -2
  159. data/lib/fog/aws/parsers/compute/modify_subnet_attribute.rb +2 -2
  160. data/lib/fog/aws/parsers/compute/modify_volume.rb +2 -2
  161. data/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb +2 -2
  162. data/lib/fog/aws/parsers/compute/move_address_to_vpc.rb +2 -2
  163. data/lib/fog/aws/parsers/compute/network_acl_parser.rb +2 -2
  164. data/lib/fog/aws/parsers/compute/network_interface_parser.rb +2 -2
  165. data/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb +2 -2
  166. data/lib/fog/aws/parsers/compute/register_image.rb +2 -2
  167. data/lib/fog/aws/parsers/compute/replace_network_acl_association.rb +2 -2
  168. data/lib/fog/aws/parsers/compute/restore_address_to_classic.rb +2 -2
  169. data/lib/fog/aws/parsers/compute/run_instances.rb +2 -2
  170. data/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb +2 -2
  171. data/lib/fog/aws/parsers/compute/spot_instance_requests.rb +2 -2
  172. data/lib/fog/aws/parsers/compute/start_stop_instances.rb +2 -2
  173. data/lib/fog/aws/parsers/compute/terminate_instances.rb +2 -2
  174. data/lib/fog/aws/parsers/dns/change_resource_record_sets.rb +2 -2
  175. data/lib/fog/aws/parsers/dns/create_hosted_zone.rb +3 -3
  176. data/lib/fog/aws/parsers/dns/delete_hosted_zone.rb +2 -2
  177. data/lib/fog/aws/parsers/dns/get_change.rb +2 -2
  178. data/lib/fog/aws/parsers/dns/get_hosted_zone.rb +5 -5
  179. data/lib/fog/aws/parsers/dns/health_check.rb +2 -2
  180. data/lib/fog/aws/parsers/dns/list_health_checks.rb +2 -2
  181. data/lib/fog/aws/parsers/dns/list_hosted_zones.rb +5 -3
  182. data/lib/fog/aws/parsers/dns/list_resource_record_sets.rb +2 -2
  183. data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +3 -3
  184. data/lib/fog/aws/parsers/elbv2/create_load_balancer.rb +88 -0
  185. data/lib/fog/aws/parsers/elbv2/describe_listeners.rb +110 -0
  186. data/lib/fog/aws/parsers/elbv2/describe_load_balancers.rb +88 -0
  187. data/lib/fog/aws/parsers/elbv2/describe_tags.rb +53 -0
  188. data/lib/fog/aws/parsers/elbv2/empty.rb +10 -0
  189. data/lib/fog/aws/parsers/iam/get_group_policy.rb +1 -1
  190. data/lib/fog/aws/parsers/iam/get_role_policy.rb +1 -1
  191. data/lib/fog/aws/parsers/iam/get_user_policy.rb +1 -1
  192. data/lib/fog/aws/parsers/iam/list_access_keys.rb +1 -1
  193. data/lib/fog/aws/parsers/iam/list_server_certificates.rb +1 -1
  194. data/lib/fog/aws/parsers/iam/policy_version.rb +1 -1
  195. data/lib/fog/aws/parsers/rds/db_cluster_parser.rb +1 -1
  196. data/lib/fog/aws/parsers/rds/db_parser.rb +42 -3
  197. data/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb +4 -3
  198. data/lib/fog/aws/parsers/rds/modify_db_subnet_group.rb +1 -1
  199. data/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb +1 -1
  200. data/lib/fog/aws/parsers/storage/access_control_list.rb +2 -2
  201. data/lib/fog/aws/parsers/storage/complete_multipart_upload.rb +2 -2
  202. data/lib/fog/aws/parsers/storage/copy_object.rb +2 -2
  203. data/lib/fog/aws/parsers/storage/cors_configuration.rb +2 -2
  204. data/lib/fog/aws/parsers/storage/delete_multiple_objects.rb +2 -2
  205. data/lib/fog/aws/parsers/storage/get_bucket.rb +2 -2
  206. data/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb +2 -2
  207. data/lib/fog/aws/parsers/storage/get_bucket_location.rb +2 -2
  208. data/lib/fog/aws/parsers/storage/get_bucket_logging.rb +2 -2
  209. data/lib/fog/aws/parsers/storage/get_bucket_notification.rb +2 -2
  210. data/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb +2 -2
  211. data/lib/fog/aws/parsers/storage/get_bucket_tagging.rb +2 -2
  212. data/lib/fog/aws/parsers/storage/get_bucket_versioning.rb +2 -2
  213. data/lib/fog/aws/parsers/storage/get_bucket_website.rb +2 -2
  214. data/lib/fog/aws/parsers/storage/get_object_tagging.rb +33 -0
  215. data/lib/fog/aws/parsers/storage/get_request_payment.rb +2 -2
  216. data/lib/fog/aws/parsers/storage/get_service.rb +2 -2
  217. data/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb +2 -2
  218. data/lib/fog/aws/parsers/storage/list_multipart_uploads.rb +2 -2
  219. data/lib/fog/aws/parsers/storage/list_parts.rb +2 -2
  220. data/lib/fog/aws/parsers/storage/upload_part_copy_object.rb +18 -0
  221. data/lib/fog/aws/parsers/sts/assume_role_with_web_identity.rb +1 -1
  222. data/lib/fog/aws/rds.rb +1 -1
  223. data/lib/fog/aws/redshift.rb +1 -1
  224. data/lib/fog/aws/requests/auto_scaling/attach_load_balancer_target_groups.rb +1 -1
  225. data/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb +1 -1
  226. data/lib/fog/aws/requests/auto_scaling/detach_instances.rb +3 -4
  227. data/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb +1 -1
  228. data/lib/fog/aws/requests/auto_scaling/set_instance_protection.rb +67 -0
  229. data/lib/fog/aws/requests/cdn/delete_distribution.rb +6 -6
  230. data/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb +6 -6
  231. data/lib/fog/aws/requests/cdn/get_distribution.rb +5 -5
  232. data/lib/fog/aws/requests/cdn/get_distribution_list.rb +3 -3
  233. data/lib/fog/aws/requests/cdn/get_invalidation.rb +5 -5
  234. data/lib/fog/aws/requests/cdn/get_invalidation_list.rb +4 -4
  235. data/lib/fog/aws/requests/cdn/get_streaming_distribution.rb +5 -5
  236. data/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb +3 -3
  237. data/lib/fog/aws/requests/cdn/post_distribution.rb +6 -6
  238. data/lib/fog/aws/requests/cdn/post_invalidation.rb +5 -5
  239. data/lib/fog/aws/requests/cdn/post_streaming_distribution.rb +6 -6
  240. data/lib/fog/aws/requests/cdn/put_distribution_config.rb +7 -7
  241. data/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb +7 -7
  242. data/lib/fog/aws/requests/cloud_formation/create_change_set.rb +1 -1
  243. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +1 -1
  244. data/lib/fog/aws/requests/cloud_formation/get_template_summary.rb +1 -1
  245. data/lib/fog/aws/requests/cloud_formation/update_stack.rb +1 -1
  246. data/lib/fog/aws/requests/cloud_watch/list_metrics.rb +1 -1
  247. data/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb +2 -2
  248. data/lib/fog/aws/requests/compute/allocate_address.rb +4 -4
  249. data/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb +5 -5
  250. data/lib/fog/aws/requests/compute/associate_address.rb +7 -7
  251. data/lib/fog/aws/requests/compute/associate_dhcp_options.rb +4 -4
  252. data/lib/fog/aws/requests/compute/associate_route_table.rb +5 -5
  253. data/lib/fog/aws/requests/compute/attach_classic_link_vpc.rb +7 -7
  254. data/lib/fog/aws/requests/compute/attach_internet_gateway.rb +4 -4
  255. data/lib/fog/aws/requests/compute/attach_network_interface.rb +6 -6
  256. data/lib/fog/aws/requests/compute/attach_volume.rb +7 -7
  257. data/lib/fog/aws/requests/compute/authorize_security_group_egress.rb +14 -12
  258. data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +50 -31
  259. data/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb +4 -4
  260. data/lib/fog/aws/requests/compute/copy_image.rb +3 -3
  261. data/lib/fog/aws/requests/compute/copy_snapshot.rb +24 -11
  262. data/lib/fog/aws/requests/compute/create_dhcp_options.rb +3 -3
  263. data/lib/fog/aws/requests/compute/create_image.rb +3 -3
  264. data/lib/fog/aws/requests/compute/create_internet_gateway.rb +3 -3
  265. data/lib/fog/aws/requests/compute/create_key_pair.rb +4 -4
  266. data/lib/fog/aws/requests/compute/create_network_acl.rb +4 -4
  267. data/lib/fog/aws/requests/compute/create_network_acl_entry.rb +5 -5
  268. data/lib/fog/aws/requests/compute/create_network_interface.rb +16 -13
  269. data/lib/fog/aws/requests/compute/create_placement_group.rb +3 -3
  270. data/lib/fog/aws/requests/compute/create_route.rb +10 -10
  271. data/lib/fog/aws/requests/compute/create_route_table.rb +5 -5
  272. data/lib/fog/aws/requests/compute/create_security_group.rb +27 -22
  273. data/lib/fog/aws/requests/compute/create_snapshot.rb +3 -3
  274. data/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb +3 -3
  275. data/lib/fog/aws/requests/compute/create_subnet.rb +23 -19
  276. data/lib/fog/aws/requests/compute/create_tags.rb +3 -3
  277. data/lib/fog/aws/requests/compute/create_volume.rb +11 -11
  278. data/lib/fog/aws/requests/compute/create_vpc.rb +43 -15
  279. data/lib/fog/aws/requests/compute/delete_dhcp_options.rb +4 -4
  280. data/lib/fog/aws/requests/compute/delete_internet_gateway.rb +4 -4
  281. data/lib/fog/aws/requests/compute/delete_key_pair.rb +3 -3
  282. data/lib/fog/aws/requests/compute/delete_network_acl.rb +5 -5
  283. data/lib/fog/aws/requests/compute/delete_network_acl_entry.rb +5 -5
  284. data/lib/fog/aws/requests/compute/delete_network_interface.rb +5 -5
  285. data/lib/fog/aws/requests/compute/delete_placement_group.rb +3 -3
  286. data/lib/fog/aws/requests/compute/delete_route.rb +6 -6
  287. data/lib/fog/aws/requests/compute/delete_route_table.rb +5 -5
  288. data/lib/fog/aws/requests/compute/delete_security_group.rb +17 -17
  289. data/lib/fog/aws/requests/compute/delete_snapshot.rb +4 -4
  290. data/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb +3 -3
  291. data/lib/fog/aws/requests/compute/delete_subnet.rb +4 -4
  292. data/lib/fog/aws/requests/compute/delete_tags.rb +3 -3
  293. data/lib/fog/aws/requests/compute/delete_volume.rb +5 -5
  294. data/lib/fog/aws/requests/compute/delete_vpc.rb +4 -4
  295. data/lib/fog/aws/requests/compute/deregister_image.rb +4 -4
  296. data/lib/fog/aws/requests/compute/describe_account_attributes.rb +3 -3
  297. data/lib/fog/aws/requests/compute/describe_addresses.rb +3 -3
  298. data/lib/fog/aws/requests/compute/describe_availability_zones.rb +6 -3
  299. data/lib/fog/aws/requests/compute/describe_classic_link_instances.rb +3 -3
  300. data/lib/fog/aws/requests/compute/describe_dhcp_options.rb +3 -3
  301. data/lib/fog/aws/requests/compute/describe_image_attribute.rb +74 -0
  302. data/lib/fog/aws/requests/compute/describe_images.rb +3 -3
  303. data/lib/fog/aws/requests/compute/describe_instance_attribute.rb +4 -4
  304. data/lib/fog/aws/requests/compute/describe_instance_status.rb +3 -3
  305. data/lib/fog/aws/requests/compute/describe_instances.rb +4 -4
  306. data/lib/fog/aws/requests/compute/describe_internet_gateways.rb +3 -3
  307. data/lib/fog/aws/requests/compute/describe_key_pairs.rb +3 -3
  308. data/lib/fog/aws/requests/compute/describe_network_acls.rb +3 -3
  309. data/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb +19 -17
  310. data/lib/fog/aws/requests/compute/describe_network_interfaces.rb +5 -5
  311. data/lib/fog/aws/requests/compute/describe_placement_groups.rb +3 -3
  312. data/lib/fog/aws/requests/compute/describe_regions.rb +3 -3
  313. data/lib/fog/aws/requests/compute/describe_reserved_instances.rb +3 -3
  314. data/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb +3 -3
  315. data/lib/fog/aws/requests/compute/describe_route_tables.rb +3 -3
  316. data/lib/fog/aws/requests/compute/describe_security_groups.rb +47 -10
  317. data/lib/fog/aws/requests/compute/describe_snapshots.rb +3 -3
  318. data/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb +3 -3
  319. data/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb +3 -3
  320. data/lib/fog/aws/requests/compute/describe_spot_price_history.rb +5 -5
  321. data/lib/fog/aws/requests/compute/describe_subnets.rb +15 -14
  322. data/lib/fog/aws/requests/compute/describe_tags.rb +3 -3
  323. data/lib/fog/aws/requests/compute/describe_volume_status.rb +3 -3
  324. data/lib/fog/aws/requests/compute/describe_volumes.rb +3 -3
  325. data/lib/fog/aws/requests/compute/describe_volumes_modifications.rb +3 -3
  326. data/lib/fog/aws/requests/compute/describe_vpc_attribute.rb +5 -5
  327. data/lib/fog/aws/requests/compute/describe_vpc_classic_link.rb +4 -4
  328. data/lib/fog/aws/requests/compute/describe_vpc_classic_link_dns_support.rb +3 -3
  329. data/lib/fog/aws/requests/compute/describe_vpcs.rb +3 -3
  330. data/lib/fog/aws/requests/compute/detach_classic_link_vpc.rb +5 -5
  331. data/lib/fog/aws/requests/compute/detach_internet_gateway.rb +4 -4
  332. data/lib/fog/aws/requests/compute/detach_network_interface.rb +4 -4
  333. data/lib/fog/aws/requests/compute/detach_volume.rb +5 -5
  334. data/lib/fog/aws/requests/compute/disable_vpc_classic_link.rb +4 -4
  335. data/lib/fog/aws/requests/compute/disable_vpc_classic_link_dns_support.rb +4 -4
  336. data/lib/fog/aws/requests/compute/disassociate_address.rb +5 -5
  337. data/lib/fog/aws/requests/compute/disassociate_route_table.rb +5 -5
  338. data/lib/fog/aws/requests/compute/enable_vpc_classic_link.rb +4 -4
  339. data/lib/fog/aws/requests/compute/enable_vpc_classic_link_dns_support.rb +4 -4
  340. data/lib/fog/aws/requests/compute/get_console_output.rb +4 -4
  341. data/lib/fog/aws/requests/compute/get_password_data.rb +4 -4
  342. data/lib/fog/aws/requests/compute/import_key_pair.rb +4 -4
  343. data/lib/fog/aws/requests/compute/modify_image_attribute.rb +4 -4
  344. data/lib/fog/aws/requests/compute/modify_instance_attribute.rb +3 -3
  345. data/lib/fog/aws/requests/compute/modify_instance_placement.rb +33 -0
  346. data/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb +12 -12
  347. data/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb +3 -3
  348. data/lib/fog/aws/requests/compute/modify_subnet_attribute.rb +3 -3
  349. data/lib/fog/aws/requests/compute/modify_volume.rb +6 -6
  350. data/lib/fog/aws/requests/compute/modify_volume_attribute.rb +4 -4
  351. data/lib/fog/aws/requests/compute/modify_vpc_attribute.rb +7 -7
  352. data/lib/fog/aws/requests/compute/monitor_instances.rb +4 -4
  353. data/lib/fog/aws/requests/compute/move_address_to_vpc.rb +4 -4
  354. data/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb +3 -3
  355. data/lib/fog/aws/requests/compute/reboot_instances.rb +4 -4
  356. data/lib/fog/aws/requests/compute/register_image.rb +4 -4
  357. data/lib/fog/aws/requests/compute/release_address.rb +5 -5
  358. data/lib/fog/aws/requests/compute/replace_network_acl_association.rb +5 -5
  359. data/lib/fog/aws/requests/compute/replace_network_acl_entry.rb +5 -5
  360. data/lib/fog/aws/requests/compute/replace_route.rb +10 -10
  361. data/lib/fog/aws/requests/compute/request_spot_instances.rb +8 -8
  362. data/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb +6 -6
  363. data/lib/fog/aws/requests/compute/restore_address_to_classic.rb +5 -5
  364. data/lib/fog/aws/requests/compute/revoke_security_group_egress.rb +23 -29
  365. data/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb +22 -29
  366. data/lib/fog/aws/requests/compute/run_instances.rb +69 -5
  367. data/lib/fog/aws/requests/compute/start_instances.rb +4 -4
  368. data/lib/fog/aws/requests/compute/stop_instances.rb +15 -7
  369. data/lib/fog/aws/requests/compute/terminate_instances.rb +4 -4
  370. data/lib/fog/aws/requests/compute/unmonitor_instances.rb +4 -4
  371. data/lib/fog/aws/requests/data_pipeline/deactivate_pipeline.rb +1 -1
  372. data/lib/fog/aws/requests/dns/change_resource_record_sets.rb +6 -139
  373. data/lib/fog/aws/requests/dns/create_health_check.rb +3 -3
  374. data/lib/fog/aws/requests/dns/create_hosted_zone.rb +4 -4
  375. data/lib/fog/aws/requests/dns/delete_health_check.rb +2 -2
  376. data/lib/fog/aws/requests/dns/delete_hosted_zone.rb +4 -4
  377. data/lib/fog/aws/requests/dns/get_change.rb +4 -4
  378. data/lib/fog/aws/requests/dns/get_health_check.rb +3 -3
  379. data/lib/fog/aws/requests/dns/get_hosted_zone.rb +4 -4
  380. data/lib/fog/aws/requests/dns/list_health_checks.rb +3 -3
  381. data/lib/fog/aws/requests/dns/list_hosted_zones.rb +3 -3
  382. data/lib/fog/aws/requests/dns/list_resource_record_sets.rb +5 -5
  383. data/lib/fog/aws/requests/dynamodb/update_item.rb +6 -5
  384. data/lib/fog/aws/requests/ecs/list_task_definitions.rb +1 -1
  385. data/lib/fog/aws/requests/efs/create_file_system.rb +15 -3
  386. data/lib/fog/aws/requests/efs/create_mount_target.rb +8 -4
  387. data/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb +1 -1
  388. data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +2 -2
  389. data/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb +1 -1
  390. data/lib/fog/aws/requests/elb/create_load_balancer.rb +11 -42
  391. data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +24 -21
  392. data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +1 -1
  393. data/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb +1 -1
  394. data/lib/fog/aws/requests/elb/describe_instance_health.rb +1 -1
  395. data/lib/fog/aws/requests/elb/describe_tags.rb +1 -1
  396. data/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb +1 -1
  397. data/lib/fog/aws/requests/elbv2/add_tags.rb +45 -0
  398. data/lib/fog/aws/requests/elbv2/create_load_balancer.rb +160 -0
  399. data/lib/fog/aws/requests/elbv2/describe_listeners.rb +38 -0
  400. data/lib/fog/aws/requests/elbv2/describe_load_balancers.rb +100 -0
  401. data/lib/fog/aws/requests/elbv2/describe_tags.rb +50 -0
  402. data/lib/fog/aws/requests/elbv2/remove_tags.rb +45 -0
  403. data/lib/fog/aws/requests/glacier/initiate_job.rb +1 -1
  404. data/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb +1 -1
  405. data/lib/fog/aws/requests/kinesis/list_streams.rb +1 -1
  406. data/lib/fog/aws/requests/kinesis/put_record.rb +1 -2
  407. data/lib/fog/aws/requests/kinesis/put_records.rb +1 -2
  408. data/lib/fog/aws/requests/lambda/invoke.rb +8 -8
  409. data/lib/fog/aws/requests/rds/add_tags_to_resource.rb +12 -10
  410. data/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb +3 -3
  411. data/lib/fog/aws/requests/rds/create_db_cluster.rb +1 -1
  412. data/lib/fog/aws/requests/rds/create_db_instance.rb +1 -1
  413. data/lib/fog/aws/requests/rds/create_db_subnet_group.rb +2 -2
  414. data/lib/fog/aws/requests/rds/describe_db_snapshots.rb +1 -1
  415. data/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb +12 -6
  416. data/lib/fog/aws/requests/rds/list_tags_for_resource.rb +10 -7
  417. data/lib/fog/aws/requests/rds/modify_db_instance.rb +2 -2
  418. data/lib/fog/aws/requests/rds/modify_db_parameter_group.rb +1 -1
  419. data/lib/fog/aws/requests/rds/remove_tags_from_resource.rb +9 -8
  420. data/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb +1 -1
  421. data/lib/fog/aws/requests/ses/send_raw_email.rb +1 -1
  422. data/lib/fog/aws/requests/sqs/change_message_visibility.rb +1 -1
  423. data/lib/fog/aws/requests/sqs/delete_message.rb +1 -1
  424. data/lib/fog/aws/requests/storage/abort_multipart_upload.rb +3 -3
  425. data/lib/fog/aws/requests/storage/acl_utils.rb +3 -3
  426. data/lib/fog/aws/requests/storage/complete_multipart_upload.rb +4 -4
  427. data/lib/fog/aws/requests/storage/copy_object.rb +5 -4
  428. data/lib/fog/aws/requests/storage/cors_utils.rb +3 -3
  429. data/lib/fog/aws/requests/storage/delete_bucket.rb +2 -2
  430. data/lib/fog/aws/requests/storage/delete_bucket_cors.rb +2 -2
  431. data/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb +2 -2
  432. data/lib/fog/aws/requests/storage/delete_bucket_policy.rb +2 -2
  433. data/lib/fog/aws/requests/storage/delete_bucket_tagging.rb +2 -2
  434. data/lib/fog/aws/requests/storage/delete_bucket_website.rb +2 -2
  435. data/lib/fog/aws/requests/storage/delete_multiple_objects.rb +21 -11
  436. data/lib/fog/aws/requests/storage/delete_object.rb +2 -2
  437. data/lib/fog/aws/requests/storage/delete_object_url.rb +40 -0
  438. data/lib/fog/aws/requests/storage/get_bucket.rb +5 -5
  439. data/lib/fog/aws/requests/storage/get_bucket_acl.rb +4 -4
  440. data/lib/fog/aws/requests/storage/get_bucket_cors.rb +4 -4
  441. data/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb +3 -3
  442. data/lib/fog/aws/requests/storage/get_bucket_location.rb +5 -6
  443. data/lib/fog/aws/requests/storage/get_bucket_logging.rb +3 -3
  444. data/lib/fog/aws/requests/storage/get_bucket_notification.rb +3 -3
  445. data/lib/fog/aws/requests/storage/get_bucket_object_versions.rb +5 -5
  446. data/lib/fog/aws/requests/storage/get_bucket_policy.rb +2 -2
  447. data/lib/fog/aws/requests/storage/get_bucket_tagging.rb +3 -3
  448. data/lib/fog/aws/requests/storage/get_bucket_versioning.rb +3 -3
  449. data/lib/fog/aws/requests/storage/get_bucket_website.rb +3 -3
  450. data/lib/fog/aws/requests/storage/get_object.rb +3 -3
  451. data/lib/fog/aws/requests/storage/get_object_acl.rb +4 -4
  452. data/lib/fog/aws/requests/storage/get_object_http_url.rb +2 -2
  453. data/lib/fog/aws/requests/storage/get_object_https_url.rb +2 -2
  454. data/lib/fog/aws/requests/storage/get_object_tagging.rb +41 -0
  455. data/lib/fog/aws/requests/storage/get_object_torrent.rb +2 -2
  456. data/lib/fog/aws/requests/storage/get_object_url.rb +2 -2
  457. data/lib/fog/aws/requests/storage/get_request_payment.rb +3 -3
  458. data/lib/fog/aws/requests/storage/get_service.rb +5 -5
  459. data/lib/fog/aws/requests/storage/head_bucket.rb +2 -2
  460. data/lib/fog/aws/requests/storage/head_object.rb +2 -2
  461. data/lib/fog/aws/requests/storage/head_object_url.rb +2 -2
  462. data/lib/fog/aws/requests/storage/initiate_multipart_upload.rb +4 -4
  463. data/lib/fog/aws/requests/storage/list_multipart_uploads.rb +3 -3
  464. data/lib/fog/aws/requests/storage/list_parts.rb +4 -4
  465. data/lib/fog/aws/requests/storage/post_object_hidden_fields.rb +2 -2
  466. data/lib/fog/aws/requests/storage/post_object_restore.rb +2 -2
  467. data/lib/fog/aws/requests/storage/put_bucket.rb +2 -6
  468. data/lib/fog/aws/requests/storage/put_bucket_acl.rb +4 -4
  469. data/lib/fog/aws/requests/storage/put_bucket_cors.rb +4 -4
  470. data/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb +3 -3
  471. data/lib/fog/aws/requests/storage/put_bucket_logging.rb +2 -2
  472. data/lib/fog/aws/requests/storage/put_bucket_notification.rb +3 -3
  473. data/lib/fog/aws/requests/storage/put_bucket_policy.rb +2 -2
  474. data/lib/fog/aws/requests/storage/put_bucket_tagging.rb +2 -2
  475. data/lib/fog/aws/requests/storage/put_bucket_versioning.rb +2 -2
  476. data/lib/fog/aws/requests/storage/put_bucket_website.rb +2 -2
  477. data/lib/fog/aws/requests/storage/put_object.rb +10 -9
  478. data/lib/fog/aws/requests/storage/put_object_acl.rb +4 -4
  479. data/lib/fog/aws/requests/storage/put_object_tagging.rb +42 -0
  480. data/lib/fog/aws/requests/storage/put_object_url.rb +2 -2
  481. data/lib/fog/aws/requests/storage/put_request_payment.rb +2 -2
  482. data/lib/fog/aws/requests/storage/shared_mock_methods.rb +4 -3
  483. data/lib/fog/aws/requests/storage/sync_clock.rb +11 -3
  484. data/lib/fog/aws/requests/storage/upload_part.rb +3 -3
  485. data/lib/fog/aws/requests/storage/upload_part_copy.rb +119 -0
  486. data/lib/fog/aws/requests/sts/assume_role_with_web_identity.rb +7 -6
  487. data/lib/fog/aws/service_mapper.rb +129 -0
  488. data/lib/fog/aws/ses.rb +1 -1
  489. data/lib/fog/aws/signaturev4.rb +1 -1
  490. data/lib/fog/aws/simpledb.rb +1 -1
  491. data/lib/fog/aws/sns.rb +1 -1
  492. data/lib/fog/aws/sqs.rb +1 -1
  493. data/lib/fog/aws/storage.rb +107 -20
  494. data/lib/fog/aws/support.rb +1 -1
  495. data/lib/fog/aws/version.rb +1 -1
  496. data/lib/fog/aws.rb +31 -19
  497. metadata +70 -297
  498. data/.gitignore +0 -16
  499. data/.travis.yml +0 -54
  500. data/Gemfile +0 -14
  501. data/Rakefile +0 -8
  502. data/gemfiles/Gemfile-edge +0 -14
  503. data/gemfiles/Gemfile-ruby-1.8.7 +0 -6
  504. data/gemfiles/Gemfile-ruby-1.9 +0 -7
  505. data/gemfiles/Gemfile-ruby-2.0 +0 -7
  506. data/tests/credentials_tests.rb +0 -86
  507. data/tests/helper.rb +0 -29
  508. data/tests/helpers/collection_helper.rb +0 -97
  509. data/tests/helpers/compute/flavors_helper.rb +0 -32
  510. data/tests/helpers/compute/server_helper.rb +0 -25
  511. data/tests/helpers/compute/servers_helper.rb +0 -10
  512. data/tests/helpers/dns_helper.rb +0 -55
  513. data/tests/helpers/formats_helper.rb +0 -98
  514. data/tests/helpers/formats_helper_tests.rb +0 -110
  515. data/tests/helpers/mock_helper.rb +0 -109
  516. data/tests/helpers/model_helper.rb +0 -31
  517. data/tests/helpers/responds_to_helper.rb +0 -11
  518. data/tests/helpers/schema_validator_tests.rb +0 -107
  519. data/tests/helpers/succeeds_helper.rb +0 -9
  520. data/tests/lorem.txt +0 -1
  521. data/tests/models/auto_scaling/activities_tests.rb +0 -6
  522. data/tests/models/auto_scaling/configuration_test.rb +0 -13
  523. data/tests/models/auto_scaling/configurations_tests.rb +0 -11
  524. data/tests/models/auto_scaling/groups_test.rb +0 -27
  525. data/tests/models/auto_scaling/helper.rb +0 -0
  526. data/tests/models/auto_scaling/instance_tests.rb +0 -15
  527. data/tests/models/auto_scaling/instances_tests.rb +0 -6
  528. data/tests/models/beanstalk/application_tests.rb +0 -69
  529. data/tests/models/beanstalk/applications_tests.rb +0 -7
  530. data/tests/models/beanstalk/environment_tests.rb +0 -131
  531. data/tests/models/beanstalk/environments_tests.rb +0 -34
  532. data/tests/models/beanstalk/template_tests.rb +0 -47
  533. data/tests/models/beanstalk/templates_tests.rb +0 -62
  534. data/tests/models/beanstalk/version_tests.rb +0 -66
  535. data/tests/models/beanstalk/versions_tests.rb +0 -60
  536. data/tests/models/cdn/distribution_tests.rb +0 -15
  537. data/tests/models/cdn/distributions_tests.rb +0 -15
  538. data/tests/models/cdn/invalidation_tests.rb +0 -31
  539. data/tests/models/cdn/invalidations_tests.rb +0 -14
  540. data/tests/models/cdn/streaming_distribution_tests.rb +0 -15
  541. data/tests/models/cdn/streaming_distributions_tests.rb +0 -15
  542. data/tests/models/cloud_watch/alarm_data_tests.rb +0 -42
  543. data/tests/models/cloud_watch/alarm_history_tests.rb +0 -22
  544. data/tests/models/cloud_watch/metric_statistics_tests.rb +0 -51
  545. data/tests/models/cloud_watch/metrics_tests.rb +0 -32
  546. data/tests/models/compute/address_tests.rb +0 -43
  547. data/tests/models/compute/addresses_tests.rb +0 -5
  548. data/tests/models/compute/dhcp_option_tests.rb +0 -3
  549. data/tests/models/compute/dhcp_options_tests.rb +0 -3
  550. data/tests/models/compute/internet_gateway_tests.rb +0 -3
  551. data/tests/models/compute/internet_gateways_tests.rb +0 -3
  552. data/tests/models/compute/key_pair_tests.rb +0 -26
  553. data/tests/models/compute/key_pairs_tests.rb +0 -5
  554. data/tests/models/compute/network_acl_tests.rb +0 -109
  555. data/tests/models/compute/network_acls_tests.rb +0 -20
  556. data/tests/models/compute/network_interfaces_test.rb +0 -12
  557. data/tests/models/compute/security_group_tests.rb +0 -98
  558. data/tests/models/compute/security_groups_tests.rb +0 -5
  559. data/tests/models/compute/server_tests.rb +0 -94
  560. data/tests/models/compute/snapshot_tests.rb +0 -10
  561. data/tests/models/compute/snapshots_tests.rb +0 -10
  562. data/tests/models/compute/subnet_tests.rb +0 -13
  563. data/tests/models/compute/subnets_tests.rb +0 -5
  564. data/tests/models/compute/volume_tests.rb +0 -58
  565. data/tests/models/compute/volumes_tests.rb +0 -5
  566. data/tests/models/compute/vpc_tests.rb +0 -26
  567. data/tests/models/compute/vpcs_tests.rb +0 -19
  568. data/tests/models/data_pipeline/pipeline_tests.rb +0 -8
  569. data/tests/models/data_pipeline/pipelines_tests.rb +0 -8
  570. data/tests/models/dns/record_tests.rb +0 -33
  571. data/tests/models/dns/records_tests.rb +0 -41
  572. data/tests/models/dns/zone_tests.rb +0 -4
  573. data/tests/models/dns/zones_tests.rb +0 -4
  574. data/tests/models/efs/file_system_tests.rb +0 -12
  575. data/tests/models/efs/mount_target_tests.rb +0 -43
  576. data/tests/models/efs/mount_targets_tests.rb +0 -30
  577. data/tests/models/elasticache/cluster_tests.rb +0 -30
  578. data/tests/models/elasticache/parameter_groups_tests.rb +0 -15
  579. data/tests/models/elasticache/security_groups_tests.rb +0 -52
  580. data/tests/models/elasticache/subnet_groups_tests.rb +0 -44
  581. data/tests/models/elb/model_tests.rb +0 -360
  582. data/tests/models/elb/tagging_tests.rb +0 -15
  583. data/tests/models/glacier/model_tests.rb +0 -47
  584. data/tests/models/iam/access_keys_tests.rb +0 -53
  585. data/tests/models/iam/groups_tests.rb +0 -59
  586. data/tests/models/iam/instance_profile_tests.rb +0 -18
  587. data/tests/models/iam/managed_policies_tests.rb +0 -89
  588. data/tests/models/iam/policies_tests.rb +0 -57
  589. data/tests/models/iam/roles_tests.rb +0 -71
  590. data/tests/models/iam/users_tests.rb +0 -119
  591. data/tests/models/rds/cluster_tests.rb +0 -54
  592. data/tests/models/rds/clusters_tests.rb +0 -5
  593. data/tests/models/rds/event_subscription_tests.rb +0 -9
  594. data/tests/models/rds/event_subscriptions_tests.rb +0 -6
  595. data/tests/models/rds/helper.rb +0 -25
  596. data/tests/models/rds/instance_option_tests.rb +0 -14
  597. data/tests/models/rds/parameter_group_tests.rb +0 -24
  598. data/tests/models/rds/parameter_groups_tests.rb +0 -8
  599. data/tests/models/rds/security_group_tests.rb +0 -77
  600. data/tests/models/rds/security_groups_tests.rb +0 -5
  601. data/tests/models/rds/server_tests.rb +0 -131
  602. data/tests/models/rds/servers_tests.rb +0 -24
  603. data/tests/models/rds/snapshot_tests.rb +0 -12
  604. data/tests/models/rds/snapshots_tests.rb +0 -12
  605. data/tests/models/rds/tagging_tests.rb +0 -20
  606. data/tests/models/sns/topic_tests.rb +0 -15
  607. data/tests/models/sns/topics_tests.rb +0 -6
  608. data/tests/models/storage/directory_tests.rb +0 -91
  609. data/tests/models/storage/file_tests.rb +0 -133
  610. data/tests/models/storage/files_tests.rb +0 -58
  611. data/tests/models/storage/url_tests.rb +0 -44
  612. data/tests/models/storage/version_tests.rb +0 -52
  613. data/tests/models/storage/versions_tests.rb +0 -56
  614. data/tests/models/support/trusted_advisor_tests.rb +0 -25
  615. data/tests/parsers/compute/describe_images_tests.rb +0 -33
  616. data/tests/parsers/elb/describe_load_balancers.rb +0 -65
  617. data/tests/requests/auto_scaling/auto_scaling_tests.rb +0 -103
  618. data/tests/requests/auto_scaling/describe_types_tests.rb +0 -102
  619. data/tests/requests/auto_scaling/helper.rb +0 -229
  620. data/tests/requests/auto_scaling/model_tests.rb +0 -235
  621. data/tests/requests/auto_scaling/notification_configuration_tests.rb +0 -124
  622. data/tests/requests/auto_scaling/tag_tests.rb +0 -63
  623. data/tests/requests/beanstalk/application_tests.rb +0 -140
  624. data/tests/requests/beanstalk/solution_stack_tests.rb +0 -22
  625. data/tests/requests/cdn/cdn_tests.rb +0 -252
  626. data/tests/requests/cloud_formation/stack_tests.rb +0 -167
  627. data/tests/requests/cloud_watch/get_metric_statistics_tests.rb +0 -28
  628. data/tests/requests/cloud_watch/list_metrics_test.rb +0 -64
  629. data/tests/requests/cloud_watch/put_metric_data_tests.rb +0 -36
  630. data/tests/requests/compute/address_tests.rb +0 -144
  631. data/tests/requests/compute/assign_private_ip_tests.rb +0 -55
  632. data/tests/requests/compute/availability_zone_tests.rb +0 -25
  633. data/tests/requests/compute/client_tests.rb +0 -25
  634. data/tests/requests/compute/dhcp_options_tests.rb +0 -39
  635. data/tests/requests/compute/helper.rb +0 -27
  636. data/tests/requests/compute/image_tests.rb +0 -160
  637. data/tests/requests/compute/instance_attrib_tests.rb +0 -168
  638. data/tests/requests/compute/instance_tests.rb +0 -338
  639. data/tests/requests/compute/internet_gateway_tests.rb +0 -49
  640. data/tests/requests/compute/key_pair_tests.rb +0 -67
  641. data/tests/requests/compute/network_acl_tests.rb +0 -112
  642. data/tests/requests/compute/network_interface_tests.rb +0 -250
  643. data/tests/requests/compute/placement_group_tests.rb +0 -48
  644. data/tests/requests/compute/region_tests.rb +0 -52
  645. data/tests/requests/compute/route_tests.rb +0 -341
  646. data/tests/requests/compute/security_group_tests.rb +0 -446
  647. data/tests/requests/compute/snapshot_tests.rb +0 -77
  648. data/tests/requests/compute/spot_datafeed_subscription_tests.rb +0 -47
  649. data/tests/requests/compute/spot_instance_tests.rb +0 -55
  650. data/tests/requests/compute/spot_price_history_tests.rb +0 -23
  651. data/tests/requests/compute/subnet_tests.rb +0 -85
  652. data/tests/requests/compute/tag_tests.rb +0 -101
  653. data/tests/requests/compute/volume_tests.rb +0 -263
  654. data/tests/requests/compute/vpc_tests.rb +0 -214
  655. data/tests/requests/data_pipeline/helper.rb +0 -78
  656. data/tests/requests/data_pipeline/pipeline_tests.rb +0 -80
  657. data/tests/requests/dns/change_resource_record_sets_tests.rb +0 -34
  658. data/tests/requests/dns/dns_tests.rb +0 -244
  659. data/tests/requests/dns/health_check_tests.rb +0 -159
  660. data/tests/requests/dns/helper.rb +0 -21
  661. data/tests/requests/dynamodb/item_tests.rb +0 -137
  662. data/tests/requests/dynamodb/table_tests.rb +0 -99
  663. data/tests/requests/ecs/cluster_tests.rb +0 -112
  664. data/tests/requests/ecs/container_instance_tests.rb +0 -119
  665. data/tests/requests/ecs/helper.rb +0 -276
  666. data/tests/requests/ecs/sample_task_definition1.json +0 -56
  667. data/tests/requests/ecs/service_tests.rb +0 -132
  668. data/tests/requests/ecs/task_definitions_tests.rb +0 -97
  669. data/tests/requests/ecs/task_tests.rb +0 -145
  670. data/tests/requests/efs/file_system_tests.rb +0 -152
  671. data/tests/requests/efs/helper.rb +0 -42
  672. data/tests/requests/elasticache/cache_cluster_tests.rb +0 -137
  673. data/tests/requests/elasticache/describe_events.rb +0 -17
  674. data/tests/requests/elasticache/describe_reserved_cache_nodes.rb +0 -17
  675. data/tests/requests/elasticache/helper.rb +0 -103
  676. data/tests/requests/elasticache/parameter_group_tests.rb +0 -105
  677. data/tests/requests/elasticache/security_group_tests.rb +0 -108
  678. data/tests/requests/elasticache/subnet_group_tests.rb +0 -52
  679. data/tests/requests/elb/helper.rb +0 -91
  680. data/tests/requests/elb/listener_tests.rb +0 -68
  681. data/tests/requests/elb/load_balancer_tests.rb +0 -89
  682. data/tests/requests/elb/policy_tests.rb +0 -132
  683. data/tests/requests/emr/helper.rb +0 -167
  684. data/tests/requests/emr/instance_group_tests.rb +0 -106
  685. data/tests/requests/emr/job_flow_tests.rb +0 -88
  686. data/tests/requests/federation/get_signin_token_tests.rb +0 -11
  687. data/tests/requests/glacier/archive_tests.rb +0 -13
  688. data/tests/requests/glacier/multipart_upload_tests.rb +0 -29
  689. data/tests/requests/glacier/tree_hash_tests.rb +0 -62
  690. data/tests/requests/glacier/vault_tests.rb +0 -35
  691. data/tests/requests/iam/access_key_tests.rb +0 -53
  692. data/tests/requests/iam/account_policy_tests.rb +0 -20
  693. data/tests/requests/iam/account_tests.rb +0 -34
  694. data/tests/requests/iam/group_policy_tests.rb +0 -48
  695. data/tests/requests/iam/group_tests.rb +0 -44
  696. data/tests/requests/iam/helper.rb +0 -154
  697. data/tests/requests/iam/instance_profile_tests.rb +0 -44
  698. data/tests/requests/iam/login_profile_tests.rb +0 -62
  699. data/tests/requests/iam/managed_policy_tests.rb +0 -111
  700. data/tests/requests/iam/mfa_tests.rb +0 -23
  701. data/tests/requests/iam/role_tests.rb +0 -156
  702. data/tests/requests/iam/server_certificate_tests.rb +0 -130
  703. data/tests/requests/iam/user_policy_tests.rb +0 -45
  704. data/tests/requests/iam/user_tests.rb +0 -78
  705. data/tests/requests/iam/versioned_managed_policy_tests.rb +0 -114
  706. data/tests/requests/kinesis/helper.rb +0 -111
  707. data/tests/requests/kinesis/stream_tests.rb +0 -169
  708. data/tests/requests/kms/helper.rb +0 -27
  709. data/tests/requests/kms/key_tests.rb +0 -23
  710. data/tests/requests/lambda/function_sample_1.js +0 -9
  711. data/tests/requests/lambda/function_sample_2.js +0 -9
  712. data/tests/requests/lambda/function_tests.rb +0 -460
  713. data/tests/requests/lambda/helper.rb +0 -81
  714. data/tests/requests/rds/cluster_snapshot_tests.rb +0 -43
  715. data/tests/requests/rds/cluster_tests.rb +0 -37
  716. data/tests/requests/rds/db_engine_versions.rb +0 -7
  717. data/tests/requests/rds/db_snapshot_tests.rb +0 -62
  718. data/tests/requests/rds/describe_events.rb +0 -16
  719. data/tests/requests/rds/event_subscription_tests.rb +0 -30
  720. data/tests/requests/rds/helper.rb +0 -401
  721. data/tests/requests/rds/instance_option_tests.rb +0 -21
  722. data/tests/requests/rds/instance_tests.rb +0 -149
  723. data/tests/requests/rds/log_file_tests.rb +0 -19
  724. data/tests/requests/rds/parameter_group_tests.rb +0 -62
  725. data/tests/requests/rds/parameter_request_tests.rb +0 -32
  726. data/tests/requests/rds/security_group_tests.rb +0 -101
  727. data/tests/requests/rds/subnet_groups_tests.rb +0 -52
  728. data/tests/requests/rds/tagging_tests.rb +0 -78
  729. data/tests/requests/redshift/cluster_parameter_group_tests.rb +0 -76
  730. data/tests/requests/redshift/cluster_security_group_tests.rb +0 -42
  731. data/tests/requests/redshift/cluster_snapshot_tests.rb +0 -73
  732. data/tests/requests/redshift/cluster_tests.rb +0 -80
  733. data/tests/requests/ses/helper.rb +0 -9
  734. data/tests/requests/ses/verified_domain_identity_tests.rb +0 -16
  735. data/tests/requests/ses/verified_email_address_tests.rb +0 -27
  736. data/tests/requests/simpledb/attributes_tests.rb +0 -86
  737. data/tests/requests/simpledb/domain_tests.rb +0 -51
  738. data/tests/requests/simpledb/helper.rb +0 -10
  739. data/tests/requests/sns/helper.rb +0 -9
  740. data/tests/requests/sns/subscription_tests.rb +0 -86
  741. data/tests/requests/sns/topic_tests.rb +0 -53
  742. data/tests/requests/sqs/helper.rb +0 -9
  743. data/tests/requests/sqs/message_tests.rb +0 -51
  744. data/tests/requests/sqs/queue_tests.rb +0 -50
  745. data/tests/requests/storage/acl_utils_tests.rb +0 -209
  746. data/tests/requests/storage/bucket_tests.rb +0 -416
  747. data/tests/requests/storage/cors_utils_tests.rb +0 -108
  748. data/tests/requests/storage/delete_multiple_objects_tests.rb +0 -12
  749. data/tests/requests/storage/multipart_upload_tests.rb +0 -121
  750. data/tests/requests/storage/object_tests.rb +0 -271
  751. data/tests/requests/storage/versioning_tests.rb +0 -262
  752. data/tests/requests/sts/assume_role_tests.rb +0 -19
  753. data/tests/requests/sts/assume_role_with_saml_tests.rb +0 -18
  754. data/tests/requests/sts/assume_role_with_web_identity_tests.rb +0 -26
  755. data/tests/requests/sts/get_federation_token_tests.rb +0 -20
  756. data/tests/requests/sts/session_token_tests.rb +0 -16
  757. data/tests/requests/support/helper.rb +0 -43
  758. data/tests/requests/support/trusted_advisor_check_tests.rb +0 -16
  759. data/tests/signaturev4_tests.rb +0 -107
  760. data/tests/signed_params_tests.rb +0 -17
  761. data/tests/storage_tests.rb +0 -7
@@ -1,55 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | internet_gateway requests', ['aws']) do
2
-
3
- tests('success') do
4
- Fog::Compute::AWS::Mock.reset if Fog.mocking?
5
-
6
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
7
- @vpc_id = @vpc.id
8
-
9
- @subnet=Fog::Compute[:aws].subnets.create('vpc_id' => @vpc_id, 'cidr_block' => '10.0.10.0/24')
10
- @subnet_id = @subnet.subnet_id
11
-
12
- @network_interface = Fog::Compute[:aws].network_interfaces.new(:subnet_id => @subnet_id)
13
- @network_interface.save
14
- @network_interface_id = @network_interface.network_interface_id
15
-
16
- @ip_address = Fog::AWS::Mock.ip_address
17
- @second_ip_address = Fog::AWS::Mock.ip_address
18
-
19
- tests("#assign_private_ip_addresses('#{@network_interface_id}', {'PrivateIpAddresses'=>['#{@ip_address}','#{@second_ip_address}']})").formats(AWS::Compute::Formats::BASIC) do
20
- Fog::Compute[:aws].assign_private_ip_addresses(@network_interface_id, { 'PrivateIpAddresses' =>[@ip_address, @second_ip_address]}).body
21
- end
22
-
23
- tests("#assign_private_ip_addresses('#{@network_interface_id}', {'SecondaryPrivateIpAddressCount'=>4})").formats(AWS::Compute::Formats::BASIC) do
24
- Fog::Compute[:aws].assign_private_ip_addresses(@network_interface_id, {'SecondaryPrivateIpAddressCount'=>4}).body
25
- end
26
-
27
- @network_interface.destroy
28
- @subnet.destroy
29
- @vpc.destroy
30
- end
31
-
32
- tests('failure') do
33
- Fog::Compute::AWS::Mock.reset if Fog.mocking?
34
-
35
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
36
- @vpc_id = @vpc.id
37
-
38
- @subnet=Fog::Compute[:aws].subnets.create('vpc_id' => @vpc_id, 'cidr_block' => '10.0.10.0/24')
39
- @subnet_id = @subnet.subnet_id
40
-
41
- @network_interface = Fog::Compute[:aws].network_interfaces.new(:subnet_id => @subnet_id)
42
- @network_interface.save
43
- @network_interface_id = @network_interface.network_interface_id
44
-
45
- @ip_address = Fog::AWS::Mock.ip_address
46
-
47
- tests("#assign_private_ip_addresses('#{@network_interface_id}', {'PrivateIpAddresses'=>['#{@ip_address}','#{@second_ip_address}'], 'SecondaryPrivateIpAddressCount'=>4 })").raises(Fog::Compute::AWS::Error) do
48
- Fog::Compute[:aws].assign_private_ip_addresses(@network_interface_id, { 'PrivateIpAddresses' =>[@ip_address, @second_ip_address], 'SecondaryPrivateIpAddressCount'=>4 }).body
49
- end
50
-
51
- @network_interface.destroy
52
- @subnet.destroy
53
- @vpc.destroy
54
- end
55
- end
@@ -1,25 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | availability zone requests', ['aws']) do
2
-
3
- @availability_zones_format = {
4
- 'availabilityZoneInfo' => [{
5
- 'messageSet' => [],
6
- 'regionName' => String,
7
- 'zoneName' => String,
8
- 'zoneState' => String
9
- }],
10
- 'requestId' => String
11
- }
12
-
13
- tests('success') do
14
-
15
- tests('#describe_availability_zones').formats(@availability_zones_format) do
16
- Fog::Compute[:aws].describe_availability_zones.body
17
- end
18
-
19
- tests("#describe_availability_zones('zone-name' => 'us-east-1a')").formats(@availability_zones_format) do
20
- Fog::Compute[:aws].describe_availability_zones('zone-name' => 'us-east-1a').body
21
- end
22
-
23
- end
24
-
25
- end
@@ -1,25 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | account tests', ['aws']) do
2
- if Fog.mocking?
3
- tests('check for vpc') do
4
- tests('supports both vpc and ec2 in compatibility mode').succeeds do
5
- client = Fog::Compute[:aws]
6
- client.enable_ec2_classic
7
- data = Fog::Compute[:aws].describe_account_attributes.body
8
- data['accountAttributeSet'].any? { |s| [*s["values"]].include?("VPC") && [*s["values"]].include?("EC2") }
9
- end
10
- tests('supports VPC in vpc mode').succeeds do
11
- client = Fog::Compute[:aws]
12
- client.enable_ec2_classic
13
- data = Fog::Compute[:aws].describe_account_attributes.body
14
- data['accountAttributeSet'].any? { |s| [*s["values"]].include?("VPC") }
15
- end
16
-
17
- tests('does not support VPC and EC2 in vpc mode').succeeds do
18
- client = Fog::Compute[:aws]
19
- client.disable_ec2_classic
20
- data = Fog::Compute[:aws].describe_account_attributes.body
21
- !data['accountAttributeSet'].any? { |s| [*s["values"]].include?("VPC") && [*s["values"]].include?("EC2") }
22
- end
23
- end
24
- end
25
- end
@@ -1,39 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | dhcp_options requests', ['aws']) do
2
-
3
- @dhcp_options_format = {
4
- 'dhcpOptionsSet' => [{
5
- 'dhcpOptionsId' => String,
6
- 'dhcpConfigurationSet' => Hash,
7
- 'tagSet' => Fog::Nullable::Hash,
8
- }],
9
- 'requestId' => String
10
- }
11
-
12
- tests('success') do
13
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
14
- @vpc_id = @vpc.id
15
-
16
- tests('#create_dhcp_options').formats(@dhcp_options_format) do
17
- data = Fog::Compute[:aws].create_dhcp_options({'domain-name' => 'example.com', 'domain-name-servers' => '10.10.10.10'}).body
18
- @dopt_id = data['dhcpOptionsSet'].first['dhcpOptionsId']
19
- data
20
- end
21
-
22
- tests('#describe_dhcp_options').formats(@dhcp_options_format) do
23
- Fog::Compute[:aws].describe_dhcp_options.body
24
- end
25
-
26
- tests("#associate_dhcp_options('#{@dopt_id}, #{@vpc_id}')").formats(AWS::Compute::Formats::BASIC) do
27
- Fog::Compute[:aws].associate_dhcp_options(@dopt_id, @vpc_id).body
28
- end
29
-
30
- tests("#associate_default_dhcp_options('default', #{@vpc_id}')").formats(AWS::Compute::Formats::BASIC) do
31
- Fog::Compute[:aws].associate_dhcp_options('default', @vpc_id).body
32
- end
33
-
34
- tests("#delete_dhcp_options('#{@dopt_id}')").formats(AWS::Compute::Formats::BASIC) do
35
- Fog::Compute[:aws].delete_dhcp_options(@dopt_id).body
36
- end
37
- @vpc.destroy
38
- end
39
- end
@@ -1,27 +0,0 @@
1
- class AWS
2
- module Compute
3
- module Formats
4
- BASIC = {
5
- 'requestId' => String
6
- }
7
-
8
- DESCRIBE_IMAGES = BASIC.merge({
9
- "imagesSet" => [{
10
- "imageId" => String,
11
- "imageLocation" => String,
12
- "imageState" => String,
13
- "imageOwnerId" => String,
14
- "creationDate" => Fog::Nullable::String,
15
- "isPublic" => Fog::Nullable::Boolean,
16
- "architecture" => String,
17
- "imageType" => String,
18
- "imageOwnerAlias" => String,
19
- "rootDeviceType" => String,
20
- "blockDeviceMapping" => Array,
21
- "virtualizationType" => String,
22
- "hypervisor" => String
23
- }]
24
- })
25
- end
26
- end
27
- end
@@ -1,160 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | image requests', ['aws']) do
2
- @describe_images_format = {
3
- 'imagesSet' => [{
4
- 'architecture' => String,
5
- 'blockDeviceMapping' => [Fog::Nullable::Hash],
6
- 'description' => Fog::Nullable::String,
7
- 'hypervisor' => String,
8
- 'imageId' => String,
9
- 'imageLocation' => String,
10
- 'imageOwnerAlias' => Fog::Nullable::String,
11
- 'imageOwnerId' => String,
12
- 'imageState' => String,
13
- 'imageType' => String,
14
- 'isPublic' => Fog::Boolean,
15
- 'kernelId' => String,
16
- 'name' => String,
17
- 'platform' => Fog::Nullable::String,
18
- 'productCodes' => [],
19
- 'ramdiskId' => Fog::Nullable::String,
20
- 'rootDeviceName' => String,
21
- 'rootDeviceType' => String,
22
- 'stateReason' => {},
23
- 'tagSet' => {},
24
- 'virtualizationType' => String,
25
- 'creationDate' => Fog::Nullable::Time,
26
- 'enaSupport' => Fog::Nullable::Boolean
27
- }],
28
- 'requestId' => String,
29
- }
30
-
31
- @register_image_format = {
32
- 'imageId' => String,
33
- 'requestId' => String
34
- }
35
-
36
- @modify_image_attribute_format = {
37
- 'return' => Fog::Boolean,
38
- 'requestId' => String
39
- }
40
- @create_image_format = {
41
- 'requestId' => String,
42
- 'imageId' => String
43
- }
44
-
45
- @image_copy_result = {
46
- 'requestId' => String,
47
- 'imageId' => String
48
- }
49
-
50
- tests('success') do
51
- # the result for this is HUGE and relatively uninteresting...
52
- # tests("#describe_images").formats(@images_format) do
53
- # Fog::Compute[:aws].describe_images.body
54
- # end
55
- @image_id = 'ami-1aad5273'
56
-
57
- if Fog.mocking?
58
- @other_account = Fog::Compute::AWS.new(:aws_access_key_id => 'other', :aws_secret_access_key => 'account')
59
-
60
- @server = Fog::Compute[:aws].servers.create
61
- @server.wait_for{state == 'running'}
62
- @created_image
63
- tests("#create_image").formats(@create_image_format) do
64
- result = Fog::Compute[:aws].create_image(@server.id, 'Fog-Test-Image', 'Fog Test Image', false).body
65
- @created_image = Fog::Compute[:aws].images.get(result['imageId'])
66
- result
67
- end
68
- tests("#create_image - no reboot").formats(@create_image_format) do
69
- result = Fog::Compute[:aws].create_image(@server.id, 'Fog-Test-Image', 'Fog Test Image', true).body
70
- @created_image = Fog::Compute[:aws].images.get(result['imageId'])
71
- result
72
- end
73
- tests("#create_image - automatic ebs image registration").returns(true) do
74
- create_image_response = Fog::Compute[:aws].create_image(@server.id, 'Fog-Test-Image', 'Fog Test Image')
75
- Fog::Compute[:aws].images.get(create_image_response.body['imageId']) != nil
76
- end
77
- @server.destroy
78
-
79
- tests("#copy_image (#{@image_id}, 'eu-west-1')").formats(@image_copy_result) do
80
- data = Fog::Compute.new(:provider => :aws, :region => "us-west-1", :version => "2013-02-01").copy_image(@image_id, "eu-east-1").body
81
- @eu_image_id = data['imageId']
82
- data
83
- end
84
-
85
- tests("#register_image").formats(@register_image_format) do
86
- @image = Fog::Compute[:aws].register_image('image', 'image', '/dev/sda1').body
87
- end
88
-
89
- tests("#register_image - with ebs block device mapping").formats(@register_image_format) do
90
- @ebs_image = Fog::Compute[:aws].register_image('image', 'image', '/dev/sda1', [ { 'DeviceName' => '/dev/sdh', "SnapshotId" => "snap-123456789", "VolumeSize" => "10G", "DeleteOnTermination" => true}]).body
91
- end
92
-
93
- tests("#register_image - with ephemeral block device mapping").formats(@register_image_format) do
94
- @ephemeral_image = Fog::Compute[:aws].register_image('image', 'image', '/dev/sda1', [ { 'VirtualName' => 'ephemeral0', "DeviceName" => "/dev/sdb"} ]).body
95
- end
96
-
97
- @image_id = @image['imageId']
98
- sleep 1
99
-
100
- tests("#describe_images('Owner' => 'self')").formats(@describe_images_format) do
101
- Fog::Compute[:aws].describe_images('Owner' => 'self').body
102
- end
103
-
104
- tests("#describe_images('state' => 'available')").formats(@describe_images_format) do
105
- Fog::Compute[:aws].describe_images('state' => 'available').body
106
- end
107
-
108
- tests("other_account#describe_images('image-id' => '#{@image_id}')").returns([]) do
109
- @other_account.describe_images('image-id' => @image_id).body['imagesSet']
110
- end
111
-
112
- tests("#modify_image_attribute('#{@image_id}', 'Add.UserId' => ['#{@other_account.data[:owner_id]}'])").formats(@modify_image_attribute_format) do
113
- Fog::Compute[:aws].modify_image_attribute(@image_id, { 'Add.UserId' => [@other_account.data[:owner_id]] }).body
114
- end
115
-
116
- tests("other_account#describe_images('image-id' => '#{@image_id}')").returns([@image_id]) do
117
- @other_account.describe_images('image-id' => @image_id).body['imagesSet'].map {|i| i['imageId'] }
118
- end
119
-
120
- tests("#modify_image_attribute('#{@image_id}', 'Remove.UserId' => ['#{@other_account.data[:owner_id]}'])").formats(@modify_image_attribute_format) do
121
- Fog::Compute[:aws].modify_image_attribute(@image_id, { 'Remove.UserId' => [@other_account.data[:owner_id]] }).body
122
- end
123
-
124
- tests("other_account#describe_images('image-id' => '#{@image_id}')").returns([]) do
125
- @other_account.describe_images('image-id' => @image_id).body['imagesSet']
126
- end
127
- end
128
-
129
- tests("#describe_images('image-id' => '#{@image_id}')").formats(@describe_images_format) do
130
- @other_image = Fog::Compute[:aws].describe_images('image-id' => @image_id).body
131
- end
132
-
133
- unless Fog.mocking?
134
- tests("#describe_images('Owner' => '#{@other_image['imageOwnerAlias']}', 'image-id' => '#{@image_id}')").formats(@describe_images_format) do
135
- Fog::Compute[:aws].describe_images('Owner' => @other_image['imageOwnerAlias'], 'image-id' => @image_id).body
136
- end
137
- end
138
-
139
- #NOTE: waiting for the image to complete can sometimes take up to 1 hour
140
- # for quicker tests: uncomment the rest of this block
141
- #Fog.wait_for { Fog::Compute.new(:provider => :aws, :region => "us-west-1").snapshots.get(@eu_image_id) }
142
-
143
- #tests("#delete_snapshots(#{@eu_image_id})").formats(AWS::Compute::Formats::BASIC) do
144
- # Fog::Compute.new(:provider => :aws, :region => "us-west-1").delete_snapshot(@eu_image_id).body
145
- #end
146
-
147
- end
148
-
149
- tests('failure') do
150
- tests("#modify_image_attribute(nil, { 'Add.Group' => ['all'] })").raises(ArgumentError) do
151
- Fog::Compute[:aws].modify_image_attribute(nil, { 'Add.Group' => ['all'] }).body
152
- end
153
-
154
- tests("#modify_image_attribute('ami-00000000', { 'Add.UserId' => ['123456789012'] })").raises(Fog::Compute::AWS::NotFound) do
155
- pending unless Fog.mocking?
156
-
157
- Fog::Compute[:aws].modify_image_attribute('ami-00000000', { 'Add.UserId' => ['123456789012'] }).body
158
- end
159
- end
160
- end
@@ -1,168 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | describe_instance_attribute request', ['aws']) do
2
- @instance_attributes = [
3
- 'instanceType',
4
- 'kernel',
5
- 'ramdisk',
6
- 'userData',
7
- 'disableApiTermination',
8
- 'instanceInitiatedShutdownBehavior',
9
- 'rootDeviceName',
10
- 'blockDeviceMapping',
11
- 'productCodes',
12
- 'groupSet',
13
- 'ebsOptimized',
14
- 'sourceDestCheck',
15
- 'sriovNetSupport'
16
- ]
17
-
18
- @instance_attribute_common_format = {
19
- "requestId" => String,
20
- "instanceId" => String
21
- }
22
-
23
- @instance_attribute_format = {
24
- "instanceType" => Fog::Nullable::String,
25
- "kernelId" => Fog::Nullable::String,
26
- "ramdiskId" => Fog::Nullable::String,
27
- "userData" => Fog::Nullable::String,
28
- "disableApiTermination" => Fog::Nullable::Boolean,
29
- "instanceInitiatedShutdownBehavior" => Fog::Nullable::String,
30
- "rootDeviceName" => Fog::Nullable::String,
31
- "blockDeviceMapping" => [Fog::Nullable::Hash],
32
- "productCodes" => Fog::Nullable::Array,
33
- "ebsOptimized" => Fog::Nullable::Boolean,
34
- "sriovNetSupport" => Fog::Nullable::String,
35
- "sourceDestCheck" => Fog::Nullable::Boolean,
36
- "groupSet" => [Fog::Nullable::Hash]
37
- }
38
-
39
- tests('success') do
40
-
41
- # In mocking the groupSet attribute is returned as nil
42
- if Fog.mocking?
43
- @instance_attribute_format["groupSet"] = Fog::Nullable::Array
44
- end
45
- # Setting up the environment
46
- @instance_id = nil
47
- @ami = 'ami-79c0ae10'
48
- key_name = uniq_id('fog-test-key')
49
- @key = Fog::Compute[:aws].key_pairs.create(:name => key_name)
50
- instance_type = "t1.micro"
51
- @az = "us-east-1a"
52
- vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/16')
53
- subnet = Fog::Compute[:aws].subnets.create('vpc_id' => vpc.id, 'cidr_block' => '10.0.10.0/16', "availability_zone" => @az)
54
- security_groups = Fog::Compute[:aws].security_groups.all
55
- @launch_config = {
56
- :image_id => @ami,
57
- :flavor_id => instance_type,
58
- :key_name => key_name,
59
- :subnet_id => subnet.subnet_id,
60
- :disable_api_termination => false
61
- }
62
- if !Fog.mocking?
63
- security_group = security_groups.select { |group| group.vpc_id == vpc.id }
64
- security_group_ids = security_group.collect { |group| group.group_id }
65
- @launch_config[:security_group_ids] = security_group_ids
66
- block_device_mapping = [{"DeviceName" => "/dev/sdp1", "VirtualName" => nil, "Ebs.VolumeSize" => 15}]
67
- @launch_config[:block_device_mapping] = block_device_mapping
68
- else
69
- security_group_ids = [nil]
70
- # In mocking the first device provided in block_device_mapping is set as the root device. There is no root device by default. So setting the root device here so that the tests for rootDeviceName and blockDeviceMapping attribute get passed
71
- block_device_mapping = [{"DeviceName" => "/dev/sda1", "VirtualName" => nil, "Ebs.VolumeSize" => 15},{"DeviceName" => "/dev/sdp1", "VirtualName" => nil, "Ebs.VolumeSize" => 15}]
72
- @launch_config[:block_device_mapping] = block_device_mapping
73
- end
74
-
75
-
76
-
77
- server = Fog::Compute[:aws].servers.create(@launch_config)
78
- server.wait_for { ready? }
79
- server.reload
80
- @instance_id = server.id
81
- ################
82
- # BEGIN TESTS #
83
- ################
84
- @instance_attributes.each do |attrib|
85
- # Creating format schema for each attribute
86
- describe_instance_attribute_format = @instance_attribute_common_format.clone
87
- if attrib == "kernel"
88
- key = "kernelId"
89
- elsif attrib == "ramdisk"
90
- key = "ramdiskId"
91
- else
92
- key = attrib
93
- end
94
- describe_instance_attribute_format[key] = @instance_attribute_format[key]
95
- # Running format check
96
- tests("#describe_instance_attribute('#{@instance_id}', #{attrib})").formats(describe_instance_attribute_format,false) do
97
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, attrib).body
98
- end
99
- # Running test to see proper instance Id is get in each response
100
- tests("#describe_instance_attribute('#{@instance_id}', #{attrib})").returns(@instance_id) do
101
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, attrib).body['instanceId']
102
- end
103
- end
104
-
105
- # Test for instanceType attribute
106
- tests("#describe_instance_attribute(#{@instance_id}, 'instanceType')").returns(instance_type) do
107
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'instanceType').body["instanceType"]
108
- end
109
- # Test for disableApiTermination attribute
110
- tests("#describe_instance_attribute(#{@instance_id}, 'disableApiTermination')").returns(false) do
111
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'disableApiTermination').body["disableApiTermination"]
112
- end
113
- # Test for instanceInitiatedShutdownBehavior attribute
114
- tests("#describe_instance_attribute(#{@instance_id}, 'instanceInitiatedShutdownBehavior')").returns('stop') do
115
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'instanceInitiatedShutdownBehavior').body["instanceInitiatedShutdownBehavior"]
116
- end
117
- # Test for rootDeviceName attribute
118
- tests("#describe_instance_attribute(#{@instance_id}, 'rootDeviceName')").returns('/dev/sda1') do
119
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'rootDeviceName').body["rootDeviceName"]
120
- end
121
- # Test to see there are two devices for blockDeviceMapping attribute
122
- tests("#describe_instance_attribute(#{@instance_id}, 'blockDeviceMapping')").returns(2) do
123
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'blockDeviceMapping').body["blockDeviceMapping"].count
124
- end
125
- # Test to check the device name /dev/sdp1 passed in block_device_mapping is returned correctly
126
- tests("#describe_instance_attribute(#{@instance_id}, 'blockDeviceMapping')").returns("/dev/sdp1") do
127
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'blockDeviceMapping').body["blockDeviceMapping"].last["deviceName"]
128
- end
129
- # Test for groupSet attribute
130
- tests("#describe_instance_attribute(#{@instance_id}, 'groupSet')").returns(security_group_ids) do
131
- group_set = Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'groupSet').body["groupSet"]
132
- group_set.collect { |g| g["groupId"]}
133
- end
134
- # Test for sourceDestCheck attribute (This attribute is set only for VPC instances. So created the instance in a VPC during setup process)
135
- tests("#describe_instance_attribute(#{@instance_id}, 'sourceDestCheck')").returns(true) do
136
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'sourceDestCheck').body["sourceDestCheck"]
137
- end
138
- # Test for ebsOptimized attribute
139
- tests("#describe_instance_attribute(#{@instance_id}, 'ebsOptimized')").returns(false) do
140
- Fog::Compute[:aws].describe_instance_attribute(@instance_id, 'ebsOptimized').body["ebsOptimized"]
141
- end
142
- ###############
143
- # END OF TEST #
144
- ###############
145
-
146
- # Tear down
147
- if !Fog.mocking?
148
- @key.destroy
149
- server.destroy
150
- until server.state == "terminated"
151
- sleep 5 #Wait for the server to be terminated
152
- server.reload
153
- end
154
- subnet.destroy
155
- vpc.destroy
156
- end
157
-
158
- end
159
-
160
- tests('failure') do
161
- @instance_attributes.each do |attrib|
162
- tests("#describe_instance_attribute('i-00000000', #{attrib})").raises(Fog::Compute::AWS::NotFound) do
163
- Fog::Compute[:aws].describe_instance_attribute('i-00000000', attrib)
164
- end
165
- end
166
- end
167
-
168
- end