aws-sdk-euca 1.8.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (539) hide show
  1. data/.yardopts +5 -0
  2. data/LICENSE.txt +12 -0
  3. data/README.rdoc +189 -0
  4. data/ca-bundle.crt +3895 -0
  5. data/lib/aws-sdk-euca.rb +79 -0
  6. data/lib/aws-sdk.rb +79 -0
  7. data/lib/aws.rb +14 -0
  8. data/lib/aws/api_config/AutoScaling-2011-01-01.yml +825 -0
  9. data/lib/aws/api_config/CloudFormation-2010-05-15.yml +322 -0
  10. data/lib/aws/api_config/CloudFront-2012-05-05.yml +2102 -0
  11. data/lib/aws/api_config/CloudSearch-2011-02-01.yml +681 -0
  12. data/lib/aws/api_config/CloudWatch-2010-08-01.yml +433 -0
  13. data/lib/aws/api_config/DataPipeline-2012-10-29.yml +422 -0
  14. data/lib/aws/api_config/DynamoDB-2011-12-05.yml +1160 -0
  15. data/lib/aws/api_config/EC2-2013-02-01.yml +4368 -0
  16. data/lib/aws/api_config/ELB-2012-06-01.yml +597 -0
  17. data/lib/aws/api_config/EMR-2009-03-31.yml +370 -0
  18. data/lib/aws/api_config/ElastiCache-2012-03-09.yml +777 -0
  19. data/lib/aws/api_config/ElastiCache-2012-11-15.yml +979 -0
  20. data/lib/aws/api_config/ElasticBeanstalk-2010-12-01.yml +823 -0
  21. data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +1036 -0
  22. data/lib/aws/api_config/Glacier-2012-06-01.yml +618 -0
  23. data/lib/aws/api_config/IAM-2010-05-08.yml +1222 -0
  24. data/lib/aws/api_config/ImportExport-2010-06-01.yml +109 -0
  25. data/lib/aws/api_config/OpsWorks-2013-02-18.yml +1463 -0
  26. data/lib/aws/api_config/RDS-2012-09-17.yml +1861 -0
  27. data/lib/aws/api_config/RDS-2013-02-12.yml +2377 -0
  28. data/lib/aws/api_config/Redshift-2012-12-01.yml +1149 -0
  29. data/lib/aws/api_config/Route53-2012-02-29.yml +380 -0
  30. data/lib/aws/api_config/Route53-2012-12-12.yml +547 -0
  31. data/lib/aws/api_config/SNS-2010-03-31.yml +249 -0
  32. data/lib/aws/api_config/SQS-2012-11-05.yml +317 -0
  33. data/lib/aws/api_config/STS-2011-06-15.yml +81 -0
  34. data/lib/aws/api_config/SimpleDB-2009-04-15.yml +306 -0
  35. data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +346 -0
  36. data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +2358 -0
  37. data/lib/aws/api_config/StorageGateway-2012-06-30.yml +748 -0
  38. data/lib/aws/auto_scaling.rb +164 -0
  39. data/lib/aws/auto_scaling/activity.rb +102 -0
  40. data/lib/aws/auto_scaling/activity_collection.rb +82 -0
  41. data/lib/aws/auto_scaling/client.rb +521 -0
  42. data/lib/aws/auto_scaling/config.rb +18 -0
  43. data/lib/aws/auto_scaling/errors.rb +22 -0
  44. data/lib/aws/auto_scaling/group.rb +420 -0
  45. data/lib/aws/auto_scaling/group_collection.rb +96 -0
  46. data/lib/aws/auto_scaling/group_options.rb +146 -0
  47. data/lib/aws/auto_scaling/instance.rb +192 -0
  48. data/lib/aws/auto_scaling/instance_collection.rb +63 -0
  49. data/lib/aws/auto_scaling/launch_configuration.rb +158 -0
  50. data/lib/aws/auto_scaling/launch_configuration_collection.rb +154 -0
  51. data/lib/aws/auto_scaling/notification_configuration.rb +89 -0
  52. data/lib/aws/auto_scaling/notification_configuration_collection.rb +184 -0
  53. data/lib/aws/auto_scaling/request.rb +29 -0
  54. data/lib/aws/auto_scaling/scaling_policy.rb +142 -0
  55. data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
  56. data/lib/aws/auto_scaling/scaling_policy_options.rb +64 -0
  57. data/lib/aws/auto_scaling/scheduled_action.rb +145 -0
  58. data/lib/aws/auto_scaling/scheduled_action_collection.rb +195 -0
  59. data/lib/aws/auto_scaling/tag.rb +59 -0
  60. data/lib/aws/auto_scaling/tag_collection.rb +112 -0
  61. data/lib/aws/cloud_formation.rb +272 -0
  62. data/lib/aws/cloud_formation/client.rb +369 -0
  63. data/lib/aws/cloud_formation/config.rb +18 -0
  64. data/lib/aws/cloud_formation/errors.rb +22 -0
  65. data/lib/aws/cloud_formation/request.rb +29 -0
  66. data/lib/aws/cloud_formation/stack.rb +255 -0
  67. data/lib/aws/cloud_formation/stack_collection.rb +209 -0
  68. data/lib/aws/cloud_formation/stack_event.rb +75 -0
  69. data/lib/aws/cloud_formation/stack_event_collection.rb +47 -0
  70. data/lib/aws/cloud_formation/stack_options.rb +72 -0
  71. data/lib/aws/cloud_formation/stack_output.rb +53 -0
  72. data/lib/aws/cloud_formation/stack_resource.rb +117 -0
  73. data/lib/aws/cloud_formation/stack_resource_collection.rb +84 -0
  74. data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +64 -0
  75. data/lib/aws/cloud_formation/stack_summary_collection.rb +123 -0
  76. data/lib/aws/cloud_front.rb +73 -0
  77. data/lib/aws/cloud_front/client.rb +1307 -0
  78. data/lib/aws/cloud_front/config.rb +18 -0
  79. data/lib/aws/cloud_front/errors.rb +22 -0
  80. data/lib/aws/cloud_front/request.rb +44 -0
  81. data/lib/aws/cloud_search.rb +74 -0
  82. data/lib/aws/cloud_search/client.rb +558 -0
  83. data/lib/aws/cloud_search/config.rb +18 -0
  84. data/lib/aws/cloud_search/errors.rb +22 -0
  85. data/lib/aws/cloud_search/request.rb +23 -0
  86. data/lib/aws/cloud_watch.rb +119 -0
  87. data/lib/aws/cloud_watch/alarm.rb +272 -0
  88. data/lib/aws/cloud_watch/alarm_collection.rb +153 -0
  89. data/lib/aws/cloud_watch/alarm_history_item.rb +50 -0
  90. data/lib/aws/cloud_watch/alarm_history_item_collection.rb +84 -0
  91. data/lib/aws/cloud_watch/client.rb +247 -0
  92. data/lib/aws/cloud_watch/config.rb +18 -0
  93. data/lib/aws/cloud_watch/errors.rb +22 -0
  94. data/lib/aws/cloud_watch/metric.rb +135 -0
  95. data/lib/aws/cloud_watch/metric_alarm_collection.rb +160 -0
  96. data/lib/aws/cloud_watch/metric_collection.rb +131 -0
  97. data/lib/aws/cloud_watch/metric_statistics.rb +69 -0
  98. data/lib/aws/cloud_watch/request.rb +23 -0
  99. data/lib/aws/core.rb +587 -0
  100. data/lib/aws/core/async_handle.rb +90 -0
  101. data/lib/aws/core/autoloader.rb +64 -0
  102. data/lib/aws/core/cacheable.rb +78 -0
  103. data/lib/aws/core/client.rb +691 -0
  104. data/lib/aws/core/collection.rb +267 -0
  105. data/lib/aws/core/collection/simple.rb +82 -0
  106. data/lib/aws/core/collection/with_limit_and_next_token.rb +71 -0
  107. data/lib/aws/core/collection/with_next_token.rb +97 -0
  108. data/lib/aws/core/configuration.rb +546 -0
  109. data/lib/aws/core/credential_providers.rb +461 -0
  110. data/lib/aws/core/data.rb +247 -0
  111. data/lib/aws/core/http/curb_handler.rb +155 -0
  112. data/lib/aws/core/http/handler.rb +89 -0
  113. data/lib/aws/core/http/net_http_handler.rb +128 -0
  114. data/lib/aws/core/http/request.rb +263 -0
  115. data/lib/aws/core/http/response.rb +81 -0
  116. data/lib/aws/core/indifferent_hash.rb +88 -0
  117. data/lib/aws/core/inflection.rb +56 -0
  118. data/lib/aws/core/json_client.rb +47 -0
  119. data/lib/aws/core/json_parser.rb +76 -0
  120. data/lib/aws/core/json_request_builder.rb +35 -0
  121. data/lib/aws/core/json_response_parser.rb +79 -0
  122. data/lib/aws/core/lazy_error_classes.rb +90 -0
  123. data/lib/aws/core/log_formatter.rb +462 -0
  124. data/lib/aws/core/managed_file.rb +32 -0
  125. data/lib/aws/core/meta_utils.rb +45 -0
  126. data/lib/aws/core/model.rb +57 -0
  127. data/lib/aws/core/naming.rb +30 -0
  128. data/lib/aws/core/option_grammar.rb +735 -0
  129. data/lib/aws/core/options/json_serializer.rb +82 -0
  130. data/lib/aws/core/options/validator.rb +155 -0
  131. data/lib/aws/core/options/xml_serializer.rb +118 -0
  132. data/lib/aws/core/page_result.rb +75 -0
  133. data/lib/aws/core/policy.rb +916 -0
  134. data/lib/aws/core/query_client.rb +41 -0
  135. data/lib/aws/core/query_error_parser.rb +24 -0
  136. data/lib/aws/core/query_request_builder.rb +47 -0
  137. data/lib/aws/core/query_response_parser.rb +35 -0
  138. data/lib/aws/core/resource.rb +413 -0
  139. data/lib/aws/core/resource_cache.rb +40 -0
  140. data/lib/aws/core/response.rb +208 -0
  141. data/lib/aws/core/response_cache.rb +50 -0
  142. data/lib/aws/core/rest_error_parser.rb +24 -0
  143. data/lib/aws/core/rest_json_client.rb +40 -0
  144. data/lib/aws/core/rest_request_builder.rb +146 -0
  145. data/lib/aws/core/rest_response_parser.rb +66 -0
  146. data/lib/aws/core/rest_xml_client.rb +47 -0
  147. data/lib/aws/core/service_interface.rb +61 -0
  148. data/lib/aws/core/signature/version_2.rb +56 -0
  149. data/lib/aws/core/signature/version_3.rb +77 -0
  150. data/lib/aws/core/signature/version_3_https.rb +54 -0
  151. data/lib/aws/core/signature/version_4.rb +135 -0
  152. data/lib/aws/core/signer.rb +46 -0
  153. data/lib/aws/core/uri_escape.rb +44 -0
  154. data/lib/aws/core/xml/frame.rb +244 -0
  155. data/lib/aws/core/xml/frame_stack.rb +85 -0
  156. data/lib/aws/core/xml/grammar.rb +307 -0
  157. data/lib/aws/core/xml/parser.rb +70 -0
  158. data/lib/aws/core/xml/root_frame.rb +65 -0
  159. data/lib/aws/core/xml/sax_handlers/libxml.rb +47 -0
  160. data/lib/aws/core/xml/sax_handlers/nokogiri.rb +55 -0
  161. data/lib/aws/core/xml/sax_handlers/ox.rb +41 -0
  162. data/lib/aws/core/xml/sax_handlers/rexml.rb +43 -0
  163. data/lib/aws/core/xml/stub.rb +123 -0
  164. data/lib/aws/data_pipeline.rb +73 -0
  165. data/lib/aws/data_pipeline/client.rb +339 -0
  166. data/lib/aws/data_pipeline/config.rb +18 -0
  167. data/lib/aws/data_pipeline/errors.rb +20 -0
  168. data/lib/aws/data_pipeline/request.rb +26 -0
  169. data/lib/aws/dynamo_db.rb +206 -0
  170. data/lib/aws/dynamo_db/attribute_collection.rb +461 -0
  171. data/lib/aws/dynamo_db/batch_get.rb +213 -0
  172. data/lib/aws/dynamo_db/batch_write.rb +252 -0
  173. data/lib/aws/dynamo_db/binary.rb +35 -0
  174. data/lib/aws/dynamo_db/client.rb +904 -0
  175. data/lib/aws/dynamo_db/config.rb +24 -0
  176. data/lib/aws/dynamo_db/errors.rb +20 -0
  177. data/lib/aws/dynamo_db/expectations.rb +40 -0
  178. data/lib/aws/dynamo_db/item.rb +133 -0
  179. data/lib/aws/dynamo_db/item_collection.rb +852 -0
  180. data/lib/aws/dynamo_db/item_data.rb +31 -0
  181. data/lib/aws/dynamo_db/keys.rb +41 -0
  182. data/lib/aws/dynamo_db/primary_key_element.rb +48 -0
  183. data/lib/aws/dynamo_db/request.rb +26 -0
  184. data/lib/aws/dynamo_db/resource.rb +33 -0
  185. data/lib/aws/dynamo_db/table.rb +491 -0
  186. data/lib/aws/dynamo_db/table_collection.rb +165 -0
  187. data/lib/aws/dynamo_db/types.rb +111 -0
  188. data/lib/aws/ec2.rb +440 -0
  189. data/lib/aws/ec2/attachment.rb +140 -0
  190. data/lib/aws/ec2/attachment_collection.rb +54 -0
  191. data/lib/aws/ec2/availability_zone.rb +86 -0
  192. data/lib/aws/ec2/availability_zone_collection.rb +43 -0
  193. data/lib/aws/ec2/block_device_mappings.rb +53 -0
  194. data/lib/aws/ec2/client.rb +3621 -0
  195. data/lib/aws/ec2/collection.rb +36 -0
  196. data/lib/aws/ec2/config.rb +18 -0
  197. data/lib/aws/ec2/config_transform.rb +63 -0
  198. data/lib/aws/ec2/customer_gateway.rb +90 -0
  199. data/lib/aws/ec2/customer_gateway_collection.rb +73 -0
  200. data/lib/aws/ec2/dhcp_options.rb +106 -0
  201. data/lib/aws/ec2/dhcp_options_collection.rb +87 -0
  202. data/lib/aws/ec2/elastic_ip.rb +208 -0
  203. data/lib/aws/ec2/elastic_ip_collection.rb +97 -0
  204. data/lib/aws/ec2/errors.rb +32 -0
  205. data/lib/aws/ec2/export_task.rb +120 -0
  206. data/lib/aws/ec2/export_task_collection.rb +67 -0
  207. data/lib/aws/ec2/filtered_collection.rb +89 -0
  208. data/lib/aws/ec2/has_permissions.rb +44 -0
  209. data/lib/aws/ec2/image.rb +264 -0
  210. data/lib/aws/ec2/image_collection.rb +228 -0
  211. data/lib/aws/ec2/instance.rb +796 -0
  212. data/lib/aws/ec2/instance_collection.rb +372 -0
  213. data/lib/aws/ec2/internet_gateway.rb +122 -0
  214. data/lib/aws/ec2/internet_gateway/attachment.rb +78 -0
  215. data/lib/aws/ec2/internet_gateway_collection.rb +54 -0
  216. data/lib/aws/ec2/key_pair.rb +82 -0
  217. data/lib/aws/ec2/key_pair_collection.rb +99 -0
  218. data/lib/aws/ec2/network_acl.rb +256 -0
  219. data/lib/aws/ec2/network_acl/association.rb +56 -0
  220. data/lib/aws/ec2/network_acl/entry.rb +147 -0
  221. data/lib/aws/ec2/network_acl_collection.rb +64 -0
  222. data/lib/aws/ec2/network_interface.rb +228 -0
  223. data/lib/aws/ec2/network_interface/attachment.rb +100 -0
  224. data/lib/aws/ec2/network_interface_collection.rb +103 -0
  225. data/lib/aws/ec2/permission_collection.rb +174 -0
  226. data/lib/aws/ec2/region.rb +106 -0
  227. data/lib/aws/ec2/region_collection.rb +51 -0
  228. data/lib/aws/ec2/request.rb +21 -0
  229. data/lib/aws/ec2/reserved_instances.rb +56 -0
  230. data/lib/aws/ec2/reserved_instances_collection.rb +40 -0
  231. data/lib/aws/ec2/reserved_instances_offering.rb +60 -0
  232. data/lib/aws/ec2/reserved_instances_offering_collection.rb +39 -0
  233. data/lib/aws/ec2/resource.rb +161 -0
  234. data/lib/aws/ec2/resource_tag_collection.rb +211 -0
  235. data/lib/aws/ec2/route_table.rb +205 -0
  236. data/lib/aws/ec2/route_table/association.rb +119 -0
  237. data/lib/aws/ec2/route_table/route.rb +119 -0
  238. data/lib/aws/ec2/route_table_collection.rb +72 -0
  239. data/lib/aws/ec2/security_group.rb +484 -0
  240. data/lib/aws/ec2/security_group/ip_permission.rb +135 -0
  241. data/lib/aws/ec2/security_group/ip_permission_collection.rb +82 -0
  242. data/lib/aws/ec2/security_group_collection.rb +135 -0
  243. data/lib/aws/ec2/snapshot.rb +143 -0
  244. data/lib/aws/ec2/snapshot_collection.rb +132 -0
  245. data/lib/aws/ec2/subnet.rb +161 -0
  246. data/lib/aws/ec2/subnet_collection.rb +115 -0
  247. data/lib/aws/ec2/tag.rb +81 -0
  248. data/lib/aws/ec2/tag_collection.rb +107 -0
  249. data/lib/aws/ec2/tagged_collection.rb +53 -0
  250. data/lib/aws/ec2/tagged_item.rb +85 -0
  251. data/lib/aws/ec2/volume.rb +174 -0
  252. data/lib/aws/ec2/volume_collection.rb +101 -0
  253. data/lib/aws/ec2/vpc.rb +166 -0
  254. data/lib/aws/ec2/vpc_collection.rb +70 -0
  255. data/lib/aws/ec2/vpn_connection.rb +99 -0
  256. data/lib/aws/ec2/vpn_connection/telemetry.rb +49 -0
  257. data/lib/aws/ec2/vpn_connection_collection.rb +96 -0
  258. data/lib/aws/ec2/vpn_gateway.rb +123 -0
  259. data/lib/aws/ec2/vpn_gateway/attachment.rb +45 -0
  260. data/lib/aws/ec2/vpn_gateway_collection.rb +77 -0
  261. data/lib/aws/elastic_beanstalk.rb +50 -0
  262. data/lib/aws/elastic_beanstalk/client.rb +867 -0
  263. data/lib/aws/elastic_beanstalk/config.rb +18 -0
  264. data/lib/aws/elastic_beanstalk/errors.rb +22 -0
  265. data/lib/aws/elastic_beanstalk/request.rb +29 -0
  266. data/lib/aws/elastic_transcoder.rb +30 -0
  267. data/lib/aws/elastic_transcoder/client.rb +672 -0
  268. data/lib/aws/elastic_transcoder/config.rb +18 -0
  269. data/lib/aws/elastic_transcoder/errors.rb +23 -0
  270. data/lib/aws/elastic_transcoder/request.rb +30 -0
  271. data/lib/aws/elasticache.rb +50 -0
  272. data/lib/aws/elasticache/client.rb +920 -0
  273. data/lib/aws/elasticache/config.rb +18 -0
  274. data/lib/aws/elasticache/errors.rb +22 -0
  275. data/lib/aws/elasticache/request.rb +23 -0
  276. data/lib/aws/elb.rb +67 -0
  277. data/lib/aws/elb/availability_zone_collection.rb +138 -0
  278. data/lib/aws/elb/backend_server_policy_collection.rb +139 -0
  279. data/lib/aws/elb/client.rb +500 -0
  280. data/lib/aws/elb/config.rb +18 -0
  281. data/lib/aws/elb/errors.rb +26 -0
  282. data/lib/aws/elb/instance_collection.rb +173 -0
  283. data/lib/aws/elb/listener.rb +190 -0
  284. data/lib/aws/elb/listener_collection.rb +113 -0
  285. data/lib/aws/elb/listener_opts.rb +45 -0
  286. data/lib/aws/elb/load_balancer.rb +281 -0
  287. data/lib/aws/elb/load_balancer_collection.rb +134 -0
  288. data/lib/aws/elb/load_balancer_policy.rb +93 -0
  289. data/lib/aws/elb/load_balancer_policy_collection.rb +208 -0
  290. data/lib/aws/elb/request.rb +29 -0
  291. data/lib/aws/emr.rb +86 -0
  292. data/lib/aws/emr/client.rb +330 -0
  293. data/lib/aws/emr/config.rb +18 -0
  294. data/lib/aws/emr/errors.rb +22 -0
  295. data/lib/aws/emr/instance_group.rb +138 -0
  296. data/lib/aws/emr/instance_group_collection.rb +82 -0
  297. data/lib/aws/emr/job_flow.rb +306 -0
  298. data/lib/aws/emr/job_flow_collection.rb +185 -0
  299. data/lib/aws/emr/request.rb +23 -0
  300. data/lib/aws/errors.rb +162 -0
  301. data/lib/aws/glacier.rb +80 -0
  302. data/lib/aws/glacier/archive.rb +56 -0
  303. data/lib/aws/glacier/archive_collection.rb +146 -0
  304. data/lib/aws/glacier/client.rb +286 -0
  305. data/lib/aws/glacier/config.rb +19 -0
  306. data/lib/aws/glacier/errors.rb +22 -0
  307. data/lib/aws/glacier/request.rb +34 -0
  308. data/lib/aws/glacier/resource.rb +30 -0
  309. data/lib/aws/glacier/vault.rb +145 -0
  310. data/lib/aws/glacier/vault_collection.rb +75 -0
  311. data/lib/aws/glacier/vault_notification_configuration.rb +29 -0
  312. data/lib/aws/iam.rb +420 -0
  313. data/lib/aws/iam/access_key.rb +180 -0
  314. data/lib/aws/iam/access_key_collection.rb +128 -0
  315. data/lib/aws/iam/account_alias_collection.rb +79 -0
  316. data/lib/aws/iam/client.rb +1092 -0
  317. data/lib/aws/iam/collection.rb +83 -0
  318. data/lib/aws/iam/config.rb +18 -0
  319. data/lib/aws/iam/errors.rb +22 -0
  320. data/lib/aws/iam/group.rb +111 -0
  321. data/lib/aws/iam/group_collection.rb +132 -0
  322. data/lib/aws/iam/group_policy_collection.rb +47 -0
  323. data/lib/aws/iam/group_user_collection.rb +84 -0
  324. data/lib/aws/iam/login_profile.rb +99 -0
  325. data/lib/aws/iam/mfa_device.rb +52 -0
  326. data/lib/aws/iam/mfa_device_collection.rb +127 -0
  327. data/lib/aws/iam/policy.rb +46 -0
  328. data/lib/aws/iam/policy_collection.rb +188 -0
  329. data/lib/aws/iam/request.rb +29 -0
  330. data/lib/aws/iam/resource.rb +62 -0
  331. data/lib/aws/iam/server_certificate.rb +141 -0
  332. data/lib/aws/iam/server_certificate_collection.rb +138 -0
  333. data/lib/aws/iam/signing_certificate.rb +169 -0
  334. data/lib/aws/iam/signing_certificate_collection.rb +131 -0
  335. data/lib/aws/iam/user.rb +205 -0
  336. data/lib/aws/iam/user_collection.rb +133 -0
  337. data/lib/aws/iam/user_group_collection.rb +98 -0
  338. data/lib/aws/iam/user_policy.rb +90 -0
  339. data/lib/aws/iam/user_policy_collection.rb +45 -0
  340. data/lib/aws/iam/virtual_mfa_device.rb +139 -0
  341. data/lib/aws/iam/virtual_mfa_device_collection.rb +73 -0
  342. data/lib/aws/import_export.rb +73 -0
  343. data/lib/aws/import_export/client.rb +109 -0
  344. data/lib/aws/import_export/config.rb +19 -0
  345. data/lib/aws/import_export/errors.rb +22 -0
  346. data/lib/aws/import_export/request.rb +23 -0
  347. data/lib/aws/ops_works.rb +30 -0
  348. data/lib/aws/ops_works/client.rb +713 -0
  349. data/lib/aws/ops_works/config.rb +18 -0
  350. data/lib/aws/ops_works/errors.rb +20 -0
  351. data/lib/aws/ops_works/request.rb +27 -0
  352. data/lib/aws/rails.rb +195 -0
  353. data/lib/aws/rds.rb +71 -0
  354. data/lib/aws/rds/client.rb +2228 -0
  355. data/lib/aws/rds/config.rb +18 -0
  356. data/lib/aws/rds/db_instance.rb +205 -0
  357. data/lib/aws/rds/db_instance_collection.rb +75 -0
  358. data/lib/aws/rds/db_snapshot.rb +163 -0
  359. data/lib/aws/rds/db_snapshot_collection.rb +89 -0
  360. data/lib/aws/rds/errors.rb +22 -0
  361. data/lib/aws/rds/request.rb +23 -0
  362. data/lib/aws/record.rb +116 -0
  363. data/lib/aws/record/abstract_base.rb +701 -0
  364. data/lib/aws/record/attributes.rb +384 -0
  365. data/lib/aws/record/conversion.rb +38 -0
  366. data/lib/aws/record/dirty_tracking.rb +285 -0
  367. data/lib/aws/record/errors.rb +143 -0
  368. data/lib/aws/record/exceptions.rb +48 -0
  369. data/lib/aws/record/hash_model.rb +161 -0
  370. data/lib/aws/record/hash_model/attributes.rb +197 -0
  371. data/lib/aws/record/hash_model/finder_methods.rb +172 -0
  372. data/lib/aws/record/hash_model/scope.rb +108 -0
  373. data/lib/aws/record/model.rb +427 -0
  374. data/lib/aws/record/model/attributes.rb +379 -0
  375. data/lib/aws/record/model/finder_methods.rb +232 -0
  376. data/lib/aws/record/model/scope.rb +213 -0
  377. data/lib/aws/record/naming.rb +31 -0
  378. data/lib/aws/record/scope.rb +199 -0
  379. data/lib/aws/record/validations.rb +712 -0
  380. data/lib/aws/record/validator.rb +246 -0
  381. data/lib/aws/record/validators/acceptance.rb +51 -0
  382. data/lib/aws/record/validators/block.rb +38 -0
  383. data/lib/aws/record/validators/confirmation.rb +43 -0
  384. data/lib/aws/record/validators/count.rb +108 -0
  385. data/lib/aws/record/validators/exclusion.rb +43 -0
  386. data/lib/aws/record/validators/format.rb +57 -0
  387. data/lib/aws/record/validators/inclusion.rb +56 -0
  388. data/lib/aws/record/validators/length.rb +107 -0
  389. data/lib/aws/record/validators/method.rb +33 -0
  390. data/lib/aws/record/validators/numericality.rb +138 -0
  391. data/lib/aws/record/validators/presence.rb +45 -0
  392. data/lib/aws/redshift.rb +52 -0
  393. data/lib/aws/redshift/client.rb +1291 -0
  394. data/lib/aws/redshift/config.rb +18 -0
  395. data/lib/aws/redshift/errors.rb +22 -0
  396. data/lib/aws/redshift/request.rb +29 -0
  397. data/lib/aws/route_53.rb +87 -0
  398. data/lib/aws/route_53/change_batch.rb +159 -0
  399. data/lib/aws/route_53/change_info.rb +72 -0
  400. data/lib/aws/route_53/client.rb +387 -0
  401. data/lib/aws/route_53/config.rb +18 -0
  402. data/lib/aws/route_53/errors.rb +22 -0
  403. data/lib/aws/route_53/hosted_zone.rb +111 -0
  404. data/lib/aws/route_53/hosted_zone_collection.rb +100 -0
  405. data/lib/aws/route_53/request.rb +23 -0
  406. data/lib/aws/route_53/resource_record_set.rb +237 -0
  407. data/lib/aws/route_53/resource_record_set_collection.rb +110 -0
  408. data/lib/aws/s3.rb +155 -0
  409. data/lib/aws/s3/access_control_list.rb +257 -0
  410. data/lib/aws/s3/acl_object.rb +264 -0
  411. data/lib/aws/s3/acl_options.rb +204 -0
  412. data/lib/aws/s3/bucket.rb +742 -0
  413. data/lib/aws/s3/bucket_collection.rb +160 -0
  414. data/lib/aws/s3/bucket_lifecycle_configuration.rb +458 -0
  415. data/lib/aws/s3/bucket_tag_collection.rb +109 -0
  416. data/lib/aws/s3/bucket_version_collection.rb +77 -0
  417. data/lib/aws/s3/cipher_io.rb +119 -0
  418. data/lib/aws/s3/client.rb +1700 -0
  419. data/lib/aws/s3/client/xml.rb +231 -0
  420. data/lib/aws/s3/config.rb +36 -0
  421. data/lib/aws/s3/cors_rule.rb +106 -0
  422. data/lib/aws/s3/cors_rule_collection.rb +192 -0
  423. data/lib/aws/s3/data_options.rb +185 -0
  424. data/lib/aws/s3/encryption_utils.rb +139 -0
  425. data/lib/aws/s3/errors.rb +94 -0
  426. data/lib/aws/s3/multipart_upload.rb +320 -0
  427. data/lib/aws/s3/multipart_upload_collection.rb +68 -0
  428. data/lib/aws/s3/object_collection.rb +355 -0
  429. data/lib/aws/s3/object_metadata.rb +96 -0
  430. data/lib/aws/s3/object_upload_collection.rb +77 -0
  431. data/lib/aws/s3/object_version.rb +148 -0
  432. data/lib/aws/s3/object_version_collection.rb +89 -0
  433. data/lib/aws/s3/paginated_collection.rb +75 -0
  434. data/lib/aws/s3/policy.rb +74 -0
  435. data/lib/aws/s3/prefix_and_delimiter_collection.rb +47 -0
  436. data/lib/aws/s3/prefixed_collection.rb +81 -0
  437. data/lib/aws/s3/presigned_post.rb +555 -0
  438. data/lib/aws/s3/request.rb +201 -0
  439. data/lib/aws/s3/s3_object.rb +1690 -0
  440. data/lib/aws/s3/tree.rb +118 -0
  441. data/lib/aws/s3/tree/branch_node.rb +68 -0
  442. data/lib/aws/s3/tree/child_collection.rb +104 -0
  443. data/lib/aws/s3/tree/leaf_node.rb +94 -0
  444. data/lib/aws/s3/tree/node.rb +22 -0
  445. data/lib/aws/s3/tree/parent.rb +87 -0
  446. data/lib/aws/s3/uploaded_part.rb +80 -0
  447. data/lib/aws/s3/uploaded_part_collection.rb +84 -0
  448. data/lib/aws/s3/website_configuration.rb +102 -0
  449. data/lib/aws/simple_db.rb +219 -0
  450. data/lib/aws/simple_db/attribute.rb +154 -0
  451. data/lib/aws/simple_db/attribute_collection.rb +231 -0
  452. data/lib/aws/simple_db/client.rb +287 -0
  453. data/lib/aws/simple_db/config.rb +20 -0
  454. data/lib/aws/simple_db/consistent_read_option.rb +42 -0
  455. data/lib/aws/simple_db/delete_attributes.rb +62 -0
  456. data/lib/aws/simple_db/domain.rb +121 -0
  457. data/lib/aws/simple_db/domain_collection.rb +86 -0
  458. data/lib/aws/simple_db/domain_metadata.rb +110 -0
  459. data/lib/aws/simple_db/errors.rb +55 -0
  460. data/lib/aws/simple_db/expect_condition_option.rb +45 -0
  461. data/lib/aws/simple_db/item.rb +93 -0
  462. data/lib/aws/simple_db/item_collection.rb +649 -0
  463. data/lib/aws/simple_db/item_data.rb +73 -0
  464. data/lib/aws/simple_db/put_attributes.rb +60 -0
  465. data/lib/aws/simple_db/request.rb +23 -0
  466. data/lib/aws/simple_email_service.rb +428 -0
  467. data/lib/aws/simple_email_service/client.rb +276 -0
  468. data/lib/aws/simple_email_service/config.rb +19 -0
  469. data/lib/aws/simple_email_service/email_address_collection.rb +69 -0
  470. data/lib/aws/simple_email_service/errors.rb +22 -0
  471. data/lib/aws/simple_email_service/identity.rb +209 -0
  472. data/lib/aws/simple_email_service/identity_collection.rb +81 -0
  473. data/lib/aws/simple_email_service/quotas.rb +64 -0
  474. data/lib/aws/simple_email_service/request.rb +27 -0
  475. data/lib/aws/simple_workflow.rb +228 -0
  476. data/lib/aws/simple_workflow/activity_task.rb +173 -0
  477. data/lib/aws/simple_workflow/activity_task_collection.rb +123 -0
  478. data/lib/aws/simple_workflow/activity_type.rb +131 -0
  479. data/lib/aws/simple_workflow/activity_type_collection.rb +93 -0
  480. data/lib/aws/simple_workflow/client.rb +1204 -0
  481. data/lib/aws/simple_workflow/config.rb +18 -0
  482. data/lib/aws/simple_workflow/count.rb +49 -0
  483. data/lib/aws/simple_workflow/decision_task.rb +603 -0
  484. data/lib/aws/simple_workflow/decision_task_collection.rb +225 -0
  485. data/lib/aws/simple_workflow/domain.rb +122 -0
  486. data/lib/aws/simple_workflow/domain_collection.rb +169 -0
  487. data/lib/aws/simple_workflow/errors.rb +20 -0
  488. data/lib/aws/simple_workflow/history_event.rb +276 -0
  489. data/lib/aws/simple_workflow/history_event_collection.rb +76 -0
  490. data/lib/aws/simple_workflow/option_formatters.rb +82 -0
  491. data/lib/aws/simple_workflow/request.rb +33 -0
  492. data/lib/aws/simple_workflow/resource.rb +94 -0
  493. data/lib/aws/simple_workflow/type.rb +89 -0
  494. data/lib/aws/simple_workflow/type_collection.rb +140 -0
  495. data/lib/aws/simple_workflow/workflow_execution.rb +386 -0
  496. data/lib/aws/simple_workflow/workflow_execution_collection.rb +617 -0
  497. data/lib/aws/simple_workflow/workflow_type.rb +177 -0
  498. data/lib/aws/simple_workflow/workflow_type_collection.rb +91 -0
  499. data/lib/aws/sns.rb +76 -0
  500. data/lib/aws/sns/client.rb +266 -0
  501. data/lib/aws/sns/config.rb +18 -0
  502. data/lib/aws/sns/errors.rb +22 -0
  503. data/lib/aws/sns/has_delivery_policy.rb +68 -0
  504. data/lib/aws/sns/policy.rb +47 -0
  505. data/lib/aws/sns/request.rb +23 -0
  506. data/lib/aws/sns/subscription.rb +144 -0
  507. data/lib/aws/sns/subscription_collection.rb +78 -0
  508. data/lib/aws/sns/topic.rb +403 -0
  509. data/lib/aws/sns/topic_collection.rb +62 -0
  510. data/lib/aws/sns/topic_subscription_collection.rb +54 -0
  511. data/lib/aws/sqs.rb +81 -0
  512. data/lib/aws/sqs/client.rb +258 -0
  513. data/lib/aws/sqs/config.rb +18 -0
  514. data/lib/aws/sqs/errors.rb +101 -0
  515. data/lib/aws/sqs/policy.rb +48 -0
  516. data/lib/aws/sqs/queue.rb +764 -0
  517. data/lib/aws/sqs/queue_collection.rb +174 -0
  518. data/lib/aws/sqs/received_message.rb +181 -0
  519. data/lib/aws/sqs/received_sns_message.rb +116 -0
  520. data/lib/aws/sqs/request.rb +67 -0
  521. data/lib/aws/storage_gateway.rb +73 -0
  522. data/lib/aws/storage_gateway/client.rb +472 -0
  523. data/lib/aws/storage_gateway/config.rb +18 -0
  524. data/lib/aws/storage_gateway/errors.rb +22 -0
  525. data/lib/aws/storage_gateway/request.rb +28 -0
  526. data/lib/aws/sts.rb +163 -0
  527. data/lib/aws/sts/client.rb +157 -0
  528. data/lib/aws/sts/config.rb +18 -0
  529. data/lib/aws/sts/errors.rb +22 -0
  530. data/lib/aws/sts/federated_session.rb +56 -0
  531. data/lib/aws/sts/policy.rb +30 -0
  532. data/lib/aws/sts/request.rb +29 -0
  533. data/lib/aws/sts/session.rb +48 -0
  534. data/lib/aws/version.rb +18 -0
  535. data/lib/net/http/connection_pool.rb +226 -0
  536. data/lib/net/http/connection_pool/connection.rb +189 -0
  537. data/lib/net/http/connection_pool/session.rb +126 -0
  538. data/rails/init.rb +15 -0
  539. metadata +632 -0
@@ -0,0 +1,140 @@
1
+ # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class EC2
16
+
17
+ # Represents an attachment of an Amazon EBS volume to an instance.
18
+ #
19
+ # @example Create an empty 15GiB volume and attach it to an instance
20
+ # volume = ec2.volumes.create(:size => 15,
21
+ # :availability_zone => "us-east-1a")
22
+ # attachment = volume.attach_to(ec2.instances["i-123"], "/dev/sdf")
23
+ # sleep 1 until attachment.status != :attaching
24
+ #
25
+ # @example Remove all attachments from a volume and then delete it
26
+ # volume.attachments.each do |attachment|
27
+ # attachment.delete(:force => true)
28
+ # end
29
+ # sleep 1 until volume.status == :available
30
+ # volume.delete
31
+ class Attachment < Resource
32
+
33
+ # @private
34
+ def initialize volume, instance, device, options = {}
35
+ @volume = volume
36
+ @instance = instance
37
+ @device = device
38
+ super
39
+ end
40
+
41
+ # @return [Volume] Returns the volume that is attached.
42
+ attr_reader :volume
43
+
44
+ # @return [Instance] Returns the EC2 instance the volume is attached to.
45
+ attr_reader :instance
46
+
47
+ # @return [String] Returns how the device is exposed to the instance
48
+ # (e.g. '/dev/sdh')
49
+ attr_reader :device
50
+
51
+ # @overload status
52
+ # Returns the attachment status. Possible values are:
53
+ # * +:attaching+
54
+ # * +:attached+
55
+ # * +:detaching+
56
+ # * +:detached+
57
+ # @return [Symbol] Returns the attachment status.
58
+ attribute :status, :to_sym => true
59
+
60
+ # @overload attach_time
61
+ # @return [Time] Returns the time at which this attachment was created.
62
+ attribute :attach_time
63
+
64
+ # @overload delete_on_termination?
65
+ # @return [Boolean] Returns +true+ if the volume will be deleted
66
+ # on instance termination.
67
+ attribute :delete_on_termination, :boolean => true
68
+
69
+ populates_from(:describe_volumes) do |resp|
70
+ if volume = resp.volume_index[self.volume.id] and
71
+ attachments = volume.attachment_set and
72
+ attachment = attachments.find do |att|
73
+ att.instance_id == self.instance.id &&
74
+ att.volume_id == self.volume.id &&
75
+ att.device == self.device
76
+ end
77
+ then
78
+ attachment
79
+ end
80
+ end
81
+
82
+ populates_from(:attach_volume, :detach_volume) do |resp|
83
+ if
84
+ resp.volume_id == volume.id and
85
+ resp.instance_id == instance.id and
86
+ resp.device == device
87
+ then
88
+ resp
89
+ end
90
+ end
91
+
92
+ # @return [Boolean] Returns true if the attachment exists.
93
+ def exists?
94
+ !describe_attachment.nil?
95
+ end
96
+
97
+ # Detaches the volume from its instance.
98
+ # @option options [Boolean] :force Forces detachment if the
99
+ # previous detachment attempt did not occur cleanly (logging
100
+ # into an instance, unmounting the volume, and detaching
101
+ # normally). This option can lead to data loss or a
102
+ # corrupted file system. Use this option only as a last
103
+ # resort to detach a volume from a failed instance. The
104
+ # instance will not have an opportunity to flush file system
105
+ # caches or file system metadata. If you use this option,
106
+ # you must perform file system check and repair procedures.
107
+ def delete options = {}
108
+ client.detach_volume(options.merge(resource_options))
109
+ end
110
+
111
+ protected
112
+ def resource_identifiers
113
+ [
114
+ [:volume_id, volume.id],
115
+ [:instance_id, instance.id],
116
+ [:device, device],
117
+ ]
118
+ end
119
+
120
+ protected
121
+ def describe_call
122
+ client.describe_volumes(:volume_ids => [self.volume.id])
123
+ end
124
+
125
+ private
126
+ def describe_attachment
127
+ (resp = describe_call and
128
+ volume = resp.volume_index[self.volume.id] and
129
+ attachments = volume.attachment_set and
130
+ attachment = attachments.find do |att|
131
+ att.instance_id == self.instance.id &&
132
+ att.volume_id == self.volume.id &&
133
+ att.device == self.device
134
+ end) or nil
135
+ end
136
+
137
+ end
138
+
139
+ end
140
+ end
@@ -0,0 +1,54 @@
1
+ # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class EC2
16
+
17
+ # Represents the collection of attachments for an Amazon EBS
18
+ # volume.
19
+ #
20
+ # @see Volume
21
+ class AttachmentCollection
22
+
23
+ include Core::Model
24
+ include Enumerable
25
+
26
+ attr_reader :volume
27
+
28
+ # @private
29
+ def initialize volume, options = {}
30
+ @volume = volume
31
+ super
32
+ end
33
+
34
+ # @yield [attachment] Each attachment of the volume as an
35
+ # {Attachment} object.
36
+ # @return [nil]
37
+ def each &block
38
+ volume.attachment_set.each do |item|
39
+
40
+ instance = Instance.new(item.instance_id, :config => config)
41
+
42
+ attachment = Attachment.new(self.volume, instance, item.device,
43
+ :config => config)
44
+
45
+ yield(attachment)
46
+
47
+ end
48
+ nil
49
+ end
50
+
51
+ end
52
+
53
+ end
54
+ end
@@ -0,0 +1,86 @@
1
+ # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class EC2
16
+
17
+ # Represents an EC2 availability zone. You can use this class
18
+ # to get information about the state of an availability zone
19
+ # that is available to your account.
20
+ #
21
+ # @attr_reader [String,nil] region_name Returns the region name
22
+ # of the availability zone.
23
+ #
24
+ # @attr_reader [Symbol] state Returns the state of the availability
25
+ # zone, e.g. +:available+.
26
+ #
27
+ # @attr_reader [Array<String>] messages Returns a list of messages about the
28
+ # Availability Zone.
29
+ #
30
+ class AvailabilityZone < Resource
31
+
32
+ # @param [String] name The name of the availability zone.
33
+ def initialize name, options = {}
34
+ @name = name
35
+ if options[:region]
36
+ options[:region_name] = options[:region].name
37
+ end
38
+ super
39
+ end
40
+
41
+ # @return [String] Returns the name of the availability zone,
42
+ # e.g. "us-east-1a".
43
+ attr_reader :name
44
+
45
+ alias_method :to_s, :name
46
+
47
+ alias_method :to_str, :name
48
+
49
+ attribute :region_name, :static => true
50
+
51
+ attribute :state, :from => :zone_state, :to_sym => true
52
+
53
+ attribute :messages, :from => :message_set do
54
+ translates_output do |messages|
55
+ messages ? messages.collect{|m| m.message } : []
56
+ end
57
+ end
58
+
59
+ populates_from(:describe_availability_zones) do |resp|
60
+ resp.availability_zone_info.find {|az| az.zone_name == name }
61
+ end
62
+
63
+ # @return [Region] Returns the region of this availability zone.
64
+ def region
65
+ Region.new(self.region_name, :config => config)
66
+ end
67
+
68
+ protected
69
+ def describe_call_name
70
+ :describe_availability_zones
71
+ end
72
+
73
+ protected
74
+ def inflected_name
75
+ self.class.inflected_name
76
+ end
77
+
78
+ protected
79
+ def self.inflected_name
80
+ "zone"
81
+ end
82
+
83
+ end
84
+
85
+ end
86
+ end
@@ -0,0 +1,43 @@
1
+ # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class EC2
16
+
17
+ # Represents all EC2 availability zones that are currently
18
+ # available to your account.
19
+ class AvailabilityZoneCollection < Collection
20
+
21
+ # Yields each of the EC2 availability zones.
22
+ # @return [nil]
23
+ def each &block
24
+ resp = filtered_request(:describe_availability_zones)
25
+ resp.availability_zone_info.each do |az|
26
+ zone = AvailabilityZone.new(az.zone_name,
27
+ :region_name => az.region_name,
28
+ :config => config)
29
+ yield(zone)
30
+ end
31
+ nil
32
+ end
33
+
34
+ # @private
35
+ protected
36
+ def member_class
37
+ AvailabilityZone
38
+ end
39
+
40
+ end
41
+
42
+ end
43
+ end
@@ -0,0 +1,53 @@
1
+ # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class EC2
16
+
17
+ # @private
18
+ module BlockDeviceMappings
19
+
20
+ # @private
21
+ private
22
+ def translate_block_device_mappings(mapping)
23
+ raise ArgumentError.new("block_device_mappings must be a hash") unless
24
+ mapping.kind_of?(Hash)
25
+ mapping.map do |device, dest|
26
+ raise ArgumentError.new("keys of block_device_mappings must be strings") unless
27
+ device.kind_of?(String)
28
+ entry = { :device_name => device }
29
+ case dest
30
+ when :no_device
31
+ # for some reason EC2 rejects boolean values for this seemingly boolean option
32
+ entry[:no_device] = ""
33
+ when Symbol
34
+ raise ArgumentError.new("unrecognized block device mapping: #{dest}")
35
+ when String
36
+ entry[:virtual_name] = dest
37
+ when Hash
38
+ if snapshot = dest.delete(:snapshot)
39
+ dest[:snapshot_id] = snapshot.id
40
+ end
41
+ entry[:ebs] = dest
42
+ else
43
+ raise ArgumentError.new("values of block_device_mappings must "+
44
+ "be strings, symbols, or hashes")
45
+ end
46
+ entry
47
+ end
48
+ end
49
+
50
+ end
51
+
52
+ end
53
+ end
@@ -0,0 +1,3621 @@
1
+ # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class EC2
16
+
17
+ # Client class for Amazon Elastic Compute Cloud (EC2).
18
+ class Client < Core::QueryClient
19
+
20
+ # @private
21
+ CACHEABLE_REQUESTS = Set[
22
+ :describe_addresses,
23
+ :describe_availability_zones,
24
+ :describe_bundle_tasks,
25
+ :describe_customer_gateways,
26
+ :describe_dhcp_options,
27
+ :describe_image_attribute,
28
+ :describe_images,
29
+ :describe_instances,
30
+ :describe_key_pairs,
31
+ :describe_regions,
32
+ :describe_reserved_instances,
33
+ :describe_reserved_instances_offerings,
34
+ :describe_security_groups,
35
+ :describe_snapshot_attribute,
36
+ :describe_snapshots,
37
+ :describe_subnets,
38
+ :describe_volume_status,
39
+ :describe_volumes,
40
+ :describe_vpcs,
41
+ :describe_vpn_connections,
42
+ :describe_vpn_gateways,
43
+ :describe_instance_attribute,
44
+ :describe_spot_instance_requests,
45
+ :describe_spot_price_history,
46
+ :describe_spot_datafeed_subscription,
47
+ :describe_licenses,
48
+ :describe_placement_groups,
49
+ :describe_tags,
50
+ :describe_internet_gateways,
51
+ :describe_route_tables,
52
+ :describe_network_acls,
53
+ :describe_instance_status,
54
+ :describe_conversion_tasks,
55
+ :describe_network_interfaces,
56
+ :describe_network_interface_attribute,
57
+ ]
58
+
59
+ # client methods #
60
+
61
+ # @!method activate_license(options = {})
62
+ # Calls the ActivateLicense API operation.
63
+ # @param [Hash] options
64
+ # * +:license_id+ - *required* - (String) Specifies the ID for the
65
+ # specific license to activate against.
66
+ # * +:capacity+ - *required* - (Integer) Specifies the additional
67
+ # number of licenses to activate.
68
+ # @return [Core::Response]
69
+
70
+ # @!method allocate_address(options = {})
71
+ # Calls the AllocateAddress API operation.
72
+ # @param [Hash] options
73
+ # * +:domain+ - (String) Set to vpc to allocate the address to your
74
+ # VPC. By default, will allocate to EC2.
75
+ # @return [Core::Response]
76
+ # The #data method of the response object returns
77
+ # a hash with the following structure:
78
+ # * +:public_ip+ - (String)
79
+ # * +:domain+ - (String)
80
+ # * +:allocation_id+ - (String)
81
+
82
+ # @!method assign_private_ip_addresses(options = {})
83
+ # Calls the AssignPrivateIpAddresses API operation.
84
+ # @param [Hash] options
85
+ # * +:network_interface_id+ - *required* - (String)
86
+ # * +:private_ip_addresses+ - (Array<String>)
87
+ # * +:secondary_private_ip_address_count+ - (Integer)
88
+ # * +:allow_reassignment+ - (Boolean)
89
+ # @return [Core::Response]
90
+
91
+ # @!method associate_address(options = {})
92
+ # Calls the AssociateAddress API operation.
93
+ # @param [Hash] options
94
+ # * +:instance_id+ - (String) The instance to associate with the IP
95
+ # address.
96
+ # * +:public_ip+ - (String) IP address that you are assigning to the
97
+ # instance.
98
+ # * +:allocation_id+ - (String) The allocation ID that AWS returned
99
+ # when you allocated the elastic IP address for use with Amazon VPC.
100
+ # * +:network_interface_id+ - (String)
101
+ # * +:private_ip_address+ - (String)
102
+ # * +:allow_reassociation+ - (Boolean)
103
+ # @return [Core::Response]
104
+ # The #data method of the response object returns
105
+ # a hash with the following structure:
106
+ # * +:association_id+ - (String)
107
+
108
+ # @!method associate_dhcp_options(options = {})
109
+ # Calls the AssociateDhcpOptions API operation.
110
+ # @param [Hash] options
111
+ # * +:dhcp_options_id+ - *required* - (String) The ID of the DHCP
112
+ # options to associate with the VPC. Specify "default" to associate
113
+ # the default DHCP options with the VPC.
114
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC to associate
115
+ # the DHCP options with.
116
+ # @return [Core::Response]
117
+
118
+ # @!method associate_route_table(options = {})
119
+ # Calls the AssociateRouteTable API operation.
120
+ # @param [Hash] options
121
+ # * +:subnet_id+ - *required* - (String) The ID of the subnet.
122
+ # * +:route_table_id+ - *required* - (String) The ID of the route
123
+ # table.
124
+ # @return [Core::Response]
125
+ # The #data method of the response object returns
126
+ # a hash with the following structure:
127
+ # * +:association_id+ - (String)
128
+
129
+ # @!method attach_internet_gateway(options = {})
130
+ # Calls the AttachInternetGateway API operation.
131
+ # @param [Hash] options
132
+ # * +:internet_gateway_id+ - *required* - (String) The ID of the
133
+ # Internet gateway to attach.
134
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC.
135
+ # @return [Core::Response]
136
+
137
+ # @!method attach_network_interface(options = {})
138
+ # Calls the AttachNetworkInterface API operation.
139
+ # @param [Hash] options
140
+ # * +:network_interface_id+ - *required* - (String)
141
+ # * +:instance_id+ - *required* - (String)
142
+ # * +:device_index+ - *required* - (Integer)
143
+ # @return [Core::Response]
144
+ # The #data method of the response object returns
145
+ # a hash with the following structure:
146
+ # * +:attachment_id+ - (String)
147
+
148
+ # @!method attach_volume(options = {})
149
+ # Calls the AttachVolume API operation.
150
+ # @param [Hash] options
151
+ # * +:volume_id+ - *required* - (String) The ID of the Amazon EBS
152
+ # volume. The volume and instance must be within the same
153
+ # Availability Zone and the instance must be running.
154
+ # * +:instance_id+ - *required* - (String) The ID of the instance to
155
+ # which the volume attaches. The volume and instance must be within
156
+ # the same Availability Zone and the instance must be running.
157
+ # * +:device+ - *required* - (String) Specifies how the device is
158
+ # exposed to the instance (e.g., /dev/sdh).
159
+ # @return [Core::Response]
160
+ # The #data method of the response object returns
161
+ # a hash with the following structure:
162
+ # * +:volume_id+ - (String)
163
+ # * +:instance_id+ - (String)
164
+ # * +:device+ - (String)
165
+ # * +:status+ - (String)
166
+ # * +:attach_time+ - (Time)
167
+ # * +:delete_on_termination+ - (Boolean)
168
+
169
+ # @!method attach_vpn_gateway(options = {})
170
+ # Calls the AttachVpnGateway API operation.
171
+ # @param [Hash] options
172
+ # * +:vpn_gateway_id+ - *required* - (String) The ID of the VPN gateway
173
+ # to attach to the VPC.
174
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC to attach to
175
+ # the VPN gateway.
176
+ # @return [Core::Response]
177
+ # The #data method of the response object returns
178
+ # a hash with the following structure:
179
+ # * +:attachment+ - (Hash)
180
+ # * +:vpc_id+ - (String)
181
+ # * +:state+ - (String)
182
+
183
+ # @!method authorize_security_group_egress(options = {})
184
+ # Calls the AuthorizeSecurityGroupEgress API operation.
185
+ # @param [Hash] options
186
+ # * +:group_id+ - *required* - (String) ID of the VPC security group to
187
+ # modify.
188
+ # * +:source_security_group_name+ - (String) Deprecated.
189
+ # * +:source_security_group_owner_id+ - (String) Deprecated.
190
+ # * +:ip_protocol+ - (String) Deprecated.
191
+ # * +:from_port+ - (Integer) Deprecated.
192
+ # * +:to_port+ - (Integer) Deprecated.
193
+ # * +:cidr_ip+ - (String) Deprecated.
194
+ # * +:ip_permissions+ - (Array<Hash>) List of IP permissions to
195
+ # authorize on the specified security group. Specifying permissions
196
+ # through IP permissions is the preferred way of authorizing
197
+ # permissions since it offers more flexibility and control.
198
+ # * +:ip_protocol+ - (String) The IP protocol of this permission.
199
+ # Valid protocol values: tcp, udp, icmp
200
+ # * +:from_port+ - (Integer) Start of port range for the TCP and UDP
201
+ # protocols, or an ICMP type number. An ICMP type number of -1
202
+ # indicates a wildcard (i.e., any ICMP type number).
203
+ # * +:to_port+ - (Integer) End of port range for the TCP and UDP
204
+ # protocols, or an ICMP code. An ICMP code of -1 indicates a
205
+ # wildcard (i.e., any ICMP code).
206
+ # * +:user_id_group_pairs+ - (Array<Hash>) The list of AWS user IDs
207
+ # and groups included in this permission.
208
+ # * +:user_id+ - (String) The AWS user ID of an account.
209
+ # * +:group_name+ - (String) Name of the security group in the
210
+ # specified AWS account. Cannot be used when specifying a CIDR IP
211
+ # address range.
212
+ # * +:group_id+ - (String) ID of the security group in the
213
+ # specified AWS account. Cannot be used when specifying a CIDR IP
214
+ # address range.
215
+ # * +:ip_ranges+ - (Array<Hash>) The list of CIDR IP ranges included
216
+ # in this permission.
217
+ # * +:cidr_ip+ - (String) The list of CIDR IP ranges.
218
+ # @return [Core::Response]
219
+
220
+ # @!method authorize_security_group_ingress(options = {})
221
+ # Calls the AuthorizeSecurityGroupIngress API operation.
222
+ # @param [Hash] options
223
+ # * +:group_name+ - (String) Name of the standard (EC2) security group
224
+ # to modify. The group must belong to your account. Can be used
225
+ # instead of GroupID for standard (EC2) security groups.
226
+ # * +:group_id+ - (String) ID of the standard (EC2) or VPC security
227
+ # group to modify. The group must belong to your account. Required
228
+ # for VPC security groups; can be used instead of GroupName for
229
+ # standard (EC2) security groups.
230
+ # * +:source_security_group_name+ - (String) Deprecated
231
+ # * +:source_security_group_owner_id+ - (String) Deprecated
232
+ # * +:ip_protocol+ - (String) Deprecated
233
+ # * +:from_port+ - (Integer) Deprecated
234
+ # * +:to_port+ - (Integer) Deprecated
235
+ # * +:cidr_ip+ - (String) Deprecated
236
+ # * +:ip_permissions+ - (Array<Hash>) List of IP permissions to
237
+ # authorize on the specified security group. Specifying permissions
238
+ # through IP permissions is the preferred way of authorizing
239
+ # permissions since it offers more flexibility and control.
240
+ # * +:ip_protocol+ - (String) The IP protocol of this permission.
241
+ # Valid protocol values: tcp, udp, icmp
242
+ # * +:from_port+ - (Integer) Start of port range for the TCP and UDP
243
+ # protocols, or an ICMP type number. An ICMP type number of -1
244
+ # indicates a wildcard (i.e., any ICMP type number).
245
+ # * +:to_port+ - (Integer) End of port range for the TCP and UDP
246
+ # protocols, or an ICMP code. An ICMP code of -1 indicates a
247
+ # wildcard (i.e., any ICMP code).
248
+ # * +:user_id_group_pairs+ - (Array<Hash>) The list of AWS user IDs
249
+ # and groups included in this permission.
250
+ # * +:user_id+ - (String) The AWS user ID of an account.
251
+ # * +:group_name+ - (String) Name of the security group in the
252
+ # specified AWS account. Cannot be used when specifying a CIDR IP
253
+ # address range.
254
+ # * +:group_id+ - (String) ID of the security group in the
255
+ # specified AWS account. Cannot be used when specifying a CIDR IP
256
+ # address range.
257
+ # * +:ip_ranges+ - (Array<Hash>) The list of CIDR IP ranges included
258
+ # in this permission.
259
+ # * +:cidr_ip+ - (String) The list of CIDR IP ranges.
260
+ # @return [Core::Response]
261
+
262
+ # @!method bundle_instance(options = {})
263
+ # Calls the BundleInstance API operation.
264
+ # @param [Hash] options
265
+ # * +:instance_id+ - *required* - (String) The ID of the instance to
266
+ # bundle.
267
+ # * +:storage+ - *required* - (Hash)
268
+ # * +:s3+ - (Hash) The details of S3 storage for bundling a Windows
269
+ # instance.
270
+ # * +:bucket+ - (String) The bucket in which to store the AMI. You
271
+ # can specify a bucket that you already own or a new bucket that
272
+ # Amazon EC2 creates on your behalf. If you specify a bucket that
273
+ # belongs to someone else, Amazon EC2 returns an error.
274
+ # * +:prefix+ - (String) The prefix to use when storing the AMI in
275
+ # S3.
276
+ # * +:aws_access_key_id+ - (String) The Access Key ID of the owner
277
+ # of the Amazon S3 bucket.
278
+ # * +:upload_policy+ - (String) A Base64-encoded Amazon S3 upload
279
+ # policy that gives Amazon EC2 permission to upload items into
280
+ # Amazon S3 on the user's behalf.
281
+ # * +:upload_policy_signature+ - (String) The signature of the
282
+ # Base64 encoded JSON document.
283
+ # @return [Core::Response]
284
+ # The #data method of the response object returns
285
+ # a hash with the following structure:
286
+ # * +:bundle_instance_task+ - (Hash)
287
+ # * +:instance_id+ - (String)
288
+ # * +:bundle_id+ - (String)
289
+ # * +:state+ - (String)
290
+ # * +:start_time+ - (Time)
291
+ # * +:update_time+ - (Time)
292
+ # * +:storage+ - (Hash)
293
+ # * +:s3+ - (Hash)
294
+ # * +:bucket+ - (String)
295
+ # * +:prefix+ - (String)
296
+ # * +:aws_access_key_id+ - (String)
297
+ # * +:upload_policy+ - (String)
298
+ # * +:upload_policy_signature+ - (String)
299
+ # * +:progress+ - (String)
300
+ # * +:error+ - (Hash)
301
+ # * +:code+ - (String)
302
+ # * +:message+ - (String)
303
+
304
+ # @!method cancel_bundle_task(options = {})
305
+ # Calls the CancelBundleTask API operation.
306
+ # @param [Hash] options
307
+ # * +:bundle_id+ - *required* - (String) The ID of the bundle task to
308
+ # cancel.
309
+ # @return [Core::Response]
310
+ # The #data method of the response object returns
311
+ # a hash with the following structure:
312
+ # * +:bundle_instance_task+ - (Hash)
313
+ # * +:instance_id+ - (String)
314
+ # * +:bundle_id+ - (String)
315
+ # * +:state+ - (String)
316
+ # * +:start_time+ - (Time)
317
+ # * +:update_time+ - (Time)
318
+ # * +:storage+ - (Hash)
319
+ # * +:s3+ - (Hash)
320
+ # * +:bucket+ - (String)
321
+ # * +:prefix+ - (String)
322
+ # * +:aws_access_key_id+ - (String)
323
+ # * +:upload_policy+ - (String)
324
+ # * +:upload_policy_signature+ - (String)
325
+ # * +:progress+ - (String)
326
+ # * +:error+ - (Hash)
327
+ # * +:code+ - (String)
328
+ # * +:message+ - (String)
329
+
330
+ # @!method cancel_conversion_task(options = {})
331
+ # Calls the CancelConversionTask API operation.
332
+ # @param [Hash] options
333
+ # * +:conversion_task_id+ - *required* - (String)
334
+ # * +:reason_message+ - (String)
335
+ # @return [Core::Response]
336
+
337
+ # @!method cancel_export_task(options = {})
338
+ # Calls the CancelExportTask API operation.
339
+ # @param [Hash] options
340
+ # * +:export_task_id+ - *required* - (String)
341
+ # @return [Core::Response]
342
+
343
+ # @!method cancel_reserved_instances_listing(options = {})
344
+ # Calls the CancelReservedInstancesListing API operation.
345
+ # @param [Hash] options
346
+ # * +:reserved_instances_listing_id+ - *required* - (String)
347
+ # @return [Core::Response]
348
+ # The #data method of the response object returns
349
+ # a hash with the following structure:
350
+ # * +:reserved_instances_listings_set+ - (Array<Hash>)
351
+ # * +:reserved_instances_listing_id+ - (String)
352
+ # * +:reserved_instances_id+ - (String)
353
+ # * +:create_date+ - (Time)
354
+ # * +:update_date+ - (Time)
355
+ # * +:status+ - (String)
356
+ # * +:status_message+ - (String)
357
+ # * +:instance_counts+ - (Array<Hash>)
358
+ # * +:state+ - (String)
359
+ # * +:instance_count+ - (Integer)
360
+ # * +:price_schedules+ - (Array<Hash>)
361
+ # * +:term+ - (Integer)
362
+ # * +:price+ - (Numeric)
363
+ # * +:currency_code+ - (String)
364
+ # * +:active+ - (Boolean)
365
+ # * +:tag_set+ - (Array<Hash>)
366
+ # * +:key+ - (String)
367
+ # * +:value+ - (String)
368
+ # * +:client_token+ - (String)
369
+
370
+ # @!method cancel_spot_instance_requests(options = {})
371
+ # Calls the CancelSpotInstanceRequests API operation.
372
+ # @param [Hash] options
373
+ # * +:spot_instance_request_ids+ - *required* - (Array<String>)
374
+ # Specifies the ID of the Spot Instance request.
375
+ # @return [Core::Response]
376
+ # The #data method of the response object returns
377
+ # a hash with the following structure:
378
+ # * +:spot_instance_request_set+ - (Array<Hash>)
379
+ # * +:spot_instance_request_id+ - (String)
380
+ # * +:state+ - (String)
381
+
382
+ # @!method confirm_product_instance(options = {})
383
+ # Calls the ConfirmProductInstance API operation.
384
+ # @param [Hash] options
385
+ # * +:product_code+ - *required* - (String) The product code to
386
+ # confirm.
387
+ # * +:instance_id+ - *required* - (String) The ID of the instance to
388
+ # confirm.
389
+ # @return [Core::Response]
390
+ # The #data method of the response object returns
391
+ # a hash with the following structure:
392
+ # * +:owner_id+ - (String)
393
+
394
+ # @!method copy_image(options = {})
395
+ # Calls the CopyImage API operation.
396
+ # @param [Hash] options
397
+ # * +:source_region+ - *required* - (String)
398
+ # * +:source_image_id+ - *required* - (String)
399
+ # * +:name+ - *required* - (String)
400
+ # * +:description+ - (String)
401
+ # * +:client_token+ - (String)
402
+ # @return [Core::Response]
403
+ # The #data method of the response object returns
404
+ # a hash with the following structure:
405
+ # * +:image_id+ - (String)
406
+
407
+ # @!method copy_snapshot(options = {})
408
+ # Calls the CopySnapshot API operation.
409
+ # @param [Hash] options
410
+ # * +:source_region+ - *required* - (String)
411
+ # * +:source_snapshot_id+ - *required* - (String)
412
+ # * +:description+ - (String)
413
+ # @return [Core::Response]
414
+ # The #data method of the response object returns
415
+ # a hash with the following structure:
416
+ # * +:snapshot_id+ - (String)
417
+
418
+ # @!method create_customer_gateway(options = {})
419
+ # Calls the CreateCustomerGateway API operation.
420
+ # @param [Hash] options
421
+ # * +:type+ - *required* - (String) The type of VPN connection this
422
+ # customer gateway supports.
423
+ # * +:public_ip+ - *required* - (String) The Internet-routable IP
424
+ # address for the customer gateway's outside interface. The address
425
+ # must be static
426
+ # * +:bgp_asn+ - *required* - (Integer) The customer gateway's Border
427
+ # Gateway Protocol (BGP) Autonomous System Number (ASN).
428
+ # @return [Core::Response]
429
+ # The #data method of the response object returns
430
+ # a hash with the following structure:
431
+ # * +:customer_gateway+ - (Hash)
432
+ # * +:customer_gateway_id+ - (String)
433
+ # * +:state+ - (String)
434
+ # * +:type+ - (String)
435
+ # * +:ip_address+ - (String)
436
+ # * +:bgp_asn+ - (String)
437
+ # * +:tag_set+ - (Array<Hash>)
438
+ # * +:key+ - (String)
439
+ # * +:value+ - (String)
440
+
441
+ # @!method create_dhcp_options(options = {})
442
+ # Calls the CreateDhcpOptions API operation.
443
+ # @param [Hash] options
444
+ # * +:dhcp_configurations+ - *required* - (Array<Hash>) A set of one or
445
+ # more DHCP configurations.
446
+ # * +:key+ - (String) Contains the name of a DHCP option.
447
+ # * +:values+ - (Array<String>) Contains a set of values for a DHCP
448
+ # option.
449
+ # @return [Core::Response]
450
+ # The #data method of the response object returns
451
+ # a hash with the following structure:
452
+ # * +:dhcp_options+ - (Hash)
453
+ # * +:dhcp_options_id+ - (String)
454
+ # * +:dhcp_configuration_set+ - (Array<Hash>)
455
+ # * +:key+ - (String)
456
+ # * +:value_set+ - (Array<String>)
457
+ # * +:tag_set+ - (Array<Hash>)
458
+ # * +:key+ - (String)
459
+ # * +:value+ - (String)
460
+
461
+ # @!method create_image(options = {})
462
+ # Calls the CreateImage API operation.
463
+ # @param [Hash] options
464
+ # * +:instance_id+ - *required* - (String) The ID of the instance from
465
+ # which to create the new image.
466
+ # * +:name+ - *required* - (String) The name for the new AMI being
467
+ # created.
468
+ # * +:description+ - (String) The description for the new AMI being
469
+ # created.
470
+ # * +:no_reboot+ - (Boolean) By default this property is set to +false+
471
+ # , which means Amazon EC2 attempts to cleanly shut down the instance
472
+ # before image creation and reboots the instance afterwards. When set
473
+ # to +true+ , Amazon EC2 will not shut down the instance before
474
+ # creating the image. When this option is used, file system integrity
475
+ # on the created image cannot be guaranteed.
476
+ # * +:block_device_mappings+ - (Array<Hash>)
477
+ # * +:virtual_name+ - (String) Specifies the virtual device name.
478
+ # * +:device_name+ - (String) Specifies the device name (e.g.,
479
+ # /dev/sdh).
480
+ # * +:ebs+ - (Hash) Specifies parameters used to automatically setup
481
+ # Amazon EBS volumes when the instance is launched.
482
+ # * +:snapshot_id+ - (String) The ID of the snapshot from which the
483
+ # volume will be created.
484
+ # * +:volume_size+ - (Integer) The size of the volume, in
485
+ # gigabytes.
486
+ # * +:delete_on_termination+ - (Boolean) Specifies whether the
487
+ # Amazon EBS volume is deleted on instance termination.
488
+ # * +:volume_type+ - (String)
489
+ # * +:iops+ - (Integer)
490
+ # * +:no_device+ - (String) Specifies the device name to suppress
491
+ # during instance launch.
492
+ # @return [Core::Response]
493
+ # The #data method of the response object returns
494
+ # a hash with the following structure:
495
+ # * +:image_id+ - (String)
496
+
497
+ # @!method create_instance_export_task(options = {})
498
+ # Calls the CreateInstanceExportTask API operation.
499
+ # @param [Hash] options
500
+ # * +:description+ - (String)
501
+ # * +:instance_id+ - *required* - (String)
502
+ # * +:target_environment+ - (String)
503
+ # * +:export_to_s3_task+ - (Hash)
504
+ # * +:disk_image_format+ - (String)
505
+ # * +:container_format+ - (String)
506
+ # * +:s3_bucket+ - (String)
507
+ # * +:s3_prefix+ - (String)
508
+ # @return [Core::Response]
509
+ # The #data method of the response object returns
510
+ # a hash with the following structure:
511
+ # * +:export_task+ - (Hash)
512
+ # * +:export_task_id+ - (String)
513
+ # * +:description+ - (String)
514
+ # * +:state+ - (String)
515
+ # * +:status_message+ - (String)
516
+ # * +:instance_export+ - (Hash)
517
+ # * +:instance_id+ - (String)
518
+ # * +:target_environment+ - (String)
519
+ # * +:export_to_s3+ - (Hash)
520
+ # * +:disk_image_format+ - (String)
521
+ # * +:container_format+ - (String)
522
+ # * +:s3_bucket+ - (String)
523
+ # * +:s3_key+ - (String)
524
+
525
+ # @!method create_internet_gateway(options = {})
526
+ # Calls the CreateInternetGateway API operation.
527
+ # @param [Hash] options
528
+ # @return [Core::Response]
529
+ # The #data method of the response object returns
530
+ # a hash with the following structure:
531
+ # * +:internet_gateway+ - (Hash)
532
+ # * +:internet_gateway_id+ - (String)
533
+ # * +:attachment_set+ - (Array<Hash>)
534
+ # * +:vpc_id+ - (String)
535
+ # * +:state+ - (String)
536
+ # * +:tag_set+ - (Array<Hash>)
537
+ # * +:key+ - (String)
538
+ # * +:value+ - (String)
539
+
540
+ # @!method create_key_pair(options = {})
541
+ # Calls the CreateKeyPair API operation.
542
+ # @param [Hash] options
543
+ # * +:key_name+ - *required* - (String) The unique name for the new key
544
+ # pair.
545
+ # @return [Core::Response]
546
+ # The #data method of the response object returns
547
+ # a hash with the following structure:
548
+ # * +:key_pair+ - (Hash)
549
+ # * +:key_name+ - (String)
550
+ # * +:key_fingerprint+ - (String)
551
+ # * +:key_material+ - (String)
552
+
553
+ # @!method create_network_acl(options = {})
554
+ # Calls the CreateNetworkAcl API operation.
555
+ # @param [Hash] options
556
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC where the
557
+ # network ACL will be created.
558
+ # @return [Core::Response]
559
+ # The #data method of the response object returns
560
+ # a hash with the following structure:
561
+ # * +:network_acl+ - (Hash)
562
+ # * +:network_acl_id+ - (String)
563
+ # * +:vpc_id+ - (String)
564
+ # * +:default+ - (Boolean)
565
+ # * +:entry_set+ - (Array<Hash>)
566
+ # * +:rule_number+ - (Integer)
567
+ # * +:protocol+ - (String)
568
+ # * +:rule_action+ - (String)
569
+ # * +:egress+ - (Boolean)
570
+ # * +:cidr_block+ - (String)
571
+ # * +:icmp_type_code+ - (Hash)
572
+ # * +:type+ - (Integer)
573
+ # * +:code+ - (Integer)
574
+ # * +:port_range+ - (Hash)
575
+ # * +:from+ - (Integer)
576
+ # * +:to+ - (Integer)
577
+ # * +:association_set+ - (Array<Hash>)
578
+ # * +:network_acl_association_id+ - (String)
579
+ # * +:network_acl_id+ - (String)
580
+ # * +:subnet_id+ - (String)
581
+ # * +:tag_set+ - (Array<Hash>)
582
+ # * +:key+ - (String)
583
+ # * +:value+ - (String)
584
+
585
+ # @!method create_network_acl_entry(options = {})
586
+ # Calls the CreateNetworkAclEntry API operation.
587
+ # @param [Hash] options
588
+ # * +:network_acl_id+ - *required* - (String) ID of the ACL where the
589
+ # entry will be created.
590
+ # * +:rule_number+ - *required* - (Integer) Rule number to assign to
591
+ # the entry (e.g., 100). ACL entries are processed in ascending order
592
+ # by rule number.
593
+ # * +:protocol+ - *required* - (String) IP protocol the rule applies
594
+ # to. Valid Values: tcp, udp, icmp or an IP protocol number.
595
+ # * +:rule_action+ - *required* - (String) Whether to allow or deny
596
+ # traffic that matches the rule.
597
+ # * +:egress+ - *required* - (Boolean) Whether this rule applies to
598
+ # egress traffic from the subnet ( +true+ ) or ingress traffic to the
599
+ # subnet ( +false+ ).
600
+ # * +:cidr_block+ - *required* - (String) The CIDR range to allow or
601
+ # deny, in CIDR notation (e.g., 172.16.0.0/24).
602
+ # * +:icmp_type_code+ - (Hash) ICMP values.
603
+ # * +:type+ - (Integer) For the ICMP protocol, the ICMP type. A value
604
+ # of -1 is a wildcard meaning all types. Required if specifying
605
+ # icmp for the protocol.
606
+ # * +:code+ - (Integer) For the ICMP protocol, the ICMP code. A value
607
+ # of -1 is a wildcard meaning all codes. Required if specifying
608
+ # icmp for the protocol.
609
+ # * +:port_range+ - (Hash) Port ranges.
610
+ # * +:from+ - (Integer) The first port in the range. Required if
611
+ # specifying tcp or udp for the protocol.
612
+ # * +:to+ - (Integer) The last port in the range. Required if
613
+ # specifying tcp or udp for the protocol.
614
+ # @return [Core::Response]
615
+
616
+ # @!method create_network_interface(options = {})
617
+ # Calls the CreateNetworkInterface API operation.
618
+ # @param [Hash] options
619
+ # * +:subnet_id+ - *required* - (String)
620
+ # * +:description+ - (String)
621
+ # * +:private_ip_address+ - (String)
622
+ # * +:groups+ - (Array<String>)
623
+ # * +:private_ip_addresses+ - (Array<Hash>)
624
+ # * +:private_ip_address+ - *required* - (String)
625
+ # * +:primary+ - (Boolean)
626
+ # * +:secondary_private_ip_address_count+ - (Integer)
627
+ # @return [Core::Response]
628
+ # The #data method of the response object returns
629
+ # a hash with the following structure:
630
+ # * +:network_interface+ - (Hash)
631
+ # * +:network_interface_id+ - (String)
632
+ # * +:subnet_id+ - (String)
633
+ # * +:vpc_id+ - (String)
634
+ # * +:availability_zone+ - (String)
635
+ # * +:description+ - (String)
636
+ # * +:owner_id+ - (String)
637
+ # * +:requester_id+ - (String)
638
+ # * +:requester_managed+ - (Boolean)
639
+ # * +:status+ - (String)
640
+ # * +:mac_address+ - (String)
641
+ # * +:private_ip_address+ - (String)
642
+ # * +:private_dns_name+ - (String)
643
+ # * +:source_dest_check+ - (Boolean)
644
+ # * +:group_set+ - (Array<Hash>)
645
+ # * +:group_name+ - (String)
646
+ # * +:group_id+ - (String)
647
+ # * +:attachment+ - (Hash)
648
+ # * +:attachment_id+ - (String)
649
+ # * +:instance_id+ - (String)
650
+ # * +:instance_owner_id+ - (String)
651
+ # * +:device_index+ - (Integer)
652
+ # * +:status+ - (String)
653
+ # * +:attach_time+ - (Time)
654
+ # * +:delete_on_termination+ - (Boolean)
655
+ # * +:association+ - (Hash)
656
+ # * +:public_ip+ - (String)
657
+ # * +:ip_owner_id+ - (String)
658
+ # * +:allocation_id+ - (String)
659
+ # * +:association_id+ - (String)
660
+ # * +:tag_set+ - (Array<Hash>)
661
+ # * +:key+ - (String)
662
+ # * +:value+ - (String)
663
+ # * +:private_ip_addresses_set+ - (Array<Hash>)
664
+ # * +:private_ip_address+ - (String)
665
+ # * +:private_dns_name+ - (String)
666
+ # * +:primary+ - (Boolean)
667
+ # * +:association+ - (Hash)
668
+ # * +:public_ip+ - (String)
669
+ # * +:ip_owner_id+ - (String)
670
+ # * +:allocation_id+ - (String)
671
+ # * +:association_id+ - (String)
672
+
673
+ # @!method create_placement_group(options = {})
674
+ # Calls the CreatePlacementGroup API operation.
675
+ # @param [Hash] options
676
+ # * +:group_name+ - *required* - (String) The name of the
677
+ # PlacementGroup.
678
+ # * +:strategy+ - *required* - (String) The PlacementGroup strategy.
679
+ # @return [Core::Response]
680
+
681
+ # @!method create_reserved_instances_listing(options = {})
682
+ # Calls the CreateReservedInstancesListing API operation.
683
+ # @param [Hash] options
684
+ # * +:reserved_instances_id+ - *required* - (String)
685
+ # * +:instance_count+ - *required* - (Integer)
686
+ # * +:price_schedules+ - *required* - (Array<Hash>)
687
+ # * +:term+ - (Integer)
688
+ # * +:price+ - (Float)
689
+ # * +:currency_code+ - (String)
690
+ # * +:client_token+ - *required* - (String)
691
+ # @return [Core::Response]
692
+ # The #data method of the response object returns
693
+ # a hash with the following structure:
694
+ # * +:reserved_instances_listings_set+ - (Array<Hash>)
695
+ # * +:reserved_instances_listing_id+ - (String)
696
+ # * +:reserved_instances_id+ - (String)
697
+ # * +:create_date+ - (Time)
698
+ # * +:update_date+ - (Time)
699
+ # * +:status+ - (String)
700
+ # * +:status_message+ - (String)
701
+ # * +:instance_counts+ - (Array<Hash>)
702
+ # * +:state+ - (String)
703
+ # * +:instance_count+ - (Integer)
704
+ # * +:price_schedules+ - (Array<Hash>)
705
+ # * +:term+ - (Integer)
706
+ # * +:price+ - (Numeric)
707
+ # * +:currency_code+ - (String)
708
+ # * +:active+ - (Boolean)
709
+ # * +:tag_set+ - (Array<Hash>)
710
+ # * +:key+ - (String)
711
+ # * +:value+ - (String)
712
+ # * +:client_token+ - (String)
713
+
714
+ # @!method create_route(options = {})
715
+ # Calls the CreateRoute API operation.
716
+ # @param [Hash] options
717
+ # * +:route_table_id+ - *required* - (String) The ID of the route table
718
+ # where the route will be added.
719
+ # * +:destination_cidr_block+ - *required* - (String) The CIDR address
720
+ # block used for the destination match. For example: 0.0.0.0/0.
721
+ # Routing decisions are based on the most specific match.
722
+ # * +:gateway_id+ - (String) The ID of a VPN or Internet gateway
723
+ # attached to your VPC. You must provide either GatewayId or
724
+ # InstanceId, but not both.
725
+ # * +:instance_id+ - (String) The ID of a NAT instance in your VPC. You
726
+ # must provide either GatewayId or InstanceId, but not both.
727
+ # * +:network_interface_id+ - (String)
728
+ # @return [Core::Response]
729
+
730
+ # @!method create_route_table(options = {})
731
+ # Calls the CreateRouteTable API operation.
732
+ # @param [Hash] options
733
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC where the route
734
+ # table will be created.
735
+ # @return [Core::Response]
736
+ # The #data method of the response object returns
737
+ # a hash with the following structure:
738
+ # * +:route_table+ - (Hash)
739
+ # * +:route_table_id+ - (String)
740
+ # * +:vpc_id+ - (String)
741
+ # * +:route_set+ - (Array<Hash>)
742
+ # * +:destination_cidr_block+ - (String)
743
+ # * +:gateway_id+ - (String)
744
+ # * +:instance_id+ - (String)
745
+ # * +:instance_owner_id+ - (String)
746
+ # * +:network_interface_id+ - (String)
747
+ # * +:state+ - (String)
748
+ # * +:association_set+ - (Array<Hash>)
749
+ # * +:route_table_association_id+ - (String)
750
+ # * +:route_table_id+ - (String)
751
+ # * +:subnet_id+ - (String)
752
+ # * +:main+ - (Boolean)
753
+ # * +:tag_set+ - (Array<Hash>)
754
+ # * +:key+ - (String)
755
+ # * +:value+ - (String)
756
+ # * +:propagating_vgw_set+ - (Array<Hash>)
757
+ # * +:gateway_id+ - (String)
758
+
759
+ # @!method create_security_group(options = {})
760
+ # Calls the CreateSecurityGroup API operation.
761
+ # @param [Hash] options
762
+ # * +:group_name+ - *required* - (String) Name of the security group.
763
+ # * +:description+ - *required* - (String) Description of the group.
764
+ # This is informational only.
765
+ # * +:vpc_id+ - (String) ID of the VPC.
766
+ # @return [Core::Response]
767
+ # The #data method of the response object returns
768
+ # a hash with the following structure:
769
+ # * +:group_id+ - (String)
770
+
771
+ # @!method create_snapshot(options = {})
772
+ # Calls the CreateSnapshot API operation.
773
+ # @param [Hash] options
774
+ # * +:volume_id+ - *required* - (String) The ID of the volume from
775
+ # which to create the snapshot.
776
+ # * +:description+ - (String) The description for the new snapshot.
777
+ # @return [Core::Response]
778
+ # The #data method of the response object returns
779
+ # a hash with the following structure:
780
+ # * +:snapshot_id+ - (String)
781
+ # * +:volume_id+ - (String)
782
+ # * +:status+ - (String)
783
+ # * +:start_time+ - (Time)
784
+ # * +:progress+ - (String)
785
+ # * +:owner_id+ - (String)
786
+ # * +:description+ - (String)
787
+ # * +:volume_size+ - (Integer)
788
+ # * +:owner_alias+ - (String)
789
+ # * +:tag_set+ - (Array<Hash>)
790
+ # * +:key+ - (String)
791
+ # * +:value+ - (String)
792
+
793
+ # @!method create_spot_datafeed_subscription(options = {})
794
+ # Calls the CreateSpotDatafeedSubscription API operation.
795
+ # @param [Hash] options
796
+ # * +:bucket+ - *required* - (String) The Amazon S3 bucket in which to
797
+ # store the Spot Instance datafeed.
798
+ # * +:prefix+ - (String) The prefix that is prepended to datafeed
799
+ # files.
800
+ # @return [Core::Response]
801
+ # The #data method of the response object returns
802
+ # a hash with the following structure:
803
+ # * +:spot_datafeed_subscription+ - (Hash)
804
+ # * +:owner_id+ - (String)
805
+ # * +:bucket+ - (String)
806
+ # * +:prefix+ - (String)
807
+ # * +:state+ - (String)
808
+ # * +:fault+ - (Hash)
809
+ # * +:code+ - (String)
810
+ # * +:message+ - (String)
811
+
812
+ # @!method create_subnet(options = {})
813
+ # Calls the CreateSubnet API operation.
814
+ # @param [Hash] options
815
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC to create the
816
+ # subnet in.
817
+ # * +:cidr_block+ - *required* - (String) The CIDR block the subnet is
818
+ # to cover.
819
+ # * +:availability_zone+ - (String) The Availability Zone to create the
820
+ # subnet in.
821
+ # @return [Core::Response]
822
+ # The #data method of the response object returns
823
+ # a hash with the following structure:
824
+ # * +:subnet+ - (Hash)
825
+ # * +:subnet_id+ - (String)
826
+ # * +:state+ - (String)
827
+ # * +:vpc_id+ - (String)
828
+ # * +:cidr_block+ - (String)
829
+ # * +:available_ip_address_count+ - (Integer)
830
+ # * +:availability_zone+ - (String)
831
+ # * +:default_for_az+ - (Boolean)
832
+ # * +:map_public_ip_on_launch+ - (Boolean)
833
+ # * +:tag_set+ - (Array<Hash>)
834
+ # * +:key+ - (String)
835
+ # * +:value+ - (String)
836
+
837
+ # @!method create_tags(options = {})
838
+ # Calls the CreateTags API operation.
839
+ # @param [Hash] options
840
+ # * +:resources+ - *required* - (Array<String>) One or more IDs of
841
+ # resources to tag. This could be the ID of an AMI, an instance, an
842
+ # EBS volume, or snapshot, etc.
843
+ # * +:tags+ - *required* - (Array<Hash>) The tags to add or overwrite
844
+ # for the specified resources. Each tag item consists of a key-value
845
+ # pair.
846
+ # * +:key+ - (String) The tag's key.
847
+ # * +:value+ - (String) The tag's value.
848
+ # @return [Core::Response]
849
+
850
+ # @!method create_volume(options = {})
851
+ # Calls the CreateVolume API operation.
852
+ # @param [Hash] options
853
+ # * +:size+ - (Integer) The size of the volume, in gigabytes. Required
854
+ # if you are not creating a volume from a snapshot.
855
+ # * +:snapshot_id+ - (String) The ID of the snapshot from which to
856
+ # create the new volume.
857
+ # * +:availability_zone+ - *required* - (String) The Availability Zone
858
+ # in which to create the new volume.
859
+ # * +:volume_type+ - (String)
860
+ # * +:iops+ - (Integer)
861
+ # @return [Core::Response]
862
+ # The #data method of the response object returns
863
+ # a hash with the following structure:
864
+ # * +:volume_id+ - (String)
865
+ # * +:size+ - (Integer)
866
+ # * +:snapshot_id+ - (String)
867
+ # * +:availability_zone+ - (String)
868
+ # * +:status+ - (String)
869
+ # * +:create_time+ - (Time)
870
+ # * +:attachment_set+ - (Array<Hash>)
871
+ # * +:volume_id+ - (String)
872
+ # * +:instance_id+ - (String)
873
+ # * +:device+ - (String)
874
+ # * +:status+ - (String)
875
+ # * +:attach_time+ - (Time)
876
+ # * +:delete_on_termination+ - (Boolean)
877
+ # * +:tag_set+ - (Array<Hash>)
878
+ # * +:key+ - (String)
879
+ # * +:value+ - (String)
880
+ # * +:volume_type+ - (String)
881
+ # * +:iops+ - (Integer)
882
+
883
+ # @!method create_vpc(options = {})
884
+ # Calls the CreateVpc API operation.
885
+ # @param [Hash] options
886
+ # * +:cidr_block+ - *required* - (String) A valid CIDR block.
887
+ # * +:instance_tenancy+ - (String) The allowed tenancy of instances
888
+ # launched into the VPC. A value of default means instances can be
889
+ # launched with any tenancy; a value of dedicated means instances
890
+ # must be launched with tenancy as dedicated.
891
+ # @return [Core::Response]
892
+ # The #data method of the response object returns
893
+ # a hash with the following structure:
894
+ # * +:vpc+ - (Hash)
895
+ # * +:vpc_id+ - (String)
896
+ # * +:state+ - (String)
897
+ # * +:cidr_block+ - (String)
898
+ # * +:dhcp_options_id+ - (String)
899
+ # * +:tag_set+ - (Array<Hash>)
900
+ # * +:key+ - (String)
901
+ # * +:value+ - (String)
902
+ # * +:instance_tenancy+ - (String)
903
+ # * +:is_default+ - (Boolean)
904
+
905
+ # @!method create_vpn_connection(options = {})
906
+ # Calls the CreateVpnConnection API operation.
907
+ # @param [Hash] options
908
+ # * +:type+ - *required* - (String) The type of VPN connection.
909
+ # * +:customer_gateway_id+ - *required* - (String) The ID of the
910
+ # customer gateway.
911
+ # * +:vpn_gateway_id+ - *required* - (String) The ID of the VPN
912
+ # gateway.
913
+ # * +:options+ - (Hash)
914
+ # * +:static_routes_only+ - (Boolean)
915
+ # @return [Core::Response]
916
+ # The #data method of the response object returns
917
+ # a hash with the following structure:
918
+ # * +:vpn_connection+ - (Hash)
919
+ # * +:vpn_connection_id+ - (String)
920
+ # * +:state+ - (String)
921
+ # * +:customer_gateway_configuration+ - (String)
922
+ # * +:type+ - (String)
923
+ # * +:customer_gateway_id+ - (String)
924
+ # * +:vpn_gateway_id+ - (String)
925
+ # * +:tag_set+ - (Array<Hash>)
926
+ # * +:key+ - (String)
927
+ # * +:value+ - (String)
928
+ # * +:vgw_telemetry+ - (Array<Hash>)
929
+ # * +:outside_ip_address+ - (String)
930
+ # * +:status+ - (String)
931
+ # * +:last_status_change+ - (Time)
932
+ # * +:status_message+ - (String)
933
+ # * +:accepted_route_count+ - (Integer)
934
+ # * +:options+ - (Hash)
935
+ # * +:static_routes_only+ - (Boolean)
936
+ # * +:routes+ - (Array<Hash>)
937
+ # * +:destination_cidr_block+ - (String)
938
+ # * +:source+ - (String)
939
+ # * +:state+ - (String)
940
+
941
+ # @!method create_vpn_connection_route(options = {})
942
+ # Calls the CreateVpnConnectionRoute API operation.
943
+ # @param [Hash] options
944
+ # * +:vpn_connection_id+ - *required* - (String)
945
+ # * +:destination_cidr_block+ - *required* - (String)
946
+ # @return [Core::Response]
947
+
948
+ # @!method create_vpn_gateway(options = {})
949
+ # Calls the CreateVpnGateway API operation.
950
+ # @param [Hash] options
951
+ # * +:type+ - *required* - (String) The type of VPN connection this VPN
952
+ # gateway supports.
953
+ # * +:availability_zone+ - (String) The Availability Zone in which to
954
+ # create the VPN gateway.
955
+ # @return [Core::Response]
956
+ # The #data method of the response object returns
957
+ # a hash with the following structure:
958
+ # * +:vpn_gateway+ - (Hash)
959
+ # * +:vpn_gateway_id+ - (String)
960
+ # * +:state+ - (String)
961
+ # * +:vpn_type+ - (String)
962
+ # * +:availability_zone+ - (String)
963
+ # * +:attachments+ - (Array<Hash>)
964
+ # * +:vpc_id+ - (String)
965
+ # * +:state+ - (String)
966
+ # * +:tag_set+ - (Array<Hash>)
967
+ # * +:key+ - (String)
968
+ # * +:value+ - (String)
969
+
970
+ # @!method deactivate_license(options = {})
971
+ # Calls the DeactivateLicense API operation.
972
+ # @param [Hash] options
973
+ # * +:license_id+ - *required* - (String) Specifies the ID for the
974
+ # specific license to deactivate against.
975
+ # * +:capacity+ - *required* - (Integer) Specifies the amount of
976
+ # capacity to deactivate against the license.
977
+ # @return [Core::Response]
978
+
979
+ # @!method delete_customer_gateway(options = {})
980
+ # Calls the DeleteCustomerGateway API operation.
981
+ # @param [Hash] options
982
+ # * +:customer_gateway_id+ - *required* - (String) The ID of the
983
+ # customer gateway to delete.
984
+ # @return [Core::Response]
985
+
986
+ # @!method delete_dhcp_options(options = {})
987
+ # Calls the DeleteDhcpOptions API operation.
988
+ # @param [Hash] options
989
+ # * +:dhcp_options_id+ - *required* - (String) The ID of the DHCP
990
+ # options set to delete.
991
+ # @return [Core::Response]
992
+
993
+ # @!method delete_internet_gateway(options = {})
994
+ # Calls the DeleteInternetGateway API operation.
995
+ # @param [Hash] options
996
+ # * +:internet_gateway_id+ - *required* - (String) The ID of the
997
+ # Internet gateway to be deleted.
998
+ # @return [Core::Response]
999
+
1000
+ # @!method delete_key_pair(options = {})
1001
+ # Calls the DeleteKeyPair API operation.
1002
+ # @param [Hash] options
1003
+ # * +:key_name+ - *required* - (String) The name of the Amazon EC2 key
1004
+ # pair to delete.
1005
+ # @return [Core::Response]
1006
+
1007
+ # @!method delete_network_acl(options = {})
1008
+ # Calls the DeleteNetworkAcl API operation.
1009
+ # @param [Hash] options
1010
+ # * +:network_acl_id+ - *required* - (String) The ID of the network ACL
1011
+ # to be deleted.
1012
+ # @return [Core::Response]
1013
+
1014
+ # @!method delete_network_acl_entry(options = {})
1015
+ # Calls the DeleteNetworkAclEntry API operation.
1016
+ # @param [Hash] options
1017
+ # * +:network_acl_id+ - *required* - (String) ID of the network ACL.
1018
+ # * +:rule_number+ - *required* - (Integer) Rule number for the entry
1019
+ # to delete.
1020
+ # * +:egress+ - *required* - (Boolean) Whether the rule to delete is an
1021
+ # egress rule ( +true+ ) or ingress rule ( +false+ ).
1022
+ # @return [Core::Response]
1023
+
1024
+ # @!method delete_network_interface(options = {})
1025
+ # Calls the DeleteNetworkInterface API operation.
1026
+ # @param [Hash] options
1027
+ # * +:network_interface_id+ - *required* - (String)
1028
+ # @return [Core::Response]
1029
+
1030
+ # @!method delete_placement_group(options = {})
1031
+ # Calls the DeletePlacementGroup API operation.
1032
+ # @param [Hash] options
1033
+ # * +:group_name+ - *required* - (String) The name of the
1034
+ # PlacementGroup to delete.
1035
+ # @return [Core::Response]
1036
+
1037
+ # @!method delete_route(options = {})
1038
+ # Calls the DeleteRoute API operation.
1039
+ # @param [Hash] options
1040
+ # * +:route_table_id+ - *required* - (String) The ID of the route table
1041
+ # where the route will be deleted.
1042
+ # * +:destination_cidr_block+ - *required* - (String) The CIDR range
1043
+ # for the route you want to delete. The value you specify must
1044
+ # exactly match the CIDR for the route you want to delete.
1045
+ # @return [Core::Response]
1046
+
1047
+ # @!method delete_route_table(options = {})
1048
+ # Calls the DeleteRouteTable API operation.
1049
+ # @param [Hash] options
1050
+ # * +:route_table_id+ - *required* - (String) The ID of the route table
1051
+ # to be deleted.
1052
+ # @return [Core::Response]
1053
+
1054
+ # @!method delete_security_group(options = {})
1055
+ # Calls the DeleteSecurityGroup API operation.
1056
+ # @param [Hash] options
1057
+ # * +:group_name+ - (String) The name of the Amazon EC2 security group
1058
+ # to delete.
1059
+ # * +:group_id+ - (String) The ID of the Amazon EC2 security group to
1060
+ # delete.
1061
+ # @return [Core::Response]
1062
+
1063
+ # @!method delete_snapshot(options = {})
1064
+ # Calls the DeleteSnapshot API operation.
1065
+ # @param [Hash] options
1066
+ # * +:snapshot_id+ - *required* - (String) The ID of the snapshot to
1067
+ # delete.
1068
+ # @return [Core::Response]
1069
+
1070
+ # @!method delete_spot_datafeed_subscription(options = {})
1071
+ # Calls the DeleteSpotDatafeedSubscription API operation.
1072
+ # @param [Hash] options
1073
+ # @return [Core::Response]
1074
+
1075
+ # @!method delete_subnet(options = {})
1076
+ # Calls the DeleteSubnet API operation.
1077
+ # @param [Hash] options
1078
+ # * +:subnet_id+ - *required* - (String) The ID of the subnet you want
1079
+ # to delete.
1080
+ # @return [Core::Response]
1081
+
1082
+ # @!method delete_tags(options = {})
1083
+ # Calls the DeleteTags API operation.
1084
+ # @param [Hash] options
1085
+ # * +:resources+ - *required* - (Array<String>) A list of one or more
1086
+ # resource IDs. This could be the ID of an AMI, an instance, an EBS
1087
+ # volume, or snapshot, etc.
1088
+ # * +:tags+ - (Array<Hash>) The tags to delete from the specified
1089
+ # resources. Each tag item consists of a key-value pair. If a tag is
1090
+ # specified without a value, the tag and all of its values are
1091
+ # deleted.
1092
+ # * +:key+ - (String) The tag's key.
1093
+ # * +:value+ - (String) The tag's value.
1094
+ # @return [Core::Response]
1095
+
1096
+ # @!method delete_volume(options = {})
1097
+ # Calls the DeleteVolume API operation.
1098
+ # @param [Hash] options
1099
+ # * +:volume_id+ - *required* - (String) The ID of the EBS volume to
1100
+ # delete.
1101
+ # @return [Core::Response]
1102
+
1103
+ # @!method delete_vpc(options = {})
1104
+ # Calls the DeleteVpc API operation.
1105
+ # @param [Hash] options
1106
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC you want to
1107
+ # delete.
1108
+ # @return [Core::Response]
1109
+
1110
+ # @!method delete_vpn_connection(options = {})
1111
+ # Calls the DeleteVpnConnection API operation.
1112
+ # @param [Hash] options
1113
+ # * +:vpn_connection_id+ - *required* - (String) The ID of the VPN
1114
+ # connection to delete
1115
+ # @return [Core::Response]
1116
+
1117
+ # @!method delete_vpn_connection_route(options = {})
1118
+ # Calls the DeleteVpnConnectionRoute API operation.
1119
+ # @param [Hash] options
1120
+ # * +:vpn_connection_id+ - *required* - (String)
1121
+ # * +:destination_cidr_block+ - *required* - (String)
1122
+ # @return [Core::Response]
1123
+
1124
+ # @!method delete_vpn_gateway(options = {})
1125
+ # Calls the DeleteVpnGateway API operation.
1126
+ # @param [Hash] options
1127
+ # * +:vpn_gateway_id+ - *required* - (String) The ID of the VPN gateway
1128
+ # to delete.
1129
+ # @return [Core::Response]
1130
+
1131
+ # @!method deregister_image(options = {})
1132
+ # Calls the DeregisterImage API operation.
1133
+ # @param [Hash] options
1134
+ # * +:image_id+ - *required* - (String) The ID of the AMI to
1135
+ # deregister.
1136
+ # @return [Core::Response]
1137
+
1138
+ # @!method describe_account_attributes(options = {})
1139
+ # Calls the DescribeAccountAttributes API operation.
1140
+ # @param [Hash] options
1141
+ # * +:attribute_names+ - (Array<String>)
1142
+ # @return [Core::Response]
1143
+ # The #data method of the response object returns
1144
+ # a hash with the following structure:
1145
+ # * +:account_attribute_set+ - (Array<Hash>)
1146
+ # * +:attribute_name+ - (String)
1147
+ # * +:attribute_value_set+ - (Array<Hash>)
1148
+ # * +:attribute_value+ - (String)
1149
+
1150
+ # @!method describe_addresses(options = {})
1151
+ # Calls the DescribeAddresses API operation.
1152
+ # @param [Hash] options
1153
+ # * +:public_ips+ - (Array<String>) The optional list of Elastic IP
1154
+ # addresses to describe.
1155
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1156
+ # properties for Addresses. For a complete reference to the available
1157
+ # filter keys for this operation, see the Amazon EC2 API reference.
1158
+ # * +:name+ - (String) Specifies the name of the filter.
1159
+ # * +:values+ - (Array<String>) Contains one or more values for the
1160
+ # filter.
1161
+ # * +:allocation_ids+ - (Array<String>)
1162
+ # @return [Core::Response]
1163
+ # The #data method of the response object returns
1164
+ # a hash with the following structure:
1165
+ # * +:addresses_set+ - (Array<Hash>)
1166
+ # * +:instance_id+ - (String)
1167
+ # * +:public_ip+ - (String)
1168
+ # * +:allocation_id+ - (String)
1169
+ # * +:association_id+ - (String)
1170
+ # * +:domain+ - (String)
1171
+ # * +:network_interface_id+ - (String)
1172
+ # * +:network_interface_owner_id+ - (String)
1173
+ # * +:private_ip_address+ - (String)
1174
+
1175
+ # @!method describe_availability_zones(options = {})
1176
+ # Calls the DescribeAvailabilityZones API operation.
1177
+ # @param [Hash] options
1178
+ # * +:zone_names+ - (Array<String>) A list of the availability zone
1179
+ # names to describe.
1180
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1181
+ # properties for AvailabilityZones. For a complete reference to the
1182
+ # available filter keys for this operation, see the Amazon EC2 API
1183
+ # reference.
1184
+ # * +:name+ - (String) Specifies the name of the filter.
1185
+ # * +:values+ - (Array<String>) Contains one or more values for the
1186
+ # filter.
1187
+ # @return [Core::Response]
1188
+ # The #data method of the response object returns
1189
+ # a hash with the following structure:
1190
+ # * +:availability_zone_info+ - (Array<Hash>)
1191
+ # * +:zone_name+ - (String)
1192
+ # * +:zone_state+ - (String)
1193
+ # * +:region_name+ - (String)
1194
+ # * +:message_set+ - (Array<Hash>)
1195
+ # * +:message+ - (String)
1196
+
1197
+ # @!method describe_bundle_tasks(options = {})
1198
+ # Calls the DescribeBundleTasks API operation.
1199
+ # @param [Hash] options
1200
+ # * +:bundle_ids+ - (Array<String>) The list of bundle task IDs to
1201
+ # describe.
1202
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1203
+ # properties for BundleTasks. For a complete reference to the
1204
+ # available filter keys for this operation, see the Amazon EC2 API
1205
+ # reference.
1206
+ # * +:name+ - (String) Specifies the name of the filter.
1207
+ # * +:values+ - (Array<String>) Contains one or more values for the
1208
+ # filter.
1209
+ # @return [Core::Response]
1210
+ # The #data method of the response object returns
1211
+ # a hash with the following structure:
1212
+ # * +:bundle_instance_tasks_set+ - (Array<Hash>)
1213
+ # * +:instance_id+ - (String)
1214
+ # * +:bundle_id+ - (String)
1215
+ # * +:state+ - (String)
1216
+ # * +:start_time+ - (Time)
1217
+ # * +:update_time+ - (Time)
1218
+ # * +:storage+ - (Hash)
1219
+ # * +:s3+ - (Hash)
1220
+ # * +:bucket+ - (String)
1221
+ # * +:prefix+ - (String)
1222
+ # * +:aws_access_key_id+ - (String)
1223
+ # * +:upload_policy+ - (String)
1224
+ # * +:upload_policy_signature+ - (String)
1225
+ # * +:progress+ - (String)
1226
+ # * +:error+ - (Hash)
1227
+ # * +:code+ - (String)
1228
+ # * +:message+ - (String)
1229
+
1230
+ # @!method describe_conversion_tasks(options = {})
1231
+ # Calls the DescribeConversionTasks API operation.
1232
+ # @param [Hash] options
1233
+ # * +:filters+ - (Array<Hash>)
1234
+ # * +:name+ - (String) Specifies the name of the filter.
1235
+ # * +:values+ - (Array<String>) Contains one or more values for the
1236
+ # filter.
1237
+ # * +:conversion_task_ids+ - (Array<String>)
1238
+ # @return [Core::Response]
1239
+ # The #data method of the response object returns
1240
+ # a hash with the following structure:
1241
+ # * +:conversion_tasks+ - (Array<Hash>)
1242
+ # * +:conversion_task_id+ - (String)
1243
+ # * +:expiration_time+ - (String)
1244
+ # * +:import_instance+ - (Hash)
1245
+ # * +:volumes+ - (Array<Hash>)
1246
+ # * +:bytes_converted+ - (Integer)
1247
+ # * +:availability_zone+ - (String)
1248
+ # * +:image+ - (Hash)
1249
+ # * +:format+ - (String)
1250
+ # * +:size+ - (Integer)
1251
+ # * +:import_manifest_url+ - (String)
1252
+ # * +:checksum+ - (String)
1253
+ # * +:volume+ - (Hash)
1254
+ # * +:size+ - (Integer)
1255
+ # * +:id+ - (String)
1256
+ # * +:status+ - (String)
1257
+ # * +:status_message+ - (String)
1258
+ # * +:description+ - (String)
1259
+ # * +:instance_id+ - (String)
1260
+ # * +:platform+ - (String)
1261
+ # * +:description+ - (String)
1262
+ # * +:import_volume+ - (Hash)
1263
+ # * +:bytes_converted+ - (Integer)
1264
+ # * +:availability_zone+ - (String)
1265
+ # * +:description+ - (String)
1266
+ # * +:image+ - (Hash)
1267
+ # * +:format+ - (String)
1268
+ # * +:size+ - (Integer)
1269
+ # * +:import_manifest_url+ - (String)
1270
+ # * +:checksum+ - (String)
1271
+ # * +:volume+ - (Hash)
1272
+ # * +:size+ - (Integer)
1273
+ # * +:id+ - (String)
1274
+ # * +:state+ - (String)
1275
+ # * +:status_message+ - (String)
1276
+ # * +:tag_set+ - (Array<Hash>)
1277
+ # * +:key+ - (String)
1278
+ # * +:value+ - (String)
1279
+
1280
+ # @!method describe_customer_gateways(options = {})
1281
+ # Calls the DescribeCustomerGateways API operation.
1282
+ # @param [Hash] options
1283
+ # * +:customer_gateway_ids+ - (Array<String>) A set of one or more
1284
+ # customer gateway IDs.
1285
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1286
+ # properties for Customer Gateways. For a complete reference to the
1287
+ # available filter keys for this operation, see the Amazon EC2 API
1288
+ # reference.
1289
+ # * +:name+ - (String) Specifies the name of the filter.
1290
+ # * +:values+ - (Array<String>) Contains one or more values for the
1291
+ # filter.
1292
+ # @return [Core::Response]
1293
+ # The #data method of the response object returns
1294
+ # a hash with the following structure:
1295
+ # * +:customer_gateway_set+ - (Array<Hash>)
1296
+ # * +:customer_gateway_id+ - (String)
1297
+ # * +:state+ - (String)
1298
+ # * +:vpn_type+ - (String)
1299
+ # * +:ip_address+ - (String)
1300
+ # * +:bgp_asn+ - (String)
1301
+ # * +:tag_set+ - (Array<Hash>)
1302
+ # * +:key+ - (String)
1303
+ # * +:value+ - (String)
1304
+
1305
+ # @!method describe_dhcp_options(options = {})
1306
+ # Calls the DescribeDhcpOptions API operation.
1307
+ # @param [Hash] options
1308
+ # * +:dhcp_options_ids+ - (Array<String>)
1309
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1310
+ # properties for DhcpOptions. For a complete reference to the
1311
+ # available filter keys for this operation, see the Amazon EC2 API
1312
+ # reference.
1313
+ # * +:name+ - (String) Specifies the name of the filter.
1314
+ # * +:values+ - (Array<String>) Contains one or more values for the
1315
+ # filter.
1316
+ # @return [Core::Response]
1317
+ # The #data method of the response object returns
1318
+ # a hash with the following structure:
1319
+ # * +:dhcp_options_set+ - (Array<Hash>)
1320
+ # * +:dhcp_options_id+ - (String)
1321
+ # * +:dhcp_configuration_set+ - (Array<Hash>)
1322
+ # * +:key+ - (String)
1323
+ # * +:value_set+ - (Array<String>)
1324
+ # * +:tag_set+ - (Array<Hash>)
1325
+ # * +:key+ - (String)
1326
+ # * +:value+ - (String)
1327
+
1328
+ # @!method describe_export_tasks(options = {})
1329
+ # Calls the DescribeExportTasks API operation.
1330
+ # @param [Hash] options
1331
+ # * +:export_task_ids+ - (Array<String>)
1332
+ # @return [Core::Response]
1333
+ # The #data method of the response object returns
1334
+ # a hash with the following structure:
1335
+ # * +:export_task_set+ - (Array<Hash>)
1336
+ # * +:export_task_id+ - (String)
1337
+ # * +:description+ - (String)
1338
+ # * +:state+ - (String)
1339
+ # * +:status_message+ - (String)
1340
+ # * +:instance_export+ - (Hash)
1341
+ # * +:instance_id+ - (String)
1342
+ # * +:target_environment+ - (String)
1343
+ # * +:export_to_s3+ - (Hash)
1344
+ # * +:disk_image_format+ - (String)
1345
+ # * +:container_format+ - (String)
1346
+ # * +:s3_bucket+ - (String)
1347
+ # * +:s3_key+ - (String)
1348
+
1349
+ # @!method describe_image_attribute(options = {})
1350
+ # Calls the DescribeImageAttribute API operation.
1351
+ # @param [Hash] options
1352
+ # * +:image_id+ - *required* - (String) The ID of the AMI whose
1353
+ # attribute is to be described.
1354
+ # * +:attribute+ - *required* - (String) The name of the attribute to
1355
+ # describe. Available attribute names: productCodes, kernel, ramdisk,
1356
+ # launchPermisson, blockDeviceMapping
1357
+ # @return [Core::Response]
1358
+ # The #data method of the response object returns
1359
+ # a hash with the following structure:
1360
+ # * +:image_id+ - (String)
1361
+ # * +:launch_permission+ - (Array<Hash>)
1362
+ # * +:user_id+ - (String)
1363
+ # * +:group+ - (String)
1364
+ # * +:product_codes+ - (Array<Hash>)
1365
+ # * +:product_code+ - (String)
1366
+ # * +:type+ - (String)
1367
+ # * +:kernel+ - (Hash)
1368
+ # * +:value+ - (String)
1369
+ # * +:ramdisk+ - (Hash)
1370
+ # * +:value+ - (String)
1371
+ # * +:description+ - (Hash)
1372
+ # * +:value+ - (String)
1373
+ # * +:block_device_mapping+ - (Array<Hash>)
1374
+ # * +:virtual_name+ - (String)
1375
+ # * +:device_name+ - (String)
1376
+ # * +:ebs+ - (Hash)
1377
+ # * +:snapshot_id+ - (String)
1378
+ # * +:volume_size+ - (Integer)
1379
+ # * +:delete_on_termination+ - (Boolean)
1380
+ # * +:volume_type+ - (String)
1381
+ # * +:iops+ - (Integer)
1382
+ # * +:no_device+ - (String)
1383
+
1384
+ # @!method describe_images(options = {})
1385
+ # Calls the DescribeImages API operation.
1386
+ # @param [Hash] options
1387
+ # * +:image_ids+ - (Array<String>) An optional list of the AMI IDs to
1388
+ # describe. If not specified, all AMIs will be described.
1389
+ # * +:owners+ - (Array<String>) The optional list of owners for the
1390
+ # described AMIs. The IDs amazon, self, and explicit can be used to
1391
+ # include AMIs owned by Amazon, AMIs owned by the user, and AMIs for
1392
+ # which the user has explicit launch permissions, respectively.
1393
+ # * +:executable_users+ - (Array<String>) The optional list of users
1394
+ # with explicit launch permissions for the described AMIs. The user
1395
+ # ID can be a user's account ID, 'self' to return AMIs for which the
1396
+ # sender of the request has explicit launch permissions, or 'all' to
1397
+ # return AMIs with public launch permissions.
1398
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1399
+ # properties for Images. For a complete reference to the available
1400
+ # filter keys for this operation, see the Amazon EC2 API reference.
1401
+ # * +:name+ - (String) Specifies the name of the filter.
1402
+ # * +:values+ - (Array<String>) Contains one or more values for the
1403
+ # filter.
1404
+ # @return [Core::Response]
1405
+ # The #data method of the response object returns
1406
+ # a hash with the following structure:
1407
+ # * +:images_set+ - (Array<Hash>)
1408
+ # * +:image_id+ - (String)
1409
+ # * +:image_location+ - (String)
1410
+ # * +:image_state+ - (String)
1411
+ # * +:image_owner_id+ - (String)
1412
+ # * +:is_public+ - (Boolean)
1413
+ # * +:product_codes+ - (Array<Hash>)
1414
+ # * +:product_code+ - (String)
1415
+ # * +:type+ - (String)
1416
+ # * +:architecture+ - (String)
1417
+ # * +:image_type+ - (String)
1418
+ # * +:kernel_id+ - (String)
1419
+ # * +:ramdisk_id+ - (String)
1420
+ # * +:platform+ - (String)
1421
+ # * +:state_reason+ - (Hash)
1422
+ # * +:code+ - (String)
1423
+ # * +:message+ - (String)
1424
+ # * +:image_owner_alias+ - (String)
1425
+ # * +:name+ - (String)
1426
+ # * +:description+ - (String)
1427
+ # * +:root_device_type+ - (String)
1428
+ # * +:root_device_name+ - (String)
1429
+ # * +:block_device_mapping+ - (Array<Hash>)
1430
+ # * +:virtual_name+ - (String)
1431
+ # * +:device_name+ - (String)
1432
+ # * +:ebs+ - (Hash)
1433
+ # * +:snapshot_id+ - (String)
1434
+ # * +:volume_size+ - (Integer)
1435
+ # * +:delete_on_termination+ - (Boolean)
1436
+ # * +:volume_type+ - (String)
1437
+ # * +:iops+ - (Integer)
1438
+ # * +:no_device+ - (String)
1439
+ # * +:virtualization_type+ - (String)
1440
+ # * +:tag_set+ - (Array<Hash>)
1441
+ # * +:key+ - (String)
1442
+ # * +:value+ - (String)
1443
+ # * +:hypervisor+ - (String)
1444
+
1445
+ # @!method describe_instance_attribute(options = {})
1446
+ # Calls the DescribeInstanceAttribute API operation.
1447
+ # @param [Hash] options
1448
+ # * +:instance_id+ - *required* - (String) The ID of the instance whose
1449
+ # instance attribute is being described.
1450
+ # * +:attribute+ - *required* - (String) The name of the attribute to
1451
+ # describe. Available attribute names: instanceType, kernel, ramdisk,
1452
+ # userData, disableApiTermination, instanceInitiatedShutdownBehavior,
1453
+ # rootDeviceName, blockDeviceMapping
1454
+ # @return [Core::Response]
1455
+ # The #data method of the response object returns
1456
+ # a hash with the following structure:
1457
+ # * +:instance_id+ - (String)
1458
+ # * +:instance_type+ - (Hash)
1459
+ # * +:value+ - (String)
1460
+ # * +:kernel+ - (Hash)
1461
+ # * +:value+ - (String)
1462
+ # * +:ramdisk+ - (Hash)
1463
+ # * +:value+ - (String)
1464
+ # * +:user_data+ - (Hash)
1465
+ # * +:value+ - (String)
1466
+ # * +:disable_api_termination+ - (Hash)
1467
+ # * +:value+ - (Boolean)
1468
+ # * +:instance_initiated_shutdown_behavior+ - (Hash)
1469
+ # * +:value+ - (String)
1470
+ # * +:root_device_name+ - (Hash)
1471
+ # * +:value+ - (String)
1472
+ # * +:block_device_mapping+ - (Array<Hash>)
1473
+ # * +:device_name+ - (String)
1474
+ # * +:ebs+ - (Hash)
1475
+ # * +:volume_id+ - (String)
1476
+ # * +:status+ - (String)
1477
+ # * +:attach_time+ - (Time)
1478
+ # * +:delete_on_termination+ - (Boolean)
1479
+ # * +:product_codes+ - (Array<Hash>)
1480
+ # * +:product_code+ - (String)
1481
+ # * +:type+ - (String)
1482
+ # * +:ebs_optimized+ - (Hash)
1483
+ # * +:value+ - (Boolean)
1484
+
1485
+ # @!method describe_instance_status(options = {})
1486
+ # Calls the DescribeInstanceStatus API operation.
1487
+ # @param [Hash] options
1488
+ # * +:instance_ids+ - (Array<String>) The list of instance IDs. If not
1489
+ # specified, all instances are described.
1490
+ # * +:filters+ - (Array<Hash>) The list of filters to limit returned
1491
+ # results.
1492
+ # * +:name+ - (String) Specifies the name of the filter.
1493
+ # * +:values+ - (Array<String>) Contains one or more values for the
1494
+ # filter.
1495
+ # * +:next_token+ - (String) A string specifying the next paginated set
1496
+ # of results to return.
1497
+ # * +:max_results+ - (Integer) The maximum number of paginated instance
1498
+ # items per response.
1499
+ # * +:include_all_instances+ - (Boolean)
1500
+ # @return [Core::Response]
1501
+ # The #data method of the response object returns
1502
+ # a hash with the following structure:
1503
+ # * +:instance_status_set+ - (Array<Hash>)
1504
+ # * +:instance_id+ - (String)
1505
+ # * +:availability_zone+ - (String)
1506
+ # * +:events_set+ - (Array<Hash>)
1507
+ # * +:code+ - (String)
1508
+ # * +:description+ - (String)
1509
+ # * +:not_before+ - (Time)
1510
+ # * +:not_after+ - (Time)
1511
+ # * +:instance_state+ - (Hash)
1512
+ # * +:code+ - (Integer)
1513
+ # * +:name+ - (String)
1514
+ # * +:system_status+ - (Hash)
1515
+ # * +:status+ - (String)
1516
+ # * +:details+ - (Array<Hash>)
1517
+ # * +:name+ - (String)
1518
+ # * +:status+ - (String)
1519
+ # * +:impaired_since+ - (Time)
1520
+ # * +:instance_status+ - (Hash)
1521
+ # * +:status+ - (String)
1522
+ # * +:details+ - (Array<Hash>)
1523
+ # * +:name+ - (String)
1524
+ # * +:status+ - (String)
1525
+ # * +:impaired_since+ - (Time)
1526
+ # * +:next_token+ - (String)
1527
+
1528
+ # @!method describe_instances(options = {})
1529
+ # Calls the DescribeInstances API operation.
1530
+ # @param [Hash] options
1531
+ # * +:instance_ids+ - (Array<String>) An optional list of the instances
1532
+ # to describe.
1533
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1534
+ # properties for Instances. For a complete reference to the available
1535
+ # filter keys for this operation, see the Amazon EC2 API reference.
1536
+ # * +:name+ - (String) Specifies the name of the filter.
1537
+ # * +:values+ - (Array<String>) Contains one or more values for the
1538
+ # filter.
1539
+ # @return [Core::Response]
1540
+ # The #data method of the response object returns
1541
+ # a hash with the following structure:
1542
+ # * +:reservation_set+ - (Array<Hash>)
1543
+ # * +:reservation_id+ - (String)
1544
+ # * +:owner_id+ - (String)
1545
+ # * +:requester_id+ - (String)
1546
+ # * +:group_set+ - (Array<Hash>)
1547
+ # * +:group_name+ - (String)
1548
+ # * +:group_id+ - (String)
1549
+ # * +:instances_set+ - (Array<Hash>)
1550
+ # * +:instance_id+ - (String)
1551
+ # * +:image_id+ - (String)
1552
+ # * +:instance_state+ - (Hash)
1553
+ # * +:code+ - (Integer)
1554
+ # * +:name+ - (String)
1555
+ # * +:private_dns_name+ - (String)
1556
+ # * +:dns_name+ - (String)
1557
+ # * +:reason+ - (String)
1558
+ # * +:key_name+ - (String)
1559
+ # * +:ami_launch_index+ - (Integer)
1560
+ # * +:product_codes+ - (Array<Hash>)
1561
+ # * +:product_code+ - (String)
1562
+ # * +:type+ - (String)
1563
+ # * +:instance_type+ - (String)
1564
+ # * +:launch_time+ - (Time)
1565
+ # * +:placement+ - (Hash)
1566
+ # * +:availability_zone+ - (String)
1567
+ # * +:group_name+ - (String)
1568
+ # * +:tenancy+ - (String)
1569
+ # * +:kernel_id+ - (String)
1570
+ # * +:ramdisk_id+ - (String)
1571
+ # * +:platform+ - (String)
1572
+ # * +:monitoring+ - (Hash)
1573
+ # * +:state+ - (String)
1574
+ # * +:subnet_id+ - (String)
1575
+ # * +:vpc_id+ - (String)
1576
+ # * +:private_ip_address+ - (String)
1577
+ # * +:ip_address+ - (String)
1578
+ # * +:state_reason+ - (Hash)
1579
+ # * +:code+ - (String)
1580
+ # * +:message+ - (String)
1581
+ # * +:architecture+ - (String)
1582
+ # * +:root_device_type+ - (String)
1583
+ # * +:root_device_name+ - (String)
1584
+ # * +:block_device_mapping+ - (Array<Hash>)
1585
+ # * +:device_name+ - (String)
1586
+ # * +:ebs+ - (Hash)
1587
+ # * +:volume_id+ - (String)
1588
+ # * +:status+ - (String)
1589
+ # * +:attach_time+ - (Time)
1590
+ # * +:delete_on_termination+ - (Boolean)
1591
+ # * +:virtualization_type+ - (String)
1592
+ # * +:instance_lifecycle+ - (String)
1593
+ # * +:spot_instance_request_id+ - (String)
1594
+ # * +:license+ - (Hash)
1595
+ # * +:pool+ - (String)
1596
+ # * +:client_token+ - (String)
1597
+ # * +:tag_set+ - (Array<Hash>)
1598
+ # * +:key+ - (String)
1599
+ # * +:value+ - (String)
1600
+ # * +:group_set+ - (Array<Hash>)
1601
+ # * +:group_name+ - (String)
1602
+ # * +:group_id+ - (String)
1603
+ # * +:source_dest_check+ - (Boolean)
1604
+ # * +:hypervisor+ - (String)
1605
+ # * +:network_interface_set+ - (Array<Hash>)
1606
+ # * +:network_interface_id+ - (String)
1607
+ # * +:subnet_id+ - (String)
1608
+ # * +:vpc_id+ - (String)
1609
+ # * +:description+ - (String)
1610
+ # * +:owner_id+ - (String)
1611
+ # * +:status+ - (String)
1612
+ # * +:private_ip_address+ - (String)
1613
+ # * +:private_dns_name+ - (String)
1614
+ # * +:source_dest_check+ - (Boolean)
1615
+ # * +:group_set+ - (Array<Hash>)
1616
+ # * +:group_name+ - (String)
1617
+ # * +:group_id+ - (String)
1618
+ # * +:attachment+ - (Hash)
1619
+ # * +:attachment_id+ - (String)
1620
+ # * +:device_index+ - (Integer)
1621
+ # * +:status+ - (String)
1622
+ # * +:attach_time+ - (Time)
1623
+ # * +:delete_on_termination+ - (Boolean)
1624
+ # * +:association+ - (Hash)
1625
+ # * +:public_ip+ - (String)
1626
+ # * +:public_dns_name+ - (String)
1627
+ # * +:ip_owner_id+ - (String)
1628
+ # * +:private_ip_addresses_set+ - (Array<Hash>)
1629
+ # * +:private_ip_address+ - (String)
1630
+ # * +:private_dns_name+ - (String)
1631
+ # * +:primary+ - (Boolean)
1632
+ # * +:association+ - (Hash)
1633
+ # * +:public_ip+ - (String)
1634
+ # * +:public_dns_name+ - (String)
1635
+ # * +:ip_owner_id+ - (String)
1636
+ # * +:iam_instance_profile+ - (Hash)
1637
+ # * +:arn+ - (String)
1638
+ # * +:id+ - (String)
1639
+ # * +:ebs_optimized+ - (Boolean)
1640
+
1641
+ # @!method describe_internet_gateways(options = {})
1642
+ # Calls the DescribeInternetGateways API operation.
1643
+ # @param [Hash] options
1644
+ # * +:internet_gateway_ids+ - (Array<String>) One or more Internet
1645
+ # gateway IDs.
1646
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1647
+ # properties for Internet Gateways. For a complete reference to the
1648
+ # available filter keys for this operation, see the Amazon EC2 API
1649
+ # reference.
1650
+ # * +:name+ - (String) Specifies the name of the filter.
1651
+ # * +:values+ - (Array<String>) Contains one or more values for the
1652
+ # filter.
1653
+ # @return [Core::Response]
1654
+ # The #data method of the response object returns
1655
+ # a hash with the following structure:
1656
+ # * +:internet_gateway_set+ - (Array<Hash>)
1657
+ # * +:internet_gateway_id+ - (String)
1658
+ # * +:attachment_set+ - (Array<Hash>)
1659
+ # * +:vpc_id+ - (String)
1660
+ # * +:state+ - (String)
1661
+ # * +:tag_set+ - (Array<Hash>)
1662
+ # * +:key+ - (String)
1663
+ # * +:value+ - (String)
1664
+
1665
+ # @!method describe_key_pairs(options = {})
1666
+ # Calls the DescribeKeyPairs API operation.
1667
+ # @param [Hash] options
1668
+ # * +:key_names+ - (Array<String>) The optional list of key pair names
1669
+ # to describe.
1670
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1671
+ # properties for KeyPairs. For a complete reference to the available
1672
+ # filter keys for this operation, see the Amazon EC2 API reference.
1673
+ # * +:name+ - (String) Specifies the name of the filter.
1674
+ # * +:values+ - (Array<String>) Contains one or more values for the
1675
+ # filter.
1676
+ # @return [Core::Response]
1677
+ # The #data method of the response object returns
1678
+ # a hash with the following structure:
1679
+ # * +:key_set+ - (Array<Hash>)
1680
+ # * +:key_name+ - (String)
1681
+ # * +:key_fingerprint+ - (String)
1682
+
1683
+ # @!method describe_licenses(options = {})
1684
+ # Calls the DescribeLicenses API operation.
1685
+ # @param [Hash] options
1686
+ # * +:license_ids+ - (Array<String>) Specifies the license registration
1687
+ # for which details are to be returned.
1688
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1689
+ # properties for Licenses. For a complete reference to the available
1690
+ # filter keys for this operation, see the Amazon EC2 API reference.
1691
+ # * +:name+ - (String) Specifies the name of the filter.
1692
+ # * +:values+ - (Array<String>) Contains one or more values for the
1693
+ # filter.
1694
+ # @return [Core::Response]
1695
+ # The #data method of the response object returns
1696
+ # a hash with the following structure:
1697
+ # * +:license_set+ - (Array<Hash>)
1698
+ # * +:license_id+ - (String)
1699
+ # * +:type+ - (String)
1700
+ # * +:pool+ - (String)
1701
+ # * +:capacity_set+ - (Array<Hash>)
1702
+ # * +:capacity+ - (Integer)
1703
+ # * +:instance_capacity+ - (Integer)
1704
+ # * +:state+ - (String)
1705
+ # * +:earliest_allowed_deactivation_time+ - (Time)
1706
+ # * +:tag_set+ - (Array<Hash>)
1707
+ # * +:key+ - (String)
1708
+ # * +:value+ - (String)
1709
+
1710
+ # @!method describe_network_acls(options = {})
1711
+ # Calls the DescribeNetworkAcls API operation.
1712
+ # @param [Hash] options
1713
+ # * +:network_acl_ids+ - (Array<String>) One or more network ACL IDs.
1714
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1715
+ # properties for Network ACLs. For a complete reference to the
1716
+ # available filter keys for this operation, see the Amazon EC2 API
1717
+ # reference.
1718
+ # * +:name+ - (String) Specifies the name of the filter.
1719
+ # * +:values+ - (Array<String>) Contains one or more values for the
1720
+ # filter.
1721
+ # @return [Core::Response]
1722
+ # The #data method of the response object returns
1723
+ # a hash with the following structure:
1724
+ # * +:network_acl_set+ - (Array<Hash>)
1725
+ # * +:network_acl_id+ - (String)
1726
+ # * +:vpc_id+ - (String)
1727
+ # * +:default+ - (Boolean)
1728
+ # * +:entry_set+ - (Array<Hash>)
1729
+ # * +:rule_number+ - (Integer)
1730
+ # * +:protocol+ - (String)
1731
+ # * +:rule_action+ - (String)
1732
+ # * +:egress+ - (Boolean)
1733
+ # * +:cidr_block+ - (String)
1734
+ # * +:icmp_type_code+ - (Hash)
1735
+ # * +:type+ - (Integer)
1736
+ # * +:code+ - (Integer)
1737
+ # * +:port_range+ - (Hash)
1738
+ # * +:from+ - (Integer)
1739
+ # * +:to+ - (Integer)
1740
+ # * +:association_set+ - (Array<Hash>)
1741
+ # * +:network_acl_association_id+ - (String)
1742
+ # * +:network_acl_id+ - (String)
1743
+ # * +:subnet_id+ - (String)
1744
+ # * +:tag_set+ - (Array<Hash>)
1745
+ # * +:key+ - (String)
1746
+ # * +:value+ - (String)
1747
+
1748
+ # @!method describe_network_interface_attribute(options = {})
1749
+ # Calls the DescribeNetworkInterfaceAttribute API operation.
1750
+ # @param [Hash] options
1751
+ # * +:network_interface_id+ - *required* - (String)
1752
+ # * +:description+ - (String)
1753
+ # * +:source_dest_check+ - (String)
1754
+ # * +:groups+ - (String)
1755
+ # * +:attachment+ - (String)
1756
+ # @return [Core::Response]
1757
+ # The #data method of the response object returns
1758
+ # a hash with the following structure:
1759
+ # * +:network_interface_id+ - (String)
1760
+ # * +:description+ - (Hash)
1761
+ # * +:value+ - (String)
1762
+ # * +:source_dest_check+ - (Hash)
1763
+ # * +:value+ - (Boolean)
1764
+ # * +:group_set+ - (Array<Hash>)
1765
+ # * +:group_name+ - (String)
1766
+ # * +:group_id+ - (String)
1767
+ # * +:attachment+ - (Hash)
1768
+ # * +:attachment_id+ - (String)
1769
+ # * +:instance_id+ - (String)
1770
+ # * +:instance_owner_id+ - (String)
1771
+ # * +:device_index+ - (Integer)
1772
+ # * +:status+ - (String)
1773
+ # * +:attach_time+ - (Time)
1774
+ # * +:delete_on_termination+ - (Boolean)
1775
+
1776
+ # @!method describe_network_interfaces(options = {})
1777
+ # Calls the DescribeNetworkInterfaces API operation.
1778
+ # @param [Hash] options
1779
+ # * +:network_interface_ids+ - (Array<String>)
1780
+ # * +:filters+ - (Array<Hash>)
1781
+ # * +:name+ - (String) Specifies the name of the filter.
1782
+ # * +:values+ - (Array<String>) Contains one or more values for the
1783
+ # filter.
1784
+ # @return [Core::Response]
1785
+ # The #data method of the response object returns
1786
+ # a hash with the following structure:
1787
+ # * +:network_interface_set+ - (Array<Hash>)
1788
+ # * +:network_interface_id+ - (String)
1789
+ # * +:subnet_id+ - (String)
1790
+ # * +:vpc_id+ - (String)
1791
+ # * +:availability_zone+ - (String)
1792
+ # * +:description+ - (String)
1793
+ # * +:owner_id+ - (String)
1794
+ # * +:requester_id+ - (String)
1795
+ # * +:requester_managed+ - (Boolean)
1796
+ # * +:status+ - (String)
1797
+ # * +:mac_address+ - (String)
1798
+ # * +:private_ip_address+ - (String)
1799
+ # * +:private_dns_name+ - (String)
1800
+ # * +:source_dest_check+ - (Boolean)
1801
+ # * +:groups+ - (Array<Hash>)
1802
+ # * +:group_name+ - (String)
1803
+ # * +:group_id+ - (String)
1804
+ # * +:attachment+ - (Hash)
1805
+ # * +:attachment_id+ - (String)
1806
+ # * +:instance_id+ - (String)
1807
+ # * +:instance_owner_id+ - (String)
1808
+ # * +:device_index+ - (Integer)
1809
+ # * +:status+ - (String)
1810
+ # * +:attach_time+ - (Time)
1811
+ # * +:delete_on_termination+ - (Boolean)
1812
+ # * +:association+ - (Hash)
1813
+ # * +:public_ip+ - (String)
1814
+ # * +:ip_owner_id+ - (String)
1815
+ # * +:allocation_id+ - (String)
1816
+ # * +:association_id+ - (String)
1817
+ # * +:tag_set+ - (Array<Hash>)
1818
+ # * +:key+ - (String)
1819
+ # * +:value+ - (String)
1820
+ # * +:private_ip_addresses_set+ - (Array<Hash>)
1821
+ # * +:private_ip_address+ - (String)
1822
+ # * +:private_dns_name+ - (String)
1823
+ # * +:primary+ - (Boolean)
1824
+ # * +:association+ - (Hash)
1825
+ # * +:public_ip+ - (String)
1826
+ # * +:ip_owner_id+ - (String)
1827
+ # * +:allocation_id+ - (String)
1828
+ # * +:association_id+ - (String)
1829
+
1830
+ # @!method describe_placement_groups(options = {})
1831
+ # Calls the DescribePlacementGroups API operation.
1832
+ # @param [Hash] options
1833
+ # * +:group_names+ - (Array<String>) The name of the PlacementGroup.
1834
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1835
+ # properties for Placement Groups. For a complete reference to the
1836
+ # available filter keys for this operation, see the Amazon EC2 API
1837
+ # reference.
1838
+ # * +:name+ - (String) Specifies the name of the filter.
1839
+ # * +:values+ - (Array<String>) Contains one or more values for the
1840
+ # filter.
1841
+ # @return [Core::Response]
1842
+ # The #data method of the response object returns
1843
+ # a hash with the following structure:
1844
+ # * +:placement_group_set+ - (Array<Hash>)
1845
+ # * +:group_name+ - (String)
1846
+ # * +:strategy+ - (String)
1847
+ # * +:state+ - (String)
1848
+
1849
+ # @!method describe_regions(options = {})
1850
+ # Calls the DescribeRegions API operation.
1851
+ # @param [Hash] options
1852
+ # * +:region_names+ - (Array<String>) The optional list of regions to
1853
+ # describe.
1854
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1855
+ # properties for Regions. For a complete reference to the available
1856
+ # filter keys for this operation, see the Amazon EC2 API reference.
1857
+ # * +:name+ - (String) Specifies the name of the filter.
1858
+ # * +:values+ - (Array<String>) Contains one or more values for the
1859
+ # filter.
1860
+ # @return [Core::Response]
1861
+ # The #data method of the response object returns
1862
+ # a hash with the following structure:
1863
+ # * +:region_info+ - (Array<Hash>)
1864
+ # * +:region_name+ - (String)
1865
+ # * +:region_endpoint+ - (String)
1866
+
1867
+ # @!method describe_reserved_instances(options = {})
1868
+ # Calls the DescribeReservedInstances API operation.
1869
+ # @param [Hash] options
1870
+ # * +:reserved_instances_ids+ - (Array<String>) The optional list of
1871
+ # Reserved Instance IDs to describe.
1872
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1873
+ # properties for ReservedInstances. For a complete reference to the
1874
+ # available filter keys for this operation, see the Amazon EC2 API
1875
+ # reference.
1876
+ # * +:name+ - (String) Specifies the name of the filter.
1877
+ # * +:values+ - (Array<String>) Contains one or more values for the
1878
+ # filter.
1879
+ # * +:offering_type+ - (String) The Reserved Instance offering type.
1880
+ # @return [Core::Response]
1881
+ # The #data method of the response object returns
1882
+ # a hash with the following structure:
1883
+ # * +:reserved_instances_set+ - (Array<Hash>)
1884
+ # * +:reserved_instances_id+ - (String)
1885
+ # * +:instance_type+ - (String)
1886
+ # * +:availability_zone+ - (String)
1887
+ # * +:start+ - (Time)
1888
+ # * +:duration+ - (Integer)
1889
+ # * +:usage_price+ - (Numeric)
1890
+ # * +:fixed_price+ - (Numeric)
1891
+ # * +:instance_count+ - (Integer)
1892
+ # * +:product_description+ - (String)
1893
+ # * +:state+ - (String)
1894
+ # * +:tag_set+ - (Array<Hash>)
1895
+ # * +:key+ - (String)
1896
+ # * +:value+ - (String)
1897
+ # * +:instance_tenancy+ - (String)
1898
+ # * +:currency_code+ - (String)
1899
+ # * +:offering_type+ - (String)
1900
+ # * +:recurring_charges+ - (Array<Hash>)
1901
+ # * +:frequency+ - (String)
1902
+ # * +:amount+ - (Numeric)
1903
+
1904
+ # @!method describe_reserved_instances_listings(options = {})
1905
+ # Calls the DescribeReservedInstancesListings API operation.
1906
+ # @param [Hash] options
1907
+ # * +:reserved_instances_id+ - (String)
1908
+ # * +:reserved_instances_listing_id+ - (String)
1909
+ # * +:filters+ - (Array<Hash>)
1910
+ # * +:name+ - (String) Specifies the name of the filter.
1911
+ # * +:values+ - (Array<String>) Contains one or more values for the
1912
+ # filter.
1913
+ # @return [Core::Response]
1914
+ # The #data method of the response object returns
1915
+ # a hash with the following structure:
1916
+ # * +:reserved_instances_listings_set+ - (Array<Hash>)
1917
+ # * +:reserved_instances_listing_id+ - (String)
1918
+ # * +:reserved_instances_id+ - (String)
1919
+ # * +:create_date+ - (Time)
1920
+ # * +:update_date+ - (Time)
1921
+ # * +:status+ - (String)
1922
+ # * +:status_message+ - (String)
1923
+ # * +:instance_counts+ - (Array<Hash>)
1924
+ # * +:state+ - (String)
1925
+ # * +:instance_count+ - (Integer)
1926
+ # * +:price_schedules+ - (Array<Hash>)
1927
+ # * +:term+ - (Integer)
1928
+ # * +:price+ - (Numeric)
1929
+ # * +:currency_code+ - (String)
1930
+ # * +:active+ - (Boolean)
1931
+ # * +:tag_set+ - (Array<Hash>)
1932
+ # * +:key+ - (String)
1933
+ # * +:value+ - (String)
1934
+ # * +:client_token+ - (String)
1935
+
1936
+ # @!method describe_reserved_instances_offerings(options = {})
1937
+ # Calls the DescribeReservedInstancesOfferings API operation.
1938
+ # @param [Hash] options
1939
+ # * +:reserved_instances_offering_ids+ - (Array<String>) An optional
1940
+ # list of the unique IDs of the Reserved Instance offerings to
1941
+ # describe.
1942
+ # * +:instance_type+ - (String) The instance type on which the Reserved
1943
+ # Instance can be used.
1944
+ # * +:availability_zone+ - (String) The Availability Zone in which the
1945
+ # Reserved Instance can be used.
1946
+ # * +:product_description+ - (String) The Reserved Instance product
1947
+ # description.
1948
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1949
+ # properties for ReservedInstancesOfferings. For a complete reference
1950
+ # to the available filter keys for this operation, see the Amazon EC2
1951
+ # API reference.
1952
+ # * +:name+ - (String) Specifies the name of the filter.
1953
+ # * +:values+ - (Array<String>) Contains one or more values for the
1954
+ # filter.
1955
+ # * +:instance_tenancy+ - (String) The tenancy of the Reserved Instance
1956
+ # offering. A Reserved Instance with tenancy of dedicated will run on
1957
+ # single-tenant hardware and can only be launched within a VPC.
1958
+ # * +:offering_type+ - (String) The Reserved Instance offering type.
1959
+ # * +:next_token+ - (String)
1960
+ # * +:max_results+ - (Integer)
1961
+ # @return [Core::Response]
1962
+ # The #data method of the response object returns
1963
+ # a hash with the following structure:
1964
+ # * +:reserved_instances_offerings_set+ - (Array<Hash>)
1965
+ # * +:reserved_instances_offering_id+ - (String)
1966
+ # * +:instance_type+ - (String)
1967
+ # * +:availability_zone+ - (String)
1968
+ # * +:duration+ - (Integer)
1969
+ # * +:usage_price+ - (Numeric)
1970
+ # * +:fixed_price+ - (Numeric)
1971
+ # * +:product_description+ - (String)
1972
+ # * +:instance_tenancy+ - (String)
1973
+ # * +:currency_code+ - (String)
1974
+ # * +:offering_type+ - (String)
1975
+ # * +:recurring_charges+ - (Array<Hash>)
1976
+ # * +:frequency+ - (String)
1977
+ # * +:amount+ - (Numeric)
1978
+ # * +:marketplace+ - (Boolean)
1979
+ # * +:pricing_details_set+ - (Array<Hash>)
1980
+ # * +:price+ - (Numeric)
1981
+ # * +:count+ - (Integer)
1982
+ # * +:next_token+ - (String)
1983
+
1984
+ # @!method describe_route_tables(options = {})
1985
+ # Calls the DescribeRouteTables API operation.
1986
+ # @param [Hash] options
1987
+ # * +:route_table_ids+ - (Array<String>) One or more route table IDs.
1988
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
1989
+ # properties for Route Tables. For a complete reference to the
1990
+ # available filter keys for this operation, see the Amazon EC2 API
1991
+ # reference.
1992
+ # * +:name+ - (String) Specifies the name of the filter.
1993
+ # * +:values+ - (Array<String>) Contains one or more values for the
1994
+ # filter.
1995
+ # @return [Core::Response]
1996
+ # The #data method of the response object returns
1997
+ # a hash with the following structure:
1998
+ # * +:route_table_set+ - (Array<Hash>)
1999
+ # * +:route_table_id+ - (String)
2000
+ # * +:vpc_id+ - (String)
2001
+ # * +:route_set+ - (Array<Hash>)
2002
+ # * +:destination_cidr_block+ - (String)
2003
+ # * +:gateway_id+ - (String)
2004
+ # * +:instance_id+ - (String)
2005
+ # * +:instance_owner_id+ - (String)
2006
+ # * +:network_interface_id+ - (String)
2007
+ # * +:state+ - (String)
2008
+ # * +:association_set+ - (Array<Hash>)
2009
+ # * +:route_table_association_id+ - (String)
2010
+ # * +:route_table_id+ - (String)
2011
+ # * +:subnet_id+ - (String)
2012
+ # * +:main+ - (Boolean)
2013
+ # * +:tag_set+ - (Array<Hash>)
2014
+ # * +:key+ - (String)
2015
+ # * +:value+ - (String)
2016
+ # * +:propagating_vgw_set+ - (Array<Hash>)
2017
+ # * +:gateway_id+ - (String)
2018
+
2019
+ # @!method describe_security_groups(options = {})
2020
+ # Calls the DescribeSecurityGroups API operation.
2021
+ # @param [Hash] options
2022
+ # * +:group_names+ - (Array<String>) The optional list of Amazon EC2
2023
+ # security groups to describe.
2024
+ # * +:group_ids+ - (Array<String>)
2025
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2026
+ # properties for SecurityGroups. For a complete reference to the
2027
+ # available filter keys for this operation, see the Amazon EC2 API
2028
+ # reference.
2029
+ # * +:name+ - (String) Specifies the name of the filter.
2030
+ # * +:values+ - (Array<String>) Contains one or more values for the
2031
+ # filter.
2032
+ # @return [Core::Response]
2033
+ # The #data method of the response object returns
2034
+ # a hash with the following structure:
2035
+ # * +:security_group_info+ - (Array<Hash>)
2036
+ # * +:owner_id+ - (String)
2037
+ # * +:group_name+ - (String)
2038
+ # * +:group_id+ - (String)
2039
+ # * +:group_description+ - (String)
2040
+ # * +:ip_permissions+ - (Array<Hash>)
2041
+ # * +:ip_protocol+ - (String)
2042
+ # * +:from_port+ - (Integer)
2043
+ # * +:to_port+ - (Integer)
2044
+ # * +:groups+ - (Array<Hash>)
2045
+ # * +:user_id+ - (String)
2046
+ # * +:group_name+ - (String)
2047
+ # * +:group_id+ - (String)
2048
+ # * +:ip_ranges+ - (Array<Hash>)
2049
+ # * +:cidr_ip+ - (String)
2050
+ # * +:ip_permissions_egress+ - (Array<Hash>)
2051
+ # * +:ip_protocol+ - (String)
2052
+ # * +:from_port+ - (Integer)
2053
+ # * +:to_port+ - (Integer)
2054
+ # * +:groups+ - (Array<Hash>)
2055
+ # * +:user_id+ - (String)
2056
+ # * +:group_name+ - (String)
2057
+ # * +:group_id+ - (String)
2058
+ # * +:ip_ranges+ - (Array<Hash>)
2059
+ # * +:cidr_ip+ - (String)
2060
+ # * +:vpc_id+ - (String)
2061
+ # * +:tag_set+ - (Array<Hash>)
2062
+ # * +:key+ - (String)
2063
+ # * +:value+ - (String)
2064
+
2065
+ # @!method describe_snapshot_attribute(options = {})
2066
+ # Calls the DescribeSnapshotAttribute API operation.
2067
+ # @param [Hash] options
2068
+ # * +:snapshot_id+ - *required* - (String) The ID of the EBS snapshot
2069
+ # whose attribute is being described.
2070
+ # * +:attribute+ - *required* - (String) The name of the EBS attribute
2071
+ # to describe. Available attribute names: createVolumePermission
2072
+ # @return [Core::Response]
2073
+ # The #data method of the response object returns
2074
+ # a hash with the following structure:
2075
+ # * +:snapshot_id+ - (String)
2076
+ # * +:create_volume_permission+ - (Array<Hash>)
2077
+ # * +:user_id+ - (String)
2078
+ # * +:group+ - (String)
2079
+ # * +:product_codes+ - (Array<Hash>)
2080
+ # * +:product_code+ - (String)
2081
+ # * +:type+ - (String)
2082
+
2083
+ # @!method describe_snapshots(options = {})
2084
+ # Calls the DescribeSnapshots API operation.
2085
+ # @param [Hash] options
2086
+ # * +:snapshot_ids+ - (Array<String>) The optional list of EBS snapshot
2087
+ # IDs to describe.
2088
+ # * +:owner_ids+ - (Array<String>) The optional list of EBS snapshot
2089
+ # owners.
2090
+ # * +:restorable_by_user_ids+ - (Array<String>) The optional list of
2091
+ # users who have permission to create volumes from the described EBS
2092
+ # snapshots.
2093
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2094
+ # properties for Snapshots. For a complete reference to the available
2095
+ # filter keys for this operation, see the Amazon EC2 API reference.
2096
+ # * +:name+ - (String) Specifies the name of the filter.
2097
+ # * +:values+ - (Array<String>) Contains one or more values for the
2098
+ # filter.
2099
+ # @return [Core::Response]
2100
+ # The #data method of the response object returns
2101
+ # a hash with the following structure:
2102
+ # * +:snapshot_set+ - (Array<Hash>)
2103
+ # * +:snapshot_id+ - (String)
2104
+ # * +:volume_id+ - (String)
2105
+ # * +:status+ - (String)
2106
+ # * +:start_time+ - (Time)
2107
+ # * +:progress+ - (String)
2108
+ # * +:owner_id+ - (String)
2109
+ # * +:description+ - (String)
2110
+ # * +:volume_size+ - (Integer)
2111
+ # * +:owner_alias+ - (String)
2112
+ # * +:tag_set+ - (Array<Hash>)
2113
+ # * +:key+ - (String)
2114
+ # * +:value+ - (String)
2115
+
2116
+ # @!method describe_spot_datafeed_subscription(options = {})
2117
+ # Calls the DescribeSpotDatafeedSubscription API operation.
2118
+ # @param [Hash] options
2119
+ # @return [Core::Response]
2120
+ # The #data method of the response object returns
2121
+ # a hash with the following structure:
2122
+ # * +:spot_datafeed_subscription+ - (Hash)
2123
+ # * +:owner_id+ - (String)
2124
+ # * +:bucket+ - (String)
2125
+ # * +:prefix+ - (String)
2126
+ # * +:state+ - (String)
2127
+ # * +:fault+ - (Hash)
2128
+ # * +:code+ - (String)
2129
+ # * +:message+ - (String)
2130
+
2131
+ # @!method describe_spot_instance_requests(options = {})
2132
+ # Calls the DescribeSpotInstanceRequests API operation.
2133
+ # @param [Hash] options
2134
+ # * +:spot_instance_request_ids+ - (Array<String>) The ID of the
2135
+ # request.
2136
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2137
+ # properties for SpotInstances. For a complete reference to the
2138
+ # available filter keys for this operation, see the Amazon EC2 API
2139
+ # reference.
2140
+ # * +:name+ - (String) Specifies the name of the filter.
2141
+ # * +:values+ - (Array<String>) Contains one or more values for the
2142
+ # filter.
2143
+ # @return [Core::Response]
2144
+ # The #data method of the response object returns
2145
+ # a hash with the following structure:
2146
+ # * +:spot_instance_request_set+ - (Array<Hash>)
2147
+ # * +:spot_instance_request_id+ - (String)
2148
+ # * +:spot_price+ - (String)
2149
+ # * +:type+ - (String)
2150
+ # * +:state+ - (String)
2151
+ # * +:fault+ - (Hash)
2152
+ # * +:code+ - (String)
2153
+ # * +:message+ - (String)
2154
+ # * +:status+ - (Hash)
2155
+ # * +:code+ - (String)
2156
+ # * +:update_time+ - (Time)
2157
+ # * +:message+ - (String)
2158
+ # * +:valid_from+ - (Time)
2159
+ # * +:valid_until+ - (Time)
2160
+ # * +:launch_group+ - (String)
2161
+ # * +:availability_zone_group+ - (String)
2162
+ # * +:launch_specification+ - (Hash)
2163
+ # * +:image_id+ - (String)
2164
+ # * +:key_name+ - (String)
2165
+ # * +:group_set+ - (Array<Hash>)
2166
+ # * +:group_name+ - (String)
2167
+ # * +:group_id+ - (String)
2168
+ # * +:user_data+ - (String)
2169
+ # * +:addressing_type+ - (String)
2170
+ # * +:instance_type+ - (String)
2171
+ # * +:placement+ - (Hash)
2172
+ # * +:availability_zone+ - (String)
2173
+ # * +:group_name+ - (String)
2174
+ # * +:kernel_id+ - (String)
2175
+ # * +:ramdisk_id+ - (String)
2176
+ # * +:block_device_mapping+ - (Array<Hash>)
2177
+ # * +:virtual_name+ - (String)
2178
+ # * +:device_name+ - (String)
2179
+ # * +:ebs+ - (Hash)
2180
+ # * +:snapshot_id+ - (String)
2181
+ # * +:volume_size+ - (Integer)
2182
+ # * +:delete_on_termination+ - (Boolean)
2183
+ # * +:volume_type+ - (String)
2184
+ # * +:iops+ - (Integer)
2185
+ # * +:no_device+ - (String)
2186
+ # * +:monitoring_enabled+ - (Boolean)
2187
+ # * +:subnet_id+ - (String)
2188
+ # * +:network_interface_set+ - (Array<Hash>)
2189
+ # * +:network_interface_id+ - (String)
2190
+ # * +:device_index+ - (Integer)
2191
+ # * +:subnet_id+ - (String)
2192
+ # * +:description+ - (String)
2193
+ # * +:private_ip_address+ - (String)
2194
+ # * +:security_group_id+ - (Array<String>)
2195
+ # * +:delete_on_termination+ - (Boolean)
2196
+ # * +:private_ip_addresses_set+ - (Array<Hash>)
2197
+ # * +:private_ip_address+ - (String)
2198
+ # * +:primary+ - (Boolean)
2199
+ # * +:secondary_private_ip_address_count+ - (Integer)
2200
+ # * +:iam_instance_profile+ - (Hash)
2201
+ # * +:arn+ - (String)
2202
+ # * +:name+ - (String)
2203
+ # * +:ebs_optimized+ - (Boolean)
2204
+ # * +:instance_id+ - (String)
2205
+ # * +:create_time+ - (Time)
2206
+ # * +:product_description+ - (String)
2207
+ # * +:tag_set+ - (Array<Hash>)
2208
+ # * +:key+ - (String)
2209
+ # * +:value+ - (String)
2210
+ # * +:launched_availability_zone+ - (String)
2211
+
2212
+ # @!method describe_spot_price_history(options = {})
2213
+ # Calls the DescribeSpotPriceHistory API operation.
2214
+ # @param [Hash] options
2215
+ # * +:start_time+ - (String<ISO8601 datetime>) The start date and time
2216
+ # of the Spot Instance price history data.
2217
+ # * +:end_time+ - (String<ISO8601 datetime>) The end date and time of
2218
+ # the Spot Instance price history data.
2219
+ # * +:instance_types+ - (Array<String>) Specifies the instance type to
2220
+ # return.
2221
+ # * +:product_descriptions+ - (Array<String>) The description of the
2222
+ # AMI.
2223
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2224
+ # properties for SpotPriceHistory. For a complete reference to the
2225
+ # available filter keys for this operation, see the Amazon EC2 API
2226
+ # reference.
2227
+ # * +:name+ - (String) Specifies the name of the filter.
2228
+ # * +:values+ - (Array<String>) Contains one or more values for the
2229
+ # filter.
2230
+ # * +:availability_zone+ - (String) Filters the results by availability
2231
+ # zone (ex: 'us-east-1a').
2232
+ # * +:max_results+ - (Integer) Specifies the number of rows to return.
2233
+ # * +:next_token+ - (String) Specifies the next set of rows to return.
2234
+ # @return [Core::Response]
2235
+ # The #data method of the response object returns
2236
+ # a hash with the following structure:
2237
+ # * +:spot_price_history_set+ - (Array<Hash>)
2238
+ # * +:instance_type+ - (String)
2239
+ # * +:product_description+ - (String)
2240
+ # * +:spot_price+ - (String)
2241
+ # * +:timestamp+ - (Time)
2242
+ # * +:availability_zone+ - (String)
2243
+ # * +:next_token+ - (String)
2244
+
2245
+ # @!method describe_subnets(options = {})
2246
+ # Calls the DescribeSubnets API operation.
2247
+ # @param [Hash] options
2248
+ # * +:subnet_ids+ - (Array<String>) A set of one or more subnet IDs.
2249
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2250
+ # properties for Subnets. For a complete reference to the available
2251
+ # filter keys for this operation, see the Amazon EC2 API reference.
2252
+ # * +:name+ - (String) Specifies the name of the filter.
2253
+ # * +:values+ - (Array<String>) Contains one or more values for the
2254
+ # filter.
2255
+ # @return [Core::Response]
2256
+ # The #data method of the response object returns
2257
+ # a hash with the following structure:
2258
+ # * +:subnet_set+ - (Array<Hash>)
2259
+ # * +:subnet_id+ - (String)
2260
+ # * +:state+ - (String)
2261
+ # * +:vpc_id+ - (String)
2262
+ # * +:cidr_block+ - (String)
2263
+ # * +:available_ip_address_count+ - (Integer)
2264
+ # * +:availability_zone+ - (String)
2265
+ # * +:default_for_az+ - (Boolean)
2266
+ # * +:map_public_ip_on_launch+ - (Boolean)
2267
+ # * +:tag_set+ - (Array<Hash>)
2268
+ # * +:key+ - (String)
2269
+ # * +:value+ - (String)
2270
+
2271
+ # @!method describe_tags(options = {})
2272
+ # Calls the DescribeTags API operation.
2273
+ # @param [Hash] options
2274
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2275
+ # properties for tags.
2276
+ # * +:name+ - (String) Specifies the name of the filter.
2277
+ # * +:values+ - (Array<String>) Contains one or more values for the
2278
+ # filter.
2279
+ # @return [Core::Response]
2280
+ # The #data method of the response object returns
2281
+ # a hash with the following structure:
2282
+ # * +:tag_set+ - (Array<Hash>)
2283
+ # * +:resource_id+ - (String)
2284
+ # * +:resource_type+ - (String)
2285
+ # * +:key+ - (String)
2286
+ # * +:value+ - (String)
2287
+
2288
+ # @!method describe_volume_attribute(options = {})
2289
+ # Calls the DescribeVolumeAttribute API operation.
2290
+ # @param [Hash] options
2291
+ # * +:volume_id+ - *required* - (String)
2292
+ # * +:attribute+ - (String)
2293
+ # @return [Core::Response]
2294
+ # The #data method of the response object returns
2295
+ # a hash with the following structure:
2296
+ # * +:volume_id+ - (String)
2297
+ # * +:auto_enable_io+ - (Hash)
2298
+ # * +:value+ - (Boolean)
2299
+ # * +:product_codes+ - (Array<Hash>)
2300
+ # * +:product_code+ - (String)
2301
+ # * +:type+ - (String)
2302
+
2303
+ # @!method describe_volume_status(options = {})
2304
+ # Calls the DescribeVolumeStatus API operation.
2305
+ # @param [Hash] options
2306
+ # * +:volume_ids+ - (Array<String>)
2307
+ # * +:filters+ - (Array<Hash>)
2308
+ # * +:name+ - (String) Specifies the name of the filter.
2309
+ # * +:values+ - (Array<String>) Contains one or more values for the
2310
+ # filter.
2311
+ # * +:next_token+ - (String)
2312
+ # * +:max_results+ - (Integer)
2313
+ # @return [Core::Response]
2314
+ # The #data method of the response object returns
2315
+ # a hash with the following structure:
2316
+ # * +:volume_status_set+ - (Array<Hash>)
2317
+ # * +:volume_id+ - (String)
2318
+ # * +:availability_zone+ - (String)
2319
+ # * +:volume_status+ - (Hash)
2320
+ # * +:status+ - (String)
2321
+ # * +:details+ - (Array<Hash>)
2322
+ # * +:name+ - (String)
2323
+ # * +:status+ - (String)
2324
+ # * +:events_set+ - (Array<Hash>)
2325
+ # * +:event_type+ - (String)
2326
+ # * +:description+ - (String)
2327
+ # * +:not_before+ - (Time)
2328
+ # * +:not_after+ - (Time)
2329
+ # * +:event_id+ - (String)
2330
+ # * +:actions_set+ - (Array<Hash>)
2331
+ # * +:code+ - (String)
2332
+ # * +:description+ - (String)
2333
+ # * +:event_type+ - (String)
2334
+ # * +:event_id+ - (String)
2335
+ # * +:next_token+ - (String)
2336
+
2337
+ # @!method describe_volumes(options = {})
2338
+ # Calls the DescribeVolumes API operation.
2339
+ # @param [Hash] options
2340
+ # * +:volume_ids+ - (Array<String>) The optional list of EBS volumes to
2341
+ # describe.
2342
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2343
+ # properties for Volumes. For a complete reference to the available
2344
+ # filter keys for this operation, see the Amazon EC2 API reference.
2345
+ # * +:name+ - (String) Specifies the name of the filter.
2346
+ # * +:values+ - (Array<String>) Contains one or more values for the
2347
+ # filter.
2348
+ # @return [Core::Response]
2349
+ # The #data method of the response object returns
2350
+ # a hash with the following structure:
2351
+ # * +:volume_set+ - (Array<Hash>)
2352
+ # * +:volume_id+ - (String)
2353
+ # * +:size+ - (Integer)
2354
+ # * +:snapshot_id+ - (String)
2355
+ # * +:availability_zone+ - (String)
2356
+ # * +:status+ - (String)
2357
+ # * +:create_time+ - (Time)
2358
+ # * +:attachment_set+ - (Array<Hash>)
2359
+ # * +:volume_id+ - (String)
2360
+ # * +:instance_id+ - (String)
2361
+ # * +:device+ - (String)
2362
+ # * +:status+ - (String)
2363
+ # * +:attach_time+ - (Time)
2364
+ # * +:delete_on_termination+ - (Boolean)
2365
+ # * +:tag_set+ - (Array<Hash>)
2366
+ # * +:key+ - (String)
2367
+ # * +:value+ - (String)
2368
+ # * +:volume_type+ - (String)
2369
+ # * +:iops+ - (Integer)
2370
+
2371
+ # @!method describe_vpc_attribute(options = {})
2372
+ # Calls the DescribeVpcAttribute API operation.
2373
+ # @param [Hash] options
2374
+ # * +:vpc_id+ - *required* - (String)
2375
+ # * +:attribute+ - (String)
2376
+ # @return [Core::Response]
2377
+ # The #data method of the response object returns
2378
+ # a hash with the following structure:
2379
+ # * +:vpc_id+ - (String)
2380
+ # * +:enable_dns_support+ - (Hash)
2381
+ # * +:value+ - (Boolean)
2382
+ # * +:enable_dns_hostnames+ - (Hash)
2383
+ # * +:value+ - (Boolean)
2384
+
2385
+ # @!method describe_vpcs(options = {})
2386
+ # Calls the DescribeVpcs API operation.
2387
+ # @param [Hash] options
2388
+ # * +:vpc_ids+ - (Array<String>) The ID of a VPC you want information
2389
+ # about.
2390
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2391
+ # properties for VPCs. For a complete reference to the available
2392
+ # filter keys for this operation, see the Amazon EC2 API reference.
2393
+ # * +:name+ - (String) Specifies the name of the filter.
2394
+ # * +:values+ - (Array<String>) Contains one or more values for the
2395
+ # filter.
2396
+ # @return [Core::Response]
2397
+ # The #data method of the response object returns
2398
+ # a hash with the following structure:
2399
+ # * +:vpc_set+ - (Array<Hash>)
2400
+ # * +:vpc_id+ - (String)
2401
+ # * +:state+ - (String)
2402
+ # * +:cidr_block+ - (String)
2403
+ # * +:dhcp_options_id+ - (String)
2404
+ # * +:tag_set+ - (Array<Hash>)
2405
+ # * +:key+ - (String)
2406
+ # * +:value+ - (String)
2407
+ # * +:instance_tenancy+ - (String)
2408
+ # * +:is_default+ - (Boolean)
2409
+
2410
+ # @!method describe_vpn_connections(options = {})
2411
+ # Calls the DescribeVpnConnections API operation.
2412
+ # @param [Hash] options
2413
+ # * +:vpn_connection_ids+ - (Array<String>) A VPN connection ID. More
2414
+ # than one may be specified per request.
2415
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2416
+ # properties for VPN Connections. For a complete reference to the
2417
+ # available filter keys for this operation, see the Amazon EC2 API
2418
+ # reference.
2419
+ # * +:name+ - (String) Specifies the name of the filter.
2420
+ # * +:values+ - (Array<String>) Contains one or more values for the
2421
+ # filter.
2422
+ # @return [Core::Response]
2423
+ # The #data method of the response object returns
2424
+ # a hash with the following structure:
2425
+ # * +:vpn_connection_set+ - (Array<Hash>)
2426
+ # * +:vpn_connection_id+ - (String)
2427
+ # * +:state+ - (String)
2428
+ # * +:customer_gateway_configuration+ - (String)
2429
+ # * +:vpn_type+ - (String)
2430
+ # * +:customer_gateway_id+ - (String)
2431
+ # * +:vpn_gateway_id+ - (String)
2432
+ # * +:tag_set+ - (Array<Hash>)
2433
+ # * +:key+ - (String)
2434
+ # * +:value+ - (String)
2435
+ # * +:vgw_telemetry+ - (Array<Hash>)
2436
+ # * +:outside_ip_address+ - (String)
2437
+ # * +:status+ - (String)
2438
+ # * +:last_status_change+ - (Time)
2439
+ # * +:status_message+ - (String)
2440
+ # * +:accepted_route_count+ - (Integer)
2441
+ # * +:options+ - (Hash)
2442
+ # * +:static_routes_only+ - (Boolean)
2443
+ # * +:routes+ - (Array<Hash>)
2444
+ # * +:destination_cidr_block+ - (String)
2445
+ # * +:source+ - (String)
2446
+ # * +:state+ - (String)
2447
+
2448
+ # @!method describe_vpn_gateways(options = {})
2449
+ # Calls the DescribeVpnGateways API operation.
2450
+ # @param [Hash] options
2451
+ # * +:vpn_gateway_ids+ - (Array<String>) A list of filters used to
2452
+ # match properties for VPN Gateways. For a complete reference to the
2453
+ # available filter keys for this operation, see the Amazon EC2 API
2454
+ # reference.
2455
+ # * +:filters+ - (Array<Hash>) A list of filters used to match
2456
+ # properties for VPN Gateways. For a complete reference to the
2457
+ # available filter keys for this operation, see the Amazon EC2 API
2458
+ # reference.
2459
+ # * +:name+ - (String) Specifies the name of the filter.
2460
+ # * +:values+ - (Array<String>) Contains one or more values for the
2461
+ # filter.
2462
+ # @return [Core::Response]
2463
+ # The #data method of the response object returns
2464
+ # a hash with the following structure:
2465
+ # * +:vpn_gateway_set+ - (Array<Hash>)
2466
+ # * +:vpn_gateway_id+ - (String)
2467
+ # * +:state+ - (String)
2468
+ # * +:vpn_type+ - (String)
2469
+ # * +:availability_zone+ - (String)
2470
+ # * +:attachments+ - (Array<Hash>)
2471
+ # * +:vpc_id+ - (String)
2472
+ # * +:state+ - (String)
2473
+ # * +:tag_set+ - (Array<Hash>)
2474
+ # * +:key+ - (String)
2475
+ # * +:value+ - (String)
2476
+
2477
+ # @!method detach_internet_gateway(options = {})
2478
+ # Calls the DetachInternetGateway API operation.
2479
+ # @param [Hash] options
2480
+ # * +:internet_gateway_id+ - *required* - (String) The ID of the
2481
+ # Internet gateway to detach.
2482
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC.
2483
+ # @return [Core::Response]
2484
+
2485
+ # @!method detach_network_interface(options = {})
2486
+ # Calls the DetachNetworkInterface API operation.
2487
+ # @param [Hash] options
2488
+ # * +:attachment_id+ - *required* - (String)
2489
+ # * +:force+ - (Boolean)
2490
+ # @return [Core::Response]
2491
+
2492
+ # @!method detach_volume(options = {})
2493
+ # Calls the DetachVolume API operation.
2494
+ # @param [Hash] options
2495
+ # * +:volume_id+ - *required* - (String) The ID of the volume to
2496
+ # detach.
2497
+ # * +:instance_id+ - (String) The ID of the instance from which to
2498
+ # detach the the specified volume.
2499
+ # * +:device+ - (String) The device name to which the volume is
2500
+ # attached on the specified instance.
2501
+ # * +:force+ - (Boolean) Forces detachment if the previous detachment
2502
+ # attempt did not occur cleanly (logging into an instance, unmounting
2503
+ # the volume, and detaching normally). This option can lead to data
2504
+ # loss or a corrupted file system. Use this option only as a last
2505
+ # resort to detach a volume from a failed instance. The instance will
2506
+ # not have an opportunity to flush file system caches nor file system
2507
+ # meta data. If you use this option, you must perform file system
2508
+ # check and repair procedures.
2509
+ # @return [Core::Response]
2510
+ # The #data method of the response object returns
2511
+ # a hash with the following structure:
2512
+ # * +:volume_id+ - (String)
2513
+ # * +:instance_id+ - (String)
2514
+ # * +:device+ - (String)
2515
+ # * +:status+ - (String)
2516
+ # * +:attach_time+ - (Time)
2517
+ # * +:delete_on_termination+ - (Boolean)
2518
+
2519
+ # @!method detach_vpn_gateway(options = {})
2520
+ # Calls the DetachVpnGateway API operation.
2521
+ # @param [Hash] options
2522
+ # * +:vpn_gateway_id+ - *required* - (String) The ID of the VPN gateway
2523
+ # to detach from the VPC.
2524
+ # * +:vpc_id+ - *required* - (String) The ID of the VPC to detach the
2525
+ # VPN gateway from.
2526
+ # @return [Core::Response]
2527
+
2528
+ # @!method disable_vgw_route_propagation(options = {})
2529
+ # Calls the DisableVgwRoutePropagation API operation.
2530
+ # @param [Hash] options
2531
+ # * +:route_table_id+ - *required* - (String)
2532
+ # * +:gateway_id+ - *required* - (String)
2533
+ # @return [Core::Response]
2534
+
2535
+ # @!method disassociate_address(options = {})
2536
+ # Calls the DisassociateAddress API operation.
2537
+ # @param [Hash] options
2538
+ # * +:public_ip+ - (String) The elastic IP address that you are
2539
+ # disassociating from the instance.
2540
+ # * +:association_id+ - (String) Association ID corresponding to the
2541
+ # VPC elastic IP address you want to disassociate.
2542
+ # @return [Core::Response]
2543
+
2544
+ # @!method disassociate_route_table(options = {})
2545
+ # Calls the DisassociateRouteTable API operation.
2546
+ # @param [Hash] options
2547
+ # * +:association_id+ - *required* - (String) The association ID
2548
+ # representing the current association between the route table and
2549
+ # subnet.
2550
+ # @return [Core::Response]
2551
+
2552
+ # @!method enable_vgw_route_propagation(options = {})
2553
+ # Calls the EnableVgwRoutePropagation API operation.
2554
+ # @param [Hash] options
2555
+ # * +:route_table_id+ - *required* - (String)
2556
+ # * +:gateway_id+ - *required* - (String)
2557
+ # @return [Core::Response]
2558
+
2559
+ # @!method enable_volume_io(options = {})
2560
+ # Calls the EnableVolumeIO API operation.
2561
+ # @param [Hash] options
2562
+ # * +:volume_id+ - *required* - (String)
2563
+ # @return [Core::Response]
2564
+
2565
+ # @!method get_console_output(options = {})
2566
+ # Calls the GetConsoleOutput API operation.
2567
+ # @param [Hash] options
2568
+ # * +:instance_id+ - *required* - (String) The ID of the instance for
2569
+ # which you want console output.
2570
+ # @return [Core::Response]
2571
+ # The #data method of the response object returns
2572
+ # a hash with the following structure:
2573
+ # * +:instance_id+ - (String)
2574
+ # * +:timestamp+ - (Time)
2575
+ # * +:output+ - (String)
2576
+
2577
+ # @!method get_password_data(options = {})
2578
+ # Calls the GetPasswordData API operation.
2579
+ # @param [Hash] options
2580
+ # * +:instance_id+ - *required* - (String) The ID of the instance for
2581
+ # which you want the Windows administrator password.
2582
+ # @return [Core::Response]
2583
+ # The #data method of the response object returns
2584
+ # a hash with the following structure:
2585
+ # * +:instance_id+ - (String)
2586
+ # * +:timestamp+ - (Time)
2587
+ # * +:password_data+ - (String)
2588
+
2589
+ # @!method import_instance(options = {})
2590
+ # Calls the ImportInstance API operation.
2591
+ # @param [Hash] options
2592
+ # * +:description+ - (String)
2593
+ # * +:launch_specification+ - (Hash)
2594
+ # * +:architecture+ - (String)
2595
+ # * +:security_groups+ - (Array<String>)
2596
+ # * +:additional_info+ - (String)
2597
+ # * +:user_data+ - (String)
2598
+ # * +:instance_type+ - (String)
2599
+ # * +:placement+ - (Hash)
2600
+ # * +:availability_zone+ - (String) The availability zone in which
2601
+ # an Amazon EC2 instance runs.
2602
+ # * +:group_name+ - (String) The name of the PlacementGroup in
2603
+ # which an Amazon EC2 instance runs. Placement groups are
2604
+ # primarily used for launching High Performance Computing
2605
+ # instances in the same group to ensure fast connection speeds.
2606
+ # * +:tenancy+ - (String) The allowed tenancy of instances launched
2607
+ # into the VPC. A value of default means instances can be
2608
+ # launched with any tenancy; a value of dedicated means all
2609
+ # instances launched into the VPC will be launched as dedicated
2610
+ # tenancy regardless of the tenancy assigned to the instance at
2611
+ # launch.
2612
+ # * +:block_device_mappings+ - (Array<Hash>)
2613
+ # * +:virtual_name+ - (String) Specifies the virtual device name.
2614
+ # * +:device_name+ - (String) Specifies the device name (e.g.,
2615
+ # /dev/sdh).
2616
+ # * +:ebs+ - (Hash) Specifies parameters used to automatically
2617
+ # setup Amazon EBS volumes when the instance is launched.
2618
+ # * +:snapshot_id+ - (String) The ID of the snapshot from which
2619
+ # the volume will be created.
2620
+ # * +:volume_size+ - (Integer) The size of the volume, in
2621
+ # gigabytes.
2622
+ # * +:delete_on_termination+ - (Boolean) Specifies whether the
2623
+ # Amazon EBS volume is deleted on instance termination.
2624
+ # * +:volume_type+ - (String)
2625
+ # * +:iops+ - (Integer)
2626
+ # * +:no_device+ - (String) Specifies the device name to suppress
2627
+ # during instance launch.
2628
+ # * +:monitoring+ - (Boolean)
2629
+ # * +:subnet_id+ - (String)
2630
+ # * +:disable_api_termination+ - (Boolean)
2631
+ # * +:instance_initiated_shutdown_behavior+ - (String)
2632
+ # * +:private_ip_address+ - (String)
2633
+ # * +:disk_images+ - (Array<Hash>)
2634
+ # * +:image+ - (Hash)
2635
+ # * +:format+ - *required* - (String)
2636
+ # * +:bytes+ - *required* - (Integer)
2637
+ # * +:import_manifest_url+ - *required* - (String)
2638
+ # * +:description+ - (String)
2639
+ # * +:volume+ - (Hash)
2640
+ # * +:size+ - *required* - (Integer)
2641
+ # * +:platform+ - *required* - (String)
2642
+ # @return [Core::Response]
2643
+ # The #data method of the response object returns
2644
+ # a hash with the following structure:
2645
+ # * +:conversion_task+ - (Hash)
2646
+ # * +:conversion_task_id+ - (String)
2647
+ # * +:expiration_time+ - (String)
2648
+ # * +:import_instance+ - (Hash)
2649
+ # * +:volumes+ - (Array<Hash>)
2650
+ # * +:bytes_converted+ - (Integer)
2651
+ # * +:availability_zone+ - (String)
2652
+ # * +:image+ - (Hash)
2653
+ # * +:format+ - (String)
2654
+ # * +:size+ - (Integer)
2655
+ # * +:import_manifest_url+ - (String)
2656
+ # * +:checksum+ - (String)
2657
+ # * +:volume+ - (Hash)
2658
+ # * +:size+ - (Integer)
2659
+ # * +:id+ - (String)
2660
+ # * +:status+ - (String)
2661
+ # * +:status_message+ - (String)
2662
+ # * +:description+ - (String)
2663
+ # * +:instance_id+ - (String)
2664
+ # * +:platform+ - (String)
2665
+ # * +:description+ - (String)
2666
+ # * +:import_volume+ - (Hash)
2667
+ # * +:bytes_converted+ - (Integer)
2668
+ # * +:availability_zone+ - (String)
2669
+ # * +:description+ - (String)
2670
+ # * +:image+ - (Hash)
2671
+ # * +:format+ - (String)
2672
+ # * +:size+ - (Integer)
2673
+ # * +:import_manifest_url+ - (String)
2674
+ # * +:checksum+ - (String)
2675
+ # * +:volume+ - (Hash)
2676
+ # * +:size+ - (Integer)
2677
+ # * +:id+ - (String)
2678
+ # * +:state+ - (String)
2679
+ # * +:status_message+ - (String)
2680
+ # * +:tag_set+ - (Array<Hash>)
2681
+ # * +:key+ - (String)
2682
+ # * +:value+ - (String)
2683
+
2684
+ # @!method import_key_pair(options = {})
2685
+ # Calls the ImportKeyPair API operation.
2686
+ # @param [Hash] options
2687
+ # * +:key_name+ - *required* - (String) The unique name for the key
2688
+ # pair.
2689
+ # * +:public_key_material+ - *required* - (String) The public key
2690
+ # portion of the key pair being imported.
2691
+ # @return [Core::Response]
2692
+ # The #data method of the response object returns
2693
+ # a hash with the following structure:
2694
+ # * +:key_name+ - (String)
2695
+ # * +:key_fingerprint+ - (String)
2696
+
2697
+ # @!method import_volume(options = {})
2698
+ # Calls the ImportVolume API operation.
2699
+ # @param [Hash] options
2700
+ # * +:availability_zone+ - (String)
2701
+ # * +:image+ - (Hash)
2702
+ # * +:format+ - *required* - (String)
2703
+ # * +:bytes+ - *required* - (Integer)
2704
+ # * +:import_manifest_url+ - *required* - (String)
2705
+ # * +:description+ - (String)
2706
+ # * +:volume+ - (Hash)
2707
+ # * +:size+ - *required* - (Integer)
2708
+ # @return [Core::Response]
2709
+ # The #data method of the response object returns
2710
+ # a hash with the following structure:
2711
+ # * +:conversion_task+ - (Hash)
2712
+ # * +:conversion_task_id+ - (String)
2713
+ # * +:expiration_time+ - (String)
2714
+ # * +:import_instance+ - (Hash)
2715
+ # * +:volumes+ - (Array<Hash>)
2716
+ # * +:bytes_converted+ - (Integer)
2717
+ # * +:availability_zone+ - (String)
2718
+ # * +:image+ - (Hash)
2719
+ # * +:format+ - (String)
2720
+ # * +:size+ - (Integer)
2721
+ # * +:import_manifest_url+ - (String)
2722
+ # * +:checksum+ - (String)
2723
+ # * +:volume+ - (Hash)
2724
+ # * +:size+ - (Integer)
2725
+ # * +:id+ - (String)
2726
+ # * +:status+ - (String)
2727
+ # * +:status_message+ - (String)
2728
+ # * +:description+ - (String)
2729
+ # * +:instance_id+ - (String)
2730
+ # * +:platform+ - (String)
2731
+ # * +:description+ - (String)
2732
+ # * +:import_volume+ - (Hash)
2733
+ # * +:bytes_converted+ - (Integer)
2734
+ # * +:availability_zone+ - (String)
2735
+ # * +:description+ - (String)
2736
+ # * +:image+ - (Hash)
2737
+ # * +:format+ - (String)
2738
+ # * +:size+ - (Integer)
2739
+ # * +:import_manifest_url+ - (String)
2740
+ # * +:checksum+ - (String)
2741
+ # * +:volume+ - (Hash)
2742
+ # * +:size+ - (Integer)
2743
+ # * +:id+ - (String)
2744
+ # * +:state+ - (String)
2745
+ # * +:status_message+ - (String)
2746
+ # * +:tag_set+ - (Array<Hash>)
2747
+ # * +:key+ - (String)
2748
+ # * +:value+ - (String)
2749
+
2750
+ # @!method modify_image_attribute(options = {})
2751
+ # Calls the ModifyImageAttribute API operation.
2752
+ # @param [Hash] options
2753
+ # * +:image_id+ - *required* - (String) The ID of the AMI whose
2754
+ # attribute you want to modify.
2755
+ # * +:attribute+ - (String) The name of the AMI attribute you want to
2756
+ # modify. Available attributes: launchPermission, productCodes
2757
+ # * +:operation_type+ - (String) The type of operation being requested.
2758
+ # Available operation types: add, remove
2759
+ # * +:user_ids+ - (Array<String>) The AWS user ID being added to or
2760
+ # removed from the list of users with launch permissions for this
2761
+ # AMI. Only valid when the launchPermission attribute is being
2762
+ # modified.
2763
+ # * +:user_groups+ - (Array<String>) The user group being added to or
2764
+ # removed from the list of user groups with launch permissions for
2765
+ # this AMI. Only valid when the launchPermission attribute is being
2766
+ # modified. Available user groups: all
2767
+ # * +:product_codes+ - (Array<String>) The list of product codes being
2768
+ # added to or removed from the specified AMI. Only valid when the
2769
+ # productCodes attribute is being modified.
2770
+ # * +:value+ - (String) The value of the attribute being modified. Only
2771
+ # valid when the description attribute is being modified.
2772
+ # * +:launch_permission+ - (Hash)
2773
+ # * +:add+ - (Array<Hash>)
2774
+ # * +:user_id+ - (String) The AWS user ID of the user involved in
2775
+ # this launch permission.
2776
+ # * +:group+ - (String) The AWS group of the user involved in this
2777
+ # launch permission. Available groups: all
2778
+ # * +:remove+ - (Array<Hash>)
2779
+ # * +:user_id+ - (String) The AWS user ID of the user involved in
2780
+ # this launch permission.
2781
+ # * +:group+ - (String) The AWS group of the user involved in this
2782
+ # launch permission. Available groups: all
2783
+ # * +:description+ - (Hash)
2784
+ # * +:value+ - (String) String value
2785
+ # @return [Core::Response]
2786
+
2787
+ # @!method modify_instance_attribute(options = {})
2788
+ # Calls the ModifyInstanceAttribute API operation.
2789
+ # @param [Hash] options
2790
+ # * +:instance_id+ - *required* - (String) The ID of the instance whose
2791
+ # attribute is being modified.
2792
+ # * +:attribute+ - (String) The name of the attribute being modified.
2793
+ # Available attribute names: instanceType, kernel, ramdisk, userData,
2794
+ # disableApiTermination, instanceInitiatedShutdownBehavior,
2795
+ # rootDevice, blockDeviceMapping
2796
+ # * +:value+ - (String) The new value of the instance attribute being
2797
+ # modified. Only valid when kernel, ramdisk, userData,
2798
+ # disableApiTermination or instanceInitiateShutdownBehavior is
2799
+ # specified as the attribute being modified.
2800
+ # * +:block_device_mappings+ - (Array<Hash>) The new block device
2801
+ # mappings for the instance whose attributes are being modified. Only
2802
+ # valid when blockDeviceMapping is specified as the attribute being
2803
+ # modified.
2804
+ # * +:device_name+ - (String) The device name (e.g., /dev/sdh) at
2805
+ # which the block device is exposed on the instance.
2806
+ # * +:ebs+ - (Hash) The EBS instance block device specification
2807
+ # describing the EBS block device to map to the specified device
2808
+ # name on a running instance.
2809
+ # * +:volume_id+ - (String) The ID of the EBS volume that should be
2810
+ # mounted as a block device on an Amazon EC2 instance.
2811
+ # * +:delete_on_termination+ - (Boolean) Specifies whether the
2812
+ # Amazon EBS volume is deleted on instance termination.
2813
+ # * +:virtual_name+ - (String) The virtual device name.
2814
+ # * +:no_device+ - (String) When set to the empty string, specifies
2815
+ # that the device name in this object should not be mapped to any
2816
+ # real device.
2817
+ # * +:source_dest_check+ - (Hash)
2818
+ # * +:value+ - (Boolean) Boolean value
2819
+ # * +:disable_api_termination+ - (Hash)
2820
+ # * +:value+ - (Boolean) Boolean value
2821
+ # * +:instance_type+ - (Hash)
2822
+ # * +:value+ - (String) String value
2823
+ # * +:kernel+ - (Hash)
2824
+ # * +:value+ - (String) String value
2825
+ # * +:ramdisk+ - (Hash)
2826
+ # * +:value+ - (String) String value
2827
+ # * +:user_data+ - (Hash)
2828
+ # * +:value+ - (String) String value
2829
+ # * +:instance_initiated_shutdown_behavior+ - (Hash)
2830
+ # * +:value+ - (String) String value
2831
+ # * +:groups+ - (Array<String>)
2832
+ # * +:ebs_optimized+ - (Hash)
2833
+ # * +:value+ - (Boolean) Boolean value
2834
+ # @return [Core::Response]
2835
+
2836
+ # @!method modify_network_interface_attribute(options = {})
2837
+ # Calls the ModifyNetworkInterfaceAttribute API operation.
2838
+ # @param [Hash] options
2839
+ # * +:network_interface_id+ - *required* - (String)
2840
+ # * +:description+ - (Hash)
2841
+ # * +:value+ - (String) String value
2842
+ # * +:source_dest_check+ - (Hash)
2843
+ # * +:value+ - (Boolean) Boolean value
2844
+ # * +:groups+ - (Array<String>)
2845
+ # * +:attachment+ - (Hash)
2846
+ # * +:attachment_id+ - (String)
2847
+ # * +:delete_on_termination+ - (Boolean)
2848
+ # @return [Core::Response]
2849
+
2850
+ # @!method modify_snapshot_attribute(options = {})
2851
+ # Calls the ModifySnapshotAttribute API operation.
2852
+ # @param [Hash] options
2853
+ # * +:snapshot_id+ - *required* - (String) The ID of the EBS snapshot
2854
+ # whose attributes are being modified.
2855
+ # * +:attribute+ - (String) The name of the attribute being modified.
2856
+ # Available attribute names: createVolumePermission
2857
+ # * +:operation_type+ - (String) The operation to perform on the
2858
+ # attribute. Available operation names: add, remove
2859
+ # * +:user_ids+ - (Array<String>) The AWS user IDs to add to or remove
2860
+ # from the list of users that have permission to create EBS volumes
2861
+ # from the specified snapshot. Currently supports "all". Only valid
2862
+ # when the createVolumePermission attribute is being modified.
2863
+ # * +:group_names+ - (Array<String>) The AWS group names to add to or
2864
+ # remove from the list of groups that have permission to create EBS
2865
+ # volumes from the specified snapshot. Currently supports "all". Only
2866
+ # valid when the createVolumePermission attribute is being modified.
2867
+ # * +:create_volume_permission+ - (Hash)
2868
+ # * +:add+ - (Array<Hash>)
2869
+ # * +:user_id+ - (String) The user ID of the user that can create
2870
+ # volumes from the snapshot.
2871
+ # * +:group+ - (String) The group that is allowed to create volumes
2872
+ # from the snapshot (currently supports "all").
2873
+ # * +:remove+ - (Array<Hash>)
2874
+ # * +:user_id+ - (String) The user ID of the user that can create
2875
+ # volumes from the snapshot.
2876
+ # * +:group+ - (String) The group that is allowed to create volumes
2877
+ # from the snapshot (currently supports "all").
2878
+ # @return [Core::Response]
2879
+
2880
+ # @!method modify_volume_attribute(options = {})
2881
+ # Calls the ModifyVolumeAttribute API operation.
2882
+ # @param [Hash] options
2883
+ # * +:volume_id+ - *required* - (String)
2884
+ # * +:auto_enable_io+ - (Boolean)
2885
+ # @return [Core::Response]
2886
+
2887
+ # @!method modify_vpc_attribute(options = {})
2888
+ # Calls the ModifyVpcAttribute API operation.
2889
+ # @param [Hash] options
2890
+ # * +:vpc_id+ - *required* - (String)
2891
+ # * +:enable_dns_support+ - (Hash)
2892
+ # * +:value+ - (Boolean) Boolean value
2893
+ # * +:enable_dns_hostnames+ - (Hash)
2894
+ # * +:value+ - (Boolean) Boolean value
2895
+ # @return [Core::Response]
2896
+
2897
+ # @!method monitor_instances(options = {})
2898
+ # Calls the MonitorInstances API operation.
2899
+ # @param [Hash] options
2900
+ # * +:instance_ids+ - *required* - (Array<String>) The list of Amazon
2901
+ # EC2 instances on which to enable monitoring.
2902
+ # @return [Core::Response]
2903
+ # The #data method of the response object returns
2904
+ # a hash with the following structure:
2905
+ # * +:instances_set+ - (Array<Hash>)
2906
+ # * +:instance_id+ - (String)
2907
+ # * +:monitoring+ - (Hash)
2908
+ # * +:state+ - (String)
2909
+
2910
+ # @!method purchase_reserved_instances_offering(options = {})
2911
+ # Calls the PurchaseReservedInstancesOffering API operation.
2912
+ # @param [Hash] options
2913
+ # * +:reserved_instances_offering_id+ - *required* - (String) The
2914
+ # unique ID of the Reserved Instances offering being purchased.
2915
+ # * +:instance_count+ - *required* - (Integer) The number of Reserved
2916
+ # Instances to purchase.
2917
+ # * +:limit_price+ - (Hash)
2918
+ # * +:amount+ - (Float)
2919
+ # * +:currency_code+ - (String)
2920
+ # @return [Core::Response]
2921
+ # The #data method of the response object returns
2922
+ # a hash with the following structure:
2923
+ # * +:reserved_instances_id+ - (String)
2924
+
2925
+ # @!method reboot_instances(options = {})
2926
+ # Calls the RebootInstances API operation.
2927
+ # @param [Hash] options
2928
+ # * +:instance_ids+ - *required* - (Array<String>) The list of
2929
+ # instances to terminate.
2930
+ # @return [Core::Response]
2931
+
2932
+ # @!method register_image(options = {})
2933
+ # Calls the RegisterImage API operation.
2934
+ # @param [Hash] options
2935
+ # * +:image_location+ - (String) The full path to your AMI manifest in
2936
+ # Amazon S3 storage.
2937
+ # * +:name+ - (String) The name to give the new Amazon Machine Image.
2938
+ # Constraints: 3-128 alphanumeric characters, parenthesis (()),
2939
+ # commas (,), slashes (/), dashes (-), or underscores(_)
2940
+ # * +:description+ - (String) The description describing the new AMI.
2941
+ # * +:architecture+ - (String) The architecture of the image. Valid
2942
+ # Values: i386, x86_64
2943
+ # * +:kernel_id+ - (String) The optional ID of a specific kernel to
2944
+ # register with the new AMI.
2945
+ # * +:ramdisk_id+ - (String) The optional ID of a specific ramdisk to
2946
+ # register with the new AMI. Some kernels require additional drivers
2947
+ # at launch. Check the kernel requirements for information on whether
2948
+ # you need to specify a RAM disk.
2949
+ # * +:root_device_name+ - (String) The root device name (e.g.,
2950
+ # /dev/sda1).
2951
+ # * +:block_device_mappings+ - (Array<Hash>) The block device mappings
2952
+ # for the new AMI, which specify how different block devices (ex: EBS
2953
+ # volumes and ephemeral drives) will be exposed on instances launched
2954
+ # from the new image.
2955
+ # * +:virtual_name+ - (String) Specifies the virtual device name.
2956
+ # * +:device_name+ - (String) Specifies the device name (e.g.,
2957
+ # /dev/sdh).
2958
+ # * +:ebs+ - (Hash) Specifies parameters used to automatically setup
2959
+ # Amazon EBS volumes when the instance is launched.
2960
+ # * +:snapshot_id+ - (String) The ID of the snapshot from which the
2961
+ # volume will be created.
2962
+ # * +:volume_size+ - (Integer) The size of the volume, in
2963
+ # gigabytes.
2964
+ # * +:delete_on_termination+ - (Boolean) Specifies whether the
2965
+ # Amazon EBS volume is deleted on instance termination.
2966
+ # * +:volume_type+ - (String)
2967
+ # * +:iops+ - (Integer)
2968
+ # * +:no_device+ - (String) Specifies the device name to suppress
2969
+ # during instance launch.
2970
+ # @return [Core::Response]
2971
+ # The #data method of the response object returns
2972
+ # a hash with the following structure:
2973
+ # * +:image_id+ - (String)
2974
+
2975
+ # @!method release_address(options = {})
2976
+ # Calls the ReleaseAddress API operation.
2977
+ # @param [Hash] options
2978
+ # * +:public_ip+ - (String) The elastic IP address that you are
2979
+ # releasing from your account.
2980
+ # * +:allocation_id+ - (String) The allocation ID that AWS provided
2981
+ # when you allocated the address for use with Amazon VPC.
2982
+ # @return [Core::Response]
2983
+
2984
+ # @!method replace_network_acl_association(options = {})
2985
+ # Calls the ReplaceNetworkAclAssociation API operation.
2986
+ # @param [Hash] options
2987
+ # * +:association_id+ - *required* - (String) The ID representing the
2988
+ # current association between the original network ACL and the
2989
+ # subnet.
2990
+ # * +:network_acl_id+ - *required* - (String) The ID of the new ACL to
2991
+ # associate with the subnet.
2992
+ # @return [Core::Response]
2993
+ # The #data method of the response object returns
2994
+ # a hash with the following structure:
2995
+ # * +:new_association_id+ - (String)
2996
+
2997
+ # @!method replace_network_acl_entry(options = {})
2998
+ # Calls the ReplaceNetworkAclEntry API operation.
2999
+ # @param [Hash] options
3000
+ # * +:network_acl_id+ - *required* - (String) ID of the ACL where the
3001
+ # entry will be replaced.
3002
+ # * +:rule_number+ - *required* - (Integer) Rule number of the entry to
3003
+ # replace.
3004
+ # * +:protocol+ - *required* - (String) IP protocol the rule applies
3005
+ # to. Valid Values: tcp, udp, icmp or an IP protocol number.
3006
+ # * +:rule_action+ - *required* - (String) Whether to allow or deny
3007
+ # traffic that matches the rule.
3008
+ # * +:egress+ - *required* - (Boolean) Whether this rule applies to
3009
+ # egress traffic from the subnet ( +true+ ) or ingress traffic (
3010
+ # +false+ ).
3011
+ # * +:cidr_block+ - *required* - (String) The CIDR range to allow or
3012
+ # deny, in CIDR notation (e.g., 172.16.0.0/24).
3013
+ # * +:icmp_type_code+ - (Hash) ICMP values.
3014
+ # * +:type+ - (Integer) For the ICMP protocol, the ICMP type. A value
3015
+ # of -1 is a wildcard meaning all types. Required if specifying
3016
+ # icmp for the protocol.
3017
+ # * +:code+ - (Integer) For the ICMP protocol, the ICMP code. A value
3018
+ # of -1 is a wildcard meaning all codes. Required if specifying
3019
+ # icmp for the protocol.
3020
+ # * +:port_range+ - (Hash) Port ranges.
3021
+ # * +:from+ - (Integer) The first port in the range. Required if
3022
+ # specifying tcp or udp for the protocol.
3023
+ # * +:to+ - (Integer) The last port in the range. Required if
3024
+ # specifying tcp or udp for the protocol.
3025
+ # @return [Core::Response]
3026
+
3027
+ # @!method replace_route(options = {})
3028
+ # Calls the ReplaceRoute API operation.
3029
+ # @param [Hash] options
3030
+ # * +:route_table_id+ - *required* - (String) The ID of the route table
3031
+ # where the route will be replaced.
3032
+ # * +:destination_cidr_block+ - *required* - (String) The CIDR address
3033
+ # block used for the destination match. For example: 0.0.0.0/0. The
3034
+ # value you provide must match the CIDR of an existing route in the
3035
+ # table.
3036
+ # * +:gateway_id+ - (String) The ID of a VPN or Internet gateway
3037
+ # attached to your VPC.
3038
+ # * +:instance_id+ - (String) The ID of a NAT instance in your VPC.
3039
+ # * +:network_interface_id+ - (String)
3040
+ # @return [Core::Response]
3041
+
3042
+ # @!method replace_route_table_association(options = {})
3043
+ # Calls the ReplaceRouteTableAssociation API operation.
3044
+ # @param [Hash] options
3045
+ # * +:association_id+ - *required* - (String) The ID representing the
3046
+ # current association between the original route table and the
3047
+ # subnet.
3048
+ # * +:route_table_id+ - *required* - (String) The ID of the new route
3049
+ # table to associate with the subnet.
3050
+ # @return [Core::Response]
3051
+ # The #data method of the response object returns
3052
+ # a hash with the following structure:
3053
+ # * +:new_association_id+ - (String)
3054
+
3055
+ # @!method report_instance_status(options = {})
3056
+ # Calls the ReportInstanceStatus API operation.
3057
+ # @param [Hash] options
3058
+ # * +:instances+ - (Array<String>)
3059
+ # * +:status+ - (String)
3060
+ # * +:start_time+ - (String<ISO8601 datetime>)
3061
+ # * +:end_time+ - (String<ISO8601 datetime>)
3062
+ # * +:reason_codes+ - (Array<String>)
3063
+ # * +:description+ - (String)
3064
+ # @return [Core::Response]
3065
+
3066
+ # @!method request_spot_instances(options = {})
3067
+ # Calls the RequestSpotInstances API operation.
3068
+ # @param [Hash] options
3069
+ # * +:spot_price+ - *required* - (String) Specifies the maximum hourly
3070
+ # price for any Spot Instance launched to fulfill the request.
3071
+ # * +:instance_count+ - (Integer) Specifies the maximum number of Spot
3072
+ # Instances to launch.
3073
+ # * +:type+ - (String) Specifies the Spot Instance type.
3074
+ # * +:valid_from+ - (String<ISO8601 datetime>) Defines the start date
3075
+ # of the request. If this is a one-time request, the request becomes
3076
+ # active at this date and time and remains active until all instances
3077
+ # launch, the request expires, or the request is canceled. If the
3078
+ # request is persistent, the request becomes active at this date and
3079
+ # time and remains active until it expires or is canceled.
3080
+ # * +:valid_until+ - (String<ISO8601 datetime>) End date of the
3081
+ # request. If this is a one-time request, the request remains active
3082
+ # until all instances launch, the request is canceled, or this date
3083
+ # is reached. If the request is persistent, it remains active until
3084
+ # it is canceled or this date and time is reached.
3085
+ # * +:launch_group+ - (String) Specifies the instance launch group.
3086
+ # Launch groups are Spot Instances that launch and terminate
3087
+ # together.
3088
+ # * +:availability_zone_group+ - (String) Specifies the Availability
3089
+ # Zone group. When specifying the same Availability Zone group for
3090
+ # all Spot Instance requests, all Spot Instances are launched in the
3091
+ # same Availability Zone.
3092
+ # * +:launch_specification+ - (Hash) Specifies additional launch
3093
+ # instance information.
3094
+ # * +:image_id+ - (String) The AMI ID.
3095
+ # * +:key_name+ - (String) The name of the key pair.
3096
+ # * +:user_data+ - (String) Optional data, specific to a user's
3097
+ # application, to provide in the launch request. All instances that
3098
+ # collectively comprise the launch request have access to this
3099
+ # data. User data is never returned through API responses.
3100
+ # * +:addressing_type+ - (String) Deprecated.
3101
+ # * +:instance_type+ - (String) Specifies the instance type.
3102
+ # * +:placement+ - (Hash) Defines a placement item.
3103
+ # * +:availability_zone+ - (String) The availability zone in which
3104
+ # an Amazon EC2 instance runs.
3105
+ # * +:group_name+ - (String) The name of the PlacementGroup in
3106
+ # which an Amazon EC2 instance runs. Placement groups are
3107
+ # primarily used for launching High Performance Computing
3108
+ # instances in the same group to ensure fast connection speeds.
3109
+ # * +:kernel_id+ - (String) Specifies the ID of the kernel to select.
3110
+ # * +:ramdisk_id+ - (String) Specifies the ID of the RAM disk to
3111
+ # select. Some kernels require additional drivers at launch. Check
3112
+ # the kernel requirements for information on whether or not you
3113
+ # need to specify a RAM disk and search for the kernel ID.
3114
+ # * +:block_device_mappings+ - (Array<Hash>) Specifies how block
3115
+ # devices are exposed to the instance. Each mapping is made up of a
3116
+ # virtualName and a deviceName.
3117
+ # * +:virtual_name+ - (String) Specifies the virtual device name.
3118
+ # * +:device_name+ - (String) Specifies the device name (e.g.,
3119
+ # /dev/sdh).
3120
+ # * +:ebs+ - (Hash) Specifies parameters used to automatically
3121
+ # setup Amazon EBS volumes when the instance is launched.
3122
+ # * +:snapshot_id+ - (String) The ID of the snapshot from which
3123
+ # the volume will be created.
3124
+ # * +:volume_size+ - (Integer) The size of the volume, in
3125
+ # gigabytes.
3126
+ # * +:delete_on_termination+ - (Boolean) Specifies whether the
3127
+ # Amazon EBS volume is deleted on instance termination.
3128
+ # * +:volume_type+ - (String)
3129
+ # * +:iops+ - (Integer)
3130
+ # * +:no_device+ - (String) Specifies the device name to suppress
3131
+ # during instance launch.
3132
+ # * +:monitoring_enabled+ - (Boolean) Enables monitoring for the
3133
+ # instance.
3134
+ # * +:subnet_id+ - (String) Specifies the Amazon VPC subnet ID within
3135
+ # which to launch the instance(s) for Amazon Virtual Private Cloud.
3136
+ # * +:network_interfaces+ - (Array<Hash>)
3137
+ # * +:network_interface_id+ - (String)
3138
+ # * +:device_index+ - (Integer)
3139
+ # * +:subnet_id+ - (String)
3140
+ # * +:description+ - (String)
3141
+ # * +:private_ip_address+ - (String)
3142
+ # * +:groups+ - (Array<String>)
3143
+ # * +:delete_on_termination+ - (Boolean)
3144
+ # * +:private_ip_addresses+ - (Array<Hash>)
3145
+ # * +:private_ip_address+ - *required* - (String)
3146
+ # * +:primary+ - (Boolean)
3147
+ # * +:secondary_private_ip_address_count+ - (Integer)
3148
+ # * +:iam_instance_profile+ - (Hash)
3149
+ # * +:arn+ - (String)
3150
+ # * +:name+ - (String)
3151
+ # * +:ebs_optimized+ - (Boolean)
3152
+ # * +:security_groups+ - (Array<String>)
3153
+ # * +:security_group_ids+ - (Array<String>)
3154
+ # @return [Core::Response]
3155
+ # The #data method of the response object returns
3156
+ # a hash with the following structure:
3157
+ # * +:spot_instance_request_set+ - (Array<Hash>)
3158
+ # * +:spot_instance_request_id+ - (String)
3159
+ # * +:spot_price+ - (String)
3160
+ # * +:type+ - (String)
3161
+ # * +:state+ - (String)
3162
+ # * +:fault+ - (Hash)
3163
+ # * +:code+ - (String)
3164
+ # * +:message+ - (String)
3165
+ # * +:status+ - (Hash)
3166
+ # * +:code+ - (String)
3167
+ # * +:update_time+ - (Time)
3168
+ # * +:message+ - (String)
3169
+ # * +:valid_from+ - (Time)
3170
+ # * +:valid_until+ - (Time)
3171
+ # * +:launch_group+ - (String)
3172
+ # * +:availability_zone_group+ - (String)
3173
+ # * +:launch_specification+ - (Hash)
3174
+ # * +:image_id+ - (String)
3175
+ # * +:key_name+ - (String)
3176
+ # * +:group_set+ - (Array<Hash>)
3177
+ # * +:group_name+ - (String)
3178
+ # * +:group_id+ - (String)
3179
+ # * +:user_data+ - (String)
3180
+ # * +:addressing_type+ - (String)
3181
+ # * +:instance_type+ - (String)
3182
+ # * +:placement+ - (Hash)
3183
+ # * +:availability_zone+ - (String)
3184
+ # * +:group_name+ - (String)
3185
+ # * +:kernel_id+ - (String)
3186
+ # * +:ramdisk_id+ - (String)
3187
+ # * +:block_device_mapping+ - (Array<Hash>)
3188
+ # * +:virtual_name+ - (String)
3189
+ # * +:device_name+ - (String)
3190
+ # * +:ebs+ - (Hash)
3191
+ # * +:snapshot_id+ - (String)
3192
+ # * +:volume_size+ - (Integer)
3193
+ # * +:delete_on_termination+ - (Boolean)
3194
+ # * +:volume_type+ - (String)
3195
+ # * +:iops+ - (Integer)
3196
+ # * +:no_device+ - (String)
3197
+ # * +:monitoring_enabled+ - (Boolean)
3198
+ # * +:subnet_id+ - (String)
3199
+ # * +:network_interface_set+ - (Array<Hash>)
3200
+ # * +:network_interface_id+ - (String)
3201
+ # * +:device_index+ - (Integer)
3202
+ # * +:subnet_id+ - (String)
3203
+ # * +:description+ - (String)
3204
+ # * +:private_ip_address+ - (String)
3205
+ # * +:security_group_id+ - (Array<String>)
3206
+ # * +:delete_on_termination+ - (Boolean)
3207
+ # * +:private_ip_addresses_set+ - (Array<Hash>)
3208
+ # * +:private_ip_address+ - (String)
3209
+ # * +:primary+ - (Boolean)
3210
+ # * +:secondary_private_ip_address_count+ - (Integer)
3211
+ # * +:iam_instance_profile+ - (Hash)
3212
+ # * +:arn+ - (String)
3213
+ # * +:name+ - (String)
3214
+ # * +:ebs_optimized+ - (Boolean)
3215
+ # * +:instance_id+ - (String)
3216
+ # * +:create_time+ - (Time)
3217
+ # * +:product_description+ - (String)
3218
+ # * +:tag_set+ - (Array<Hash>)
3219
+ # * +:key+ - (String)
3220
+ # * +:value+ - (String)
3221
+ # * +:launched_availability_zone+ - (String)
3222
+
3223
+ # @!method reset_image_attribute(options = {})
3224
+ # Calls the ResetImageAttribute API operation.
3225
+ # @param [Hash] options
3226
+ # * +:image_id+ - *required* - (String) The ID of the AMI whose
3227
+ # attribute is being reset.
3228
+ # * +:attribute+ - *required* - (String) The name of the attribute
3229
+ # being reset. Available attribute names: launchPermission
3230
+ # @return [Core::Response]
3231
+
3232
+ # @!method reset_instance_attribute(options = {})
3233
+ # Calls the ResetInstanceAttribute API operation.
3234
+ # @param [Hash] options
3235
+ # * +:instance_id+ - *required* - (String) The ID of the Amazon EC2
3236
+ # instance whose attribute is being reset.
3237
+ # * +:attribute+ - *required* - (String) The name of the attribute
3238
+ # being reset. Available attribute names: kernel, ramdisk
3239
+ # @return [Core::Response]
3240
+
3241
+ # @!method reset_network_interface_attribute(options = {})
3242
+ # Calls the ResetNetworkInterfaceAttribute API operation.
3243
+ # @param [Hash] options
3244
+ # * +:network_interface_id+ - *required* - (String)
3245
+ # * +:source_dest_check+ - (String)
3246
+ # @return [Core::Response]
3247
+
3248
+ # @!method reset_snapshot_attribute(options = {})
3249
+ # Calls the ResetSnapshotAttribute API operation.
3250
+ # @param [Hash] options
3251
+ # * +:snapshot_id+ - *required* - (String) The ID of the snapshot whose
3252
+ # attribute is being reset.
3253
+ # * +:attribute+ - *required* - (String) The name of the attribute
3254
+ # being reset. Available attribute names: createVolumePermission
3255
+ # @return [Core::Response]
3256
+
3257
+ # @!method revoke_security_group_egress(options = {})
3258
+ # Calls the RevokeSecurityGroupEgress API operation.
3259
+ # @param [Hash] options
3260
+ # * +:group_id+ - *required* - (String) ID of the VPC security group to
3261
+ # modify.
3262
+ # * +:source_security_group_name+ - (String) Deprecated.
3263
+ # * +:source_security_group_owner_id+ - (String) Deprecated.
3264
+ # * +:ip_protocol+ - (String) Deprecated.
3265
+ # * +:from_port+ - (Integer) Deprecated.
3266
+ # * +:to_port+ - (Integer) Deprecated.
3267
+ # * +:cidr_ip+ - (String) Deprecated.
3268
+ # * +:ip_permissions+ - (Array<Hash>) List of IP permissions to
3269
+ # authorize on the specified security group. Specifying permissions
3270
+ # through IP permissions is the preferred way of authorizing
3271
+ # permissions since it offers more flexibility and control.
3272
+ # * +:ip_protocol+ - (String) The IP protocol of this permission.
3273
+ # Valid protocol values: tcp, udp, icmp
3274
+ # * +:from_port+ - (Integer) Start of port range for the TCP and UDP
3275
+ # protocols, or an ICMP type number. An ICMP type number of -1
3276
+ # indicates a wildcard (i.e., any ICMP type number).
3277
+ # * +:to_port+ - (Integer) End of port range for the TCP and UDP
3278
+ # protocols, or an ICMP code. An ICMP code of -1 indicates a
3279
+ # wildcard (i.e., any ICMP code).
3280
+ # * +:user_id_group_pairs+ - (Array<Hash>) The list of AWS user IDs
3281
+ # and groups included in this permission.
3282
+ # * +:user_id+ - (String) The AWS user ID of an account.
3283
+ # * +:group_name+ - (String) Name of the security group in the
3284
+ # specified AWS account. Cannot be used when specifying a CIDR IP
3285
+ # address range.
3286
+ # * +:group_id+ - (String) ID of the security group in the
3287
+ # specified AWS account. Cannot be used when specifying a CIDR IP
3288
+ # address range.
3289
+ # * +:ip_ranges+ - (Array<Hash>) The list of CIDR IP ranges included
3290
+ # in this permission.
3291
+ # * +:cidr_ip+ - (String) The list of CIDR IP ranges.
3292
+ # @return [Core::Response]
3293
+
3294
+ # @!method revoke_security_group_ingress(options = {})
3295
+ # Calls the RevokeSecurityGroupIngress API operation.
3296
+ # @param [Hash] options
3297
+ # * +:group_name+ - (String) Name of the standard (EC2) security group
3298
+ # to modify. The group must belong to your account. Can be used
3299
+ # instead of GroupID for standard (EC2) security groups.
3300
+ # * +:group_id+ - (String) ID of the standard (EC2) or VPC security
3301
+ # group to modify. The group must belong to your account. Required
3302
+ # for VPC security groups; can be used instead of GroupName for
3303
+ # standard (EC2) security groups.
3304
+ # * +:source_security_group_name+ - (String) Deprecated
3305
+ # * +:source_security_group_owner_id+ - (String) Deprecated
3306
+ # * +:ip_protocol+ - (String) Deprecated
3307
+ # * +:from_port+ - (Integer) Deprecated
3308
+ # * +:to_port+ - (Integer) Deprecated
3309
+ # * +:cidr_ip+ - (String) Deprecated
3310
+ # * +:ip_permissions+ - (Array<Hash>) List of IP permissions to revoke
3311
+ # on the specified security group. For an IP permission to be
3312
+ # removed, it must exactly match one of the IP permissions you
3313
+ # specify in this list. Specifying permissions through IP permissions
3314
+ # is the preferred way of revoking permissions since it offers more
3315
+ # flexibility and control.
3316
+ # * +:ip_protocol+ - (String) The IP protocol of this permission.
3317
+ # Valid protocol values: tcp, udp, icmp
3318
+ # * +:from_port+ - (Integer) Start of port range for the TCP and UDP
3319
+ # protocols, or an ICMP type number. An ICMP type number of -1
3320
+ # indicates a wildcard (i.e., any ICMP type number).
3321
+ # * +:to_port+ - (Integer) End of port range for the TCP and UDP
3322
+ # protocols, or an ICMP code. An ICMP code of -1 indicates a
3323
+ # wildcard (i.e., any ICMP code).
3324
+ # * +:user_id_group_pairs+ - (Array<Hash>) The list of AWS user IDs
3325
+ # and groups included in this permission.
3326
+ # * +:user_id+ - (String) The AWS user ID of an account.
3327
+ # * +:group_name+ - (String) Name of the security group in the
3328
+ # specified AWS account. Cannot be used when specifying a CIDR IP
3329
+ # address range.
3330
+ # * +:group_id+ - (String) ID of the security group in the
3331
+ # specified AWS account. Cannot be used when specifying a CIDR IP
3332
+ # address range.
3333
+ # * +:ip_ranges+ - (Array<Hash>) The list of CIDR IP ranges included
3334
+ # in this permission.
3335
+ # * +:cidr_ip+ - (String) The list of CIDR IP ranges.
3336
+ # @return [Core::Response]
3337
+
3338
+ # @!method run_instances(options = {})
3339
+ # Calls the RunInstances API operation.
3340
+ # @param [Hash] options
3341
+ # * +:image_id+ - *required* - (String) Unique ID of a machine image,
3342
+ # returned by a call to DescribeImages.
3343
+ # * +:min_count+ - *required* - (Integer) Minimum number of instances
3344
+ # to launch. If the value is more than Amazon EC2 can launch, no
3345
+ # instances are launched at all.
3346
+ # * +:max_count+ - *required* - (Integer) Maximum number of instances
3347
+ # to launch. If the value is more than Amazon EC2 can launch, the
3348
+ # largest possible number above minCount will be launched instead.
3349
+ # Between 1 and the maximum number allowed for your account (default:
3350
+ # 20).
3351
+ # * +:key_name+ - (String) The name of the key pair.
3352
+ # * +:security_groups+ - (Array<String>) The names of the security
3353
+ # groups into which the instances will be launched.
3354
+ # * +:security_group_ids+ - (Array<String>)
3355
+ # * +:user_data+ - (String) Specifies additional information to make
3356
+ # available to the instance(s).
3357
+ # * +:instance_type+ - (String) Specifies the instance type for the
3358
+ # launched instances.
3359
+ # * +:placement+ - (Hash) Specifies the placement constraints
3360
+ # (Availability Zones) for launching the instances.
3361
+ # * +:availability_zone+ - (String) The availability zone in which an
3362
+ # Amazon EC2 instance runs.
3363
+ # * +:group_name+ - (String) The name of the PlacementGroup in which
3364
+ # an Amazon EC2 instance runs. Placement groups are primarily used
3365
+ # for launching High Performance Computing instances in the same
3366
+ # group to ensure fast connection speeds.
3367
+ # * +:tenancy+ - (String) The allowed tenancy of instances launched
3368
+ # into the VPC. A value of default means instances can be launched
3369
+ # with any tenancy; a value of dedicated means all instances
3370
+ # launched into the VPC will be launched as dedicated tenancy
3371
+ # regardless of the tenancy assigned to the instance at launch.
3372
+ # * +:kernel_id+ - (String) The ID of the kernel with which to launch
3373
+ # the instance.
3374
+ # * +:ramdisk_id+ - (String) The ID of the RAM disk with which to
3375
+ # launch the instance. Some kernels require additional drivers at
3376
+ # launch. Check the kernel requirements for information on whether
3377
+ # you need to specify a RAM disk. To find kernel requirements, go to
3378
+ # the Resource Center and search for the kernel ID.
3379
+ # * +:block_device_mappings+ - (Array<Hash>) Specifies how block
3380
+ # devices are exposed to the instance. Each mapping is made up of a
3381
+ # virtualName and a deviceName.
3382
+ # * +:virtual_name+ - (String) Specifies the virtual device name.
3383
+ # * +:device_name+ - (String) Specifies the device name (e.g.,
3384
+ # /dev/sdh).
3385
+ # * +:ebs+ - (Hash) Specifies parameters used to automatically setup
3386
+ # Amazon EBS volumes when the instance is launched.
3387
+ # * +:snapshot_id+ - (String) The ID of the snapshot from which the
3388
+ # volume will be created.
3389
+ # * +:volume_size+ - (Integer) The size of the volume, in
3390
+ # gigabytes.
3391
+ # * +:delete_on_termination+ - (Boolean) Specifies whether the
3392
+ # Amazon EBS volume is deleted on instance termination.
3393
+ # * +:volume_type+ - (String)
3394
+ # * +:iops+ - (Integer)
3395
+ # * +:no_device+ - (String) Specifies the device name to suppress
3396
+ # during instance launch.
3397
+ # * +:monitoring+ - (Hash) Enables monitoring for the instance.
3398
+ # * +:enabled+ - *required* - (Boolean)
3399
+ # * +:subnet_id+ - (String) Specifies the subnet ID within which to
3400
+ # launch the instance(s) for Amazon Virtual Private Cloud.
3401
+ # * +:disable_api_termination+ - (Boolean) Specifies whether the
3402
+ # instance can be terminated using the APIs. You must modify this
3403
+ # attribute before you can terminate any "locked" instances from the
3404
+ # APIs.
3405
+ # * +:instance_initiated_shutdown_behavior+ - (String) Specifies
3406
+ # whether the instance's Amazon EBS volumes are stopped or terminated
3407
+ # when the instance is shut down.
3408
+ # * +:license+ - (Hash) Specifies active licenses in use and attached
3409
+ # to an Amazon EC2 instance.
3410
+ # * +:pool+ - (String) The license pool from which to take a license
3411
+ # when starting Amazon EC2 instances in the associated RunInstances
3412
+ # request.
3413
+ # * +:private_ip_address+ - (String) If you're using Amazon Virtual
3414
+ # Private Cloud, you can optionally use this parameter to assign the
3415
+ # instance a specific available IP address from the subnet.
3416
+ # * +:client_token+ - (String) Unique, case-sensitive identifier you
3417
+ # provide to ensure idempotency of the request. For more information,
3418
+ # go to How to Ensure Idempotency in the Amazon Elastic Compute Cloud
3419
+ # User Guide.
3420
+ # * +:additional_info+ - (String)
3421
+ # * +:network_interfaces+ - (Array<Hash>)
3422
+ # * +:network_interface_id+ - (String)
3423
+ # * +:device_index+ - (Integer)
3424
+ # * +:subnet_id+ - (String)
3425
+ # * +:description+ - (String)
3426
+ # * +:private_ip_address+ - (String)
3427
+ # * +:groups+ - (Array<String>)
3428
+ # * +:delete_on_termination+ - (Boolean)
3429
+ # * +:private_ip_addresses+ - (Array<Hash>)
3430
+ # * +:private_ip_address+ - *required* - (String)
3431
+ # * +:primary+ - (Boolean)
3432
+ # * +:secondary_private_ip_address_count+ - (Integer)
3433
+ # * +:iam_instance_profile+ - (Hash)
3434
+ # * +:arn+ - (String)
3435
+ # * +:name+ - (String)
3436
+ # * +:ebs_optimized+ - (Boolean)
3437
+ # @return [Core::Response]
3438
+ # The #data method of the response object returns
3439
+ # a hash with the following structure:
3440
+ # * +:reservation_id+ - (String)
3441
+ # * +:owner_id+ - (String)
3442
+ # * +:requester_id+ - (String)
3443
+ # * +:group_set+ - (Array<Hash>)
3444
+ # * +:group_name+ - (String)
3445
+ # * +:group_id+ - (String)
3446
+ # * +:instances_set+ - (Array<Hash>)
3447
+ # * +:instance_id+ - (String)
3448
+ # * +:image_id+ - (String)
3449
+ # * +:instance_state+ - (Hash)
3450
+ # * +:code+ - (Integer)
3451
+ # * +:name+ - (String)
3452
+ # * +:private_dns_name+ - (String)
3453
+ # * +:dns_name+ - (String)
3454
+ # * +:reason+ - (String)
3455
+ # * +:key_name+ - (String)
3456
+ # * +:ami_launch_index+ - (Integer)
3457
+ # * +:product_codes+ - (Array<Hash>)
3458
+ # * +:product_code+ - (String)
3459
+ # * +:type+ - (String)
3460
+ # * +:instance_type+ - (String)
3461
+ # * +:launch_time+ - (Time)
3462
+ # * +:placement+ - (Hash)
3463
+ # * +:availability_zone+ - (String)
3464
+ # * +:group_name+ - (String)
3465
+ # * +:tenancy+ - (String)
3466
+ # * +:kernel_id+ - (String)
3467
+ # * +:ramdisk_id+ - (String)
3468
+ # * +:platform+ - (String)
3469
+ # * +:monitoring+ - (Hash)
3470
+ # * +:state+ - (String)
3471
+ # * +:subnet_id+ - (String)
3472
+ # * +:vpc_id+ - (String)
3473
+ # * +:private_ip_address+ - (String)
3474
+ # * +:ip_address+ - (String)
3475
+ # * +:state_reason+ - (Hash)
3476
+ # * +:code+ - (String)
3477
+ # * +:message+ - (String)
3478
+ # * +:architecture+ - (String)
3479
+ # * +:root_device_type+ - (String)
3480
+ # * +:root_device_name+ - (String)
3481
+ # * +:block_device_mapping+ - (Array<Hash>)
3482
+ # * +:device_name+ - (String)
3483
+ # * +:ebs+ - (Hash)
3484
+ # * +:volume_id+ - (String)
3485
+ # * +:status+ - (String)
3486
+ # * +:attach_time+ - (Time)
3487
+ # * +:delete_on_termination+ - (Boolean)
3488
+ # * +:virtualization_type+ - (String)
3489
+ # * +:instance_lifecycle+ - (String)
3490
+ # * +:spot_instance_request_id+ - (String)
3491
+ # * +:license+ - (Hash)
3492
+ # * +:pool+ - (String)
3493
+ # * +:client_token+ - (String)
3494
+ # * +:tag_set+ - (Array<Hash>)
3495
+ # * +:key+ - (String)
3496
+ # * +:value+ - (String)
3497
+ # * +:group_set+ - (Array<Hash>)
3498
+ # * +:group_name+ - (String)
3499
+ # * +:group_id+ - (String)
3500
+ # * +:source_dest_check+ - (Boolean)
3501
+ # * +:hypervisor+ - (String)
3502
+ # * +:network_interface_set+ - (Array<Hash>)
3503
+ # * +:network_interface_id+ - (String)
3504
+ # * +:subnet_id+ - (String)
3505
+ # * +:vpc_id+ - (String)
3506
+ # * +:description+ - (String)
3507
+ # * +:owner_id+ - (String)
3508
+ # * +:status+ - (String)
3509
+ # * +:private_ip_address+ - (String)
3510
+ # * +:private_dns_name+ - (String)
3511
+ # * +:source_dest_check+ - (Boolean)
3512
+ # * +:group_set+ - (Array<Hash>)
3513
+ # * +:group_name+ - (String)
3514
+ # * +:group_id+ - (String)
3515
+ # * +:attachment+ - (Hash)
3516
+ # * +:attachment_id+ - (String)
3517
+ # * +:device_index+ - (Integer)
3518
+ # * +:status+ - (String)
3519
+ # * +:attach_time+ - (Time)
3520
+ # * +:delete_on_termination+ - (Boolean)
3521
+ # * +:association+ - (Hash)
3522
+ # * +:public_ip+ - (String)
3523
+ # * +:public_dns_name+ - (String)
3524
+ # * +:ip_owner_id+ - (String)
3525
+ # * +:private_ip_addresses_set+ - (Array<Hash>)
3526
+ # * +:private_ip_address+ - (String)
3527
+ # * +:private_dns_name+ - (String)
3528
+ # * +:primary+ - (Boolean)
3529
+ # * +:association+ - (Hash)
3530
+ # * +:public_ip+ - (String)
3531
+ # * +:public_dns_name+ - (String)
3532
+ # * +:ip_owner_id+ - (String)
3533
+ # * +:iam_instance_profile+ - (Hash)
3534
+ # * +:arn+ - (String)
3535
+ # * +:id+ - (String)
3536
+ # * +:ebs_optimized+ - (Boolean)
3537
+
3538
+ # @!method start_instances(options = {})
3539
+ # Calls the StartInstances API operation.
3540
+ # @param [Hash] options
3541
+ # * +:instance_ids+ - *required* - (Array<String>) The list of Amazon
3542
+ # EC2 instances to start.
3543
+ # * +:additional_info+ - (String)
3544
+ # @return [Core::Response]
3545
+ # The #data method of the response object returns
3546
+ # a hash with the following structure:
3547
+ # * +:instances_set+ - (Array<Hash>)
3548
+ # * +:instance_id+ - (String)
3549
+ # * +:current_state+ - (Hash)
3550
+ # * +:code+ - (Integer)
3551
+ # * +:name+ - (String)
3552
+ # * +:previous_state+ - (Hash)
3553
+ # * +:code+ - (Integer)
3554
+ # * +:name+ - (String)
3555
+
3556
+ # @!method stop_instances(options = {})
3557
+ # Calls the StopInstances API operation.
3558
+ # @param [Hash] options
3559
+ # * +:instance_ids+ - *required* - (Array<String>) The list of Amazon
3560
+ # EC2 instances to stop.
3561
+ # * +:force+ - (Boolean) Forces the instance to stop. The instance will
3562
+ # not have an opportunity to flush file system caches nor file system
3563
+ # meta data. If you use this option, you must perform file system
3564
+ # check and repair procedures. This option is not recommended for
3565
+ # Windows instances.
3566
+ # @return [Core::Response]
3567
+ # The #data method of the response object returns
3568
+ # a hash with the following structure:
3569
+ # * +:instances_set+ - (Array<Hash>)
3570
+ # * +:instance_id+ - (String)
3571
+ # * +:current_state+ - (Hash)
3572
+ # * +:code+ - (Integer)
3573
+ # * +:name+ - (String)
3574
+ # * +:previous_state+ - (Hash)
3575
+ # * +:code+ - (Integer)
3576
+ # * +:name+ - (String)
3577
+
3578
+ # @!method terminate_instances(options = {})
3579
+ # Calls the TerminateInstances API operation.
3580
+ # @param [Hash] options
3581
+ # * +:instance_ids+ - *required* - (Array<String>) The list of
3582
+ # instances to terminate.
3583
+ # @return [Core::Response]
3584
+ # The #data method of the response object returns
3585
+ # a hash with the following structure:
3586
+ # * +:instances_set+ - (Array<Hash>)
3587
+ # * +:instance_id+ - (String)
3588
+ # * +:current_state+ - (Hash)
3589
+ # * +:code+ - (Integer)
3590
+ # * +:name+ - (String)
3591
+ # * +:previous_state+ - (Hash)
3592
+ # * +:code+ - (Integer)
3593
+ # * +:name+ - (String)
3594
+
3595
+ # @!method unassign_private_ip_addresses(options = {})
3596
+ # Calls the UnassignPrivateIpAddresses API operation.
3597
+ # @param [Hash] options
3598
+ # * +:network_interface_id+ - *required* - (String)
3599
+ # * +:private_ip_addresses+ - *required* - (Array<String>)
3600
+ # @return [Core::Response]
3601
+
3602
+ # @!method unmonitor_instances(options = {})
3603
+ # Calls the UnmonitorInstances API operation.
3604
+ # @param [Hash] options
3605
+ # * +:instance_ids+ - *required* - (Array<String>) The list of Amazon
3606
+ # EC2 instances on which to disable monitoring.
3607
+ # @return [Core::Response]
3608
+ # The #data method of the response object returns
3609
+ # a hash with the following structure:
3610
+ # * +:instances_set+ - (Array<Hash>)
3611
+ # * +:instance_id+ - (String)
3612
+ # * +:monitoring+ - (Hash)
3613
+ # * +:state+ - (String)
3614
+
3615
+ # end client methods #
3616
+
3617
+ define_client_methods('2013-02-01')
3618
+
3619
+ end
3620
+ end
3621
+ end