fog-aws 3.5.2 → 3.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (333) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +485 -22
  3. data/LICENSE.md +1 -1
  4. data/README.md +117 -7
  5. data/fog-aws.gemspec +8 -8
  6. data/lib/fog/aws/compute.rb +6 -3
  7. data/lib/fog/aws/credential_fetcher.rb +75 -7
  8. data/lib/fog/aws/elasticache.rb +4 -2
  9. data/lib/fog/aws/elb.rb +1 -1
  10. data/lib/fog/aws/elbv2.rb +72 -0
  11. data/lib/fog/aws/kinesis.rb +23 -15
  12. data/lib/fog/aws/models/compute/flavors.rb +2563 -521
  13. data/lib/fog/aws/models/compute/security_group.rb +13 -5
  14. data/lib/fog/aws/models/compute/server.rb +6 -2
  15. data/lib/fog/aws/models/compute/servers.rb +2 -0
  16. data/lib/fog/aws/models/compute/snapshot.rb +7 -6
  17. data/lib/fog/aws/models/compute/vpc.rb +8 -2
  18. data/lib/fog/aws/models/storage/directories.rb +1 -0
  19. data/lib/fog/aws/models/storage/directory.rb +0 -1
  20. data/lib/fog/aws/models/storage/file.rb +164 -20
  21. data/lib/fog/aws/models/storage/files.rb +32 -2
  22. data/lib/fog/aws/parsers/compute/create_snapshot.rb +1 -1
  23. data/lib/fog/aws/parsers/compute/create_subnet.rb +33 -6
  24. data/lib/fog/aws/parsers/compute/describe_security_groups.rb +18 -4
  25. data/lib/fog/aws/parsers/compute/describe_subnets.rb +33 -6
  26. data/lib/fog/aws/parsers/dns/create_hosted_zone.rb +1 -1
  27. data/lib/fog/aws/parsers/dns/get_hosted_zone.rb +3 -3
  28. data/lib/fog/aws/parsers/dns/list_hosted_zones.rb +3 -1
  29. data/lib/fog/aws/parsers/elbv2/create_load_balancer.rb +88 -0
  30. data/lib/fog/aws/parsers/elbv2/describe_listeners.rb +110 -0
  31. data/lib/fog/aws/parsers/elbv2/describe_load_balancers.rb +88 -0
  32. data/lib/fog/aws/parsers/elbv2/describe_tags.rb +53 -0
  33. data/lib/fog/aws/parsers/elbv2/empty.rb +10 -0
  34. data/lib/fog/aws/parsers/iam/get_group_policy.rb +1 -1
  35. data/lib/fog/aws/parsers/iam/get_role_policy.rb +1 -1
  36. data/lib/fog/aws/parsers/iam/get_user_policy.rb +1 -1
  37. data/lib/fog/aws/parsers/iam/policy_version.rb +1 -1
  38. data/lib/fog/aws/parsers/storage/get_object_tagging.rb +33 -0
  39. data/lib/fog/aws/parsers/storage/upload_part_copy_object.rb +18 -0
  40. data/lib/fog/aws/parsers/sts/assume_role_with_web_identity.rb +1 -1
  41. data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +15 -0
  42. data/lib/fog/aws/requests/compute/create_network_interface.rb +7 -4
  43. data/lib/fog/aws/requests/compute/create_subnet.rb +3 -3
  44. data/lib/fog/aws/requests/compute/create_vpc.rb +2 -2
  45. data/lib/fog/aws/requests/compute/describe_security_groups.rb +2 -0
  46. data/lib/fog/aws/requests/compute/request_spot_instances.rb +1 -1
  47. data/lib/fog/aws/requests/compute/run_instances.rb +64 -0
  48. data/lib/fog/aws/requests/compute/stop_instances.rb +11 -3
  49. data/lib/fog/aws/requests/elbv2/add_tags.rb +45 -0
  50. data/lib/fog/aws/requests/elbv2/create_load_balancer.rb +160 -0
  51. data/lib/fog/aws/requests/elbv2/describe_listeners.rb +38 -0
  52. data/lib/fog/aws/requests/elbv2/describe_load_balancers.rb +100 -0
  53. data/lib/fog/aws/requests/elbv2/describe_tags.rb +50 -0
  54. data/lib/fog/aws/requests/elbv2/remove_tags.rb +45 -0
  55. data/lib/fog/aws/requests/rds/add_tags_to_resource.rb +12 -10
  56. data/lib/fog/aws/requests/rds/list_tags_for_resource.rb +10 -7
  57. data/lib/fog/aws/requests/rds/remove_tags_from_resource.rb +9 -8
  58. data/lib/fog/aws/requests/storage/delete_multiple_objects.rb +18 -8
  59. data/lib/fog/aws/requests/storage/get_object.rb +1 -1
  60. data/lib/fog/aws/requests/storage/get_object_tagging.rb +41 -0
  61. data/lib/fog/aws/requests/storage/get_service.rb +1 -1
  62. data/lib/fog/aws/requests/storage/put_object_tagging.rb +42 -0
  63. data/lib/fog/aws/requests/storage/shared_mock_methods.rb +1 -0
  64. data/lib/fog/aws/requests/storage/sync_clock.rb +9 -1
  65. data/lib/fog/aws/requests/storage/upload_part_copy.rb +119 -0
  66. data/lib/fog/aws/requests/sts/assume_role_with_web_identity.rb +7 -6
  67. data/lib/fog/aws/storage.rb +56 -5
  68. data/lib/fog/aws/version.rb +1 -1
  69. data/lib/fog/aws.rb +7 -2
  70. metadata +35 -295
  71. data/.gitignore +0 -16
  72. data/.travis.yml +0 -53
  73. data/Gemfile +0 -14
  74. data/Rakefile +0 -14
  75. data/gemfiles/Gemfile-edge +0 -14
  76. data/gemfiles/Gemfile-ruby-2.0 +0 -7
  77. data/stale.yml +0 -17
  78. data/tests/credentials_tests.rb +0 -87
  79. data/tests/helper.rb +0 -29
  80. data/tests/helpers/collection_helper.rb +0 -90
  81. data/tests/helpers/compute/flavors_helper.rb +0 -28
  82. data/tests/helpers/compute/server_helper.rb +0 -23
  83. data/tests/helpers/compute/servers_helper.rb +0 -8
  84. data/tests/helpers/dns_helper.rb +0 -56
  85. data/tests/helpers/formats_helper.rb +0 -100
  86. data/tests/helpers/formats_helper_tests.rb +0 -107
  87. data/tests/helpers/mock_helper.rb +0 -109
  88. data/tests/helpers/model_helper.rb +0 -30
  89. data/tests/helpers/responds_to_helper.rb +0 -11
  90. data/tests/helpers/schema_validator_tests.rb +0 -104
  91. data/tests/helpers/succeeds_helper.rb +0 -9
  92. data/tests/lorem.txt +0 -1
  93. data/tests/models/auto_scaling/activities_tests.rb +0 -6
  94. data/tests/models/auto_scaling/configuration_test.rb +0 -13
  95. data/tests/models/auto_scaling/configurations_tests.rb +0 -11
  96. data/tests/models/auto_scaling/groups_test.rb +0 -27
  97. data/tests/models/auto_scaling/helper.rb +0 -0
  98. data/tests/models/auto_scaling/instance_tests.rb +0 -15
  99. data/tests/models/auto_scaling/instances_tests.rb +0 -6
  100. data/tests/models/beanstalk/application_tests.rb +0 -69
  101. data/tests/models/beanstalk/applications_tests.rb +0 -7
  102. data/tests/models/beanstalk/environment_tests.rb +0 -131
  103. data/tests/models/beanstalk/environments_tests.rb +0 -34
  104. data/tests/models/beanstalk/template_tests.rb +0 -47
  105. data/tests/models/beanstalk/templates_tests.rb +0 -62
  106. data/tests/models/beanstalk/version_tests.rb +0 -66
  107. data/tests/models/beanstalk/versions_tests.rb +0 -60
  108. data/tests/models/cdn/distribution_tests.rb +0 -15
  109. data/tests/models/cdn/distributions_tests.rb +0 -15
  110. data/tests/models/cdn/invalidation_tests.rb +0 -31
  111. data/tests/models/cdn/invalidations_tests.rb +0 -14
  112. data/tests/models/cdn/streaming_distribution_tests.rb +0 -15
  113. data/tests/models/cdn/streaming_distributions_tests.rb +0 -15
  114. data/tests/models/cloud_watch/alarm_data_tests.rb +0 -42
  115. data/tests/models/cloud_watch/alarm_history_tests.rb +0 -22
  116. data/tests/models/cloud_watch/metric_statistics_tests.rb +0 -51
  117. data/tests/models/cloud_watch/metrics_tests.rb +0 -32
  118. data/tests/models/compute/address_tests.rb +0 -43
  119. data/tests/models/compute/addresses_tests.rb +0 -5
  120. data/tests/models/compute/dhcp_option_tests.rb +0 -3
  121. data/tests/models/compute/dhcp_options_tests.rb +0 -3
  122. data/tests/models/compute/internet_gateway_tests.rb +0 -3
  123. data/tests/models/compute/internet_gateways_tests.rb +0 -3
  124. data/tests/models/compute/key_pair_tests.rb +0 -26
  125. data/tests/models/compute/key_pairs_tests.rb +0 -5
  126. data/tests/models/compute/network_acl_tests.rb +0 -109
  127. data/tests/models/compute/network_acls_tests.rb +0 -20
  128. data/tests/models/compute/network_interfaces_test.rb +0 -12
  129. data/tests/models/compute/security_group_tests.rb +0 -98
  130. data/tests/models/compute/security_groups_tests.rb +0 -5
  131. data/tests/models/compute/server_tests.rb +0 -94
  132. data/tests/models/compute/snapshot_tests.rb +0 -10
  133. data/tests/models/compute/snapshots_tests.rb +0 -10
  134. data/tests/models/compute/subnet_tests.rb +0 -13
  135. data/tests/models/compute/subnets_tests.rb +0 -5
  136. data/tests/models/compute/volume_tests.rb +0 -65
  137. data/tests/models/compute/volumes_tests.rb +0 -5
  138. data/tests/models/compute/vpc_tests.rb +0 -26
  139. data/tests/models/compute/vpcs_tests.rb +0 -19
  140. data/tests/models/data_pipeline/pipeline_tests.rb +0 -8
  141. data/tests/models/data_pipeline/pipelines_tests.rb +0 -8
  142. data/tests/models/dns/record_tests.rb +0 -33
  143. data/tests/models/dns/records_tests.rb +0 -41
  144. data/tests/models/dns/zone_tests.rb +0 -4
  145. data/tests/models/dns/zones_tests.rb +0 -4
  146. data/tests/models/efs/file_system_tests.rb +0 -12
  147. data/tests/models/efs/mount_target_tests.rb +0 -45
  148. data/tests/models/efs/mount_targets_tests.rb +0 -30
  149. data/tests/models/elasticache/cluster_tests.rb +0 -30
  150. data/tests/models/elasticache/parameter_groups_tests.rb +0 -15
  151. data/tests/models/elasticache/security_groups_tests.rb +0 -52
  152. data/tests/models/elasticache/subnet_groups_tests.rb +0 -43
  153. data/tests/models/elb/model_tests.rb +0 -360
  154. data/tests/models/elb/tagging_tests.rb +0 -15
  155. data/tests/models/glacier/model_tests.rb +0 -47
  156. data/tests/models/iam/access_keys_tests.rb +0 -53
  157. data/tests/models/iam/groups_tests.rb +0 -59
  158. data/tests/models/iam/instance_profile_tests.rb +0 -18
  159. data/tests/models/iam/managed_policies_tests.rb +0 -89
  160. data/tests/models/iam/policies_tests.rb +0 -57
  161. data/tests/models/iam/roles_tests.rb +0 -71
  162. data/tests/models/iam/users_tests.rb +0 -119
  163. data/tests/models/rds/cluster_tests.rb +0 -54
  164. data/tests/models/rds/clusters_tests.rb +0 -5
  165. data/tests/models/rds/event_subscription_tests.rb +0 -9
  166. data/tests/models/rds/event_subscriptions_tests.rb +0 -6
  167. data/tests/models/rds/helper.rb +0 -25
  168. data/tests/models/rds/instance_option_tests.rb +0 -14
  169. data/tests/models/rds/parameter_group_tests.rb +0 -24
  170. data/tests/models/rds/parameter_groups_tests.rb +0 -8
  171. data/tests/models/rds/security_group_tests.rb +0 -77
  172. data/tests/models/rds/security_groups_tests.rb +0 -5
  173. data/tests/models/rds/server_tests.rb +0 -131
  174. data/tests/models/rds/servers_tests.rb +0 -24
  175. data/tests/models/rds/snapshot_tests.rb +0 -12
  176. data/tests/models/rds/snapshots_tests.rb +0 -12
  177. data/tests/models/rds/tagging_tests.rb +0 -20
  178. data/tests/models/sns/topic_tests.rb +0 -15
  179. data/tests/models/sns/topics_tests.rb +0 -6
  180. data/tests/models/storage/directory_tests.rb +0 -91
  181. data/tests/models/storage/file_tests.rb +0 -129
  182. data/tests/models/storage/files_tests.rb +0 -58
  183. data/tests/models/storage/url_tests.rb +0 -25
  184. data/tests/models/storage/version_tests.rb +0 -52
  185. data/tests/models/storage/versions_tests.rb +0 -51
  186. data/tests/models/support/trusted_advisor_tests.rb +0 -25
  187. data/tests/parsers/compute/describe_images_tests.rb +0 -33
  188. data/tests/parsers/elb/describe_load_balancers.rb +0 -65
  189. data/tests/requests/auto_scaling/auto_scaling_tests.rb +0 -111
  190. data/tests/requests/auto_scaling/describe_types_tests.rb +0 -102
  191. data/tests/requests/auto_scaling/helper.rb +0 -229
  192. data/tests/requests/auto_scaling/model_tests.rb +0 -235
  193. data/tests/requests/auto_scaling/notification_configuration_tests.rb +0 -124
  194. data/tests/requests/auto_scaling/tag_tests.rb +0 -63
  195. data/tests/requests/beanstalk/application_tests.rb +0 -140
  196. data/tests/requests/beanstalk/solution_stack_tests.rb +0 -22
  197. data/tests/requests/cdn/cdn_tests.rb +0 -252
  198. data/tests/requests/cloud_formation/stack_tests.rb +0 -167
  199. data/tests/requests/cloud_watch/get_metric_statistics_tests.rb +0 -28
  200. data/tests/requests/cloud_watch/list_metrics_test.rb +0 -64
  201. data/tests/requests/cloud_watch/put_metric_data_tests.rb +0 -36
  202. data/tests/requests/compute/address_tests.rb +0 -144
  203. data/tests/requests/compute/assign_private_ip_tests.rb +0 -55
  204. data/tests/requests/compute/availability_zone_tests.rb +0 -25
  205. data/tests/requests/compute/client_tests.rb +0 -25
  206. data/tests/requests/compute/dhcp_options_tests.rb +0 -39
  207. data/tests/requests/compute/helper.rb +0 -27
  208. data/tests/requests/compute/image_tests.rb +0 -169
  209. data/tests/requests/compute/instance_attrib_tests.rb +0 -168
  210. data/tests/requests/compute/instance_tests.rb +0 -338
  211. data/tests/requests/compute/internet_gateway_tests.rb +0 -49
  212. data/tests/requests/compute/key_pair_tests.rb +0 -67
  213. data/tests/requests/compute/network_acl_tests.rb +0 -112
  214. data/tests/requests/compute/network_interface_tests.rb +0 -239
  215. data/tests/requests/compute/placement_group_tests.rb +0 -48
  216. data/tests/requests/compute/region_tests.rb +0 -52
  217. data/tests/requests/compute/route_tests.rb +0 -341
  218. data/tests/requests/compute/security_group_tests.rb +0 -446
  219. data/tests/requests/compute/snapshot_tests.rb +0 -77
  220. data/tests/requests/compute/spot_datafeed_subscription_tests.rb +0 -47
  221. data/tests/requests/compute/spot_instance_tests.rb +0 -55
  222. data/tests/requests/compute/spot_price_history_tests.rb +0 -23
  223. data/tests/requests/compute/subnet_tests.rb +0 -87
  224. data/tests/requests/compute/tag_tests.rb +0 -101
  225. data/tests/requests/compute/volume_tests.rb +0 -263
  226. data/tests/requests/compute/vpc_tests.rb +0 -216
  227. data/tests/requests/data_pipeline/helper.rb +0 -78
  228. data/tests/requests/data_pipeline/pipeline_tests.rb +0 -80
  229. data/tests/requests/dns/change_resource_record_sets_tests.rb +0 -34
  230. data/tests/requests/dns/dns_tests.rb +0 -240
  231. data/tests/requests/dns/health_check_tests.rb +0 -159
  232. data/tests/requests/dns/helper.rb +0 -21
  233. data/tests/requests/dynamodb/item_tests.rb +0 -137
  234. data/tests/requests/dynamodb/table_tests.rb +0 -99
  235. data/tests/requests/ecs/cluster_tests.rb +0 -112
  236. data/tests/requests/ecs/container_instance_tests.rb +0 -119
  237. data/tests/requests/ecs/helper.rb +0 -276
  238. data/tests/requests/ecs/sample_task_definition1.json +0 -56
  239. data/tests/requests/ecs/service_tests.rb +0 -132
  240. data/tests/requests/ecs/task_definitions_tests.rb +0 -97
  241. data/tests/requests/ecs/task_tests.rb +0 -145
  242. data/tests/requests/efs/file_system_tests.rb +0 -152
  243. data/tests/requests/efs/helper.rb +0 -44
  244. data/tests/requests/elasticache/cache_cluster_tests.rb +0 -137
  245. data/tests/requests/elasticache/describe_events.rb +0 -17
  246. data/tests/requests/elasticache/describe_reserved_cache_nodes.rb +0 -17
  247. data/tests/requests/elasticache/helper.rb +0 -103
  248. data/tests/requests/elasticache/parameter_group_tests.rb +0 -105
  249. data/tests/requests/elasticache/security_group_tests.rb +0 -108
  250. data/tests/requests/elasticache/subnet_group_tests.rb +0 -52
  251. data/tests/requests/elb/helper.rb +0 -91
  252. data/tests/requests/elb/listener_tests.rb +0 -68
  253. data/tests/requests/elb/load_balancer_tests.rb +0 -89
  254. data/tests/requests/elb/policy_tests.rb +0 -132
  255. data/tests/requests/emr/helper.rb +0 -167
  256. data/tests/requests/emr/instance_group_tests.rb +0 -106
  257. data/tests/requests/emr/job_flow_tests.rb +0 -88
  258. data/tests/requests/federation/get_signin_token_tests.rb +0 -11
  259. data/tests/requests/glacier/archive_tests.rb +0 -13
  260. data/tests/requests/glacier/multipart_upload_tests.rb +0 -29
  261. data/tests/requests/glacier/tree_hash_tests.rb +0 -91
  262. data/tests/requests/glacier/vault_tests.rb +0 -35
  263. data/tests/requests/iam/access_key_tests.rb +0 -53
  264. data/tests/requests/iam/account_policy_tests.rb +0 -20
  265. data/tests/requests/iam/account_tests.rb +0 -34
  266. data/tests/requests/iam/group_policy_tests.rb +0 -48
  267. data/tests/requests/iam/group_tests.rb +0 -44
  268. data/tests/requests/iam/helper.rb +0 -154
  269. data/tests/requests/iam/instance_profile_tests.rb +0 -44
  270. data/tests/requests/iam/login_profile_tests.rb +0 -62
  271. data/tests/requests/iam/managed_policy_tests.rb +0 -110
  272. data/tests/requests/iam/mfa_tests.rb +0 -23
  273. data/tests/requests/iam/role_tests.rb +0 -156
  274. data/tests/requests/iam/server_certificate_tests.rb +0 -130
  275. data/tests/requests/iam/user_policy_tests.rb +0 -45
  276. data/tests/requests/iam/user_tests.rb +0 -78
  277. data/tests/requests/iam/versioned_managed_policy_tests.rb +0 -105
  278. data/tests/requests/kinesis/helper.rb +0 -111
  279. data/tests/requests/kinesis/stream_tests.rb +0 -169
  280. data/tests/requests/kms/helper.rb +0 -27
  281. data/tests/requests/kms/key_tests.rb +0 -23
  282. data/tests/requests/lambda/function_sample_1.js +0 -9
  283. data/tests/requests/lambda/function_sample_2.js +0 -9
  284. data/tests/requests/lambda/function_tests.rb +0 -460
  285. data/tests/requests/lambda/helper.rb +0 -81
  286. data/tests/requests/rds/cluster_snapshot_tests.rb +0 -43
  287. data/tests/requests/rds/cluster_tests.rb +0 -37
  288. data/tests/requests/rds/db_engine_versions.rb +0 -7
  289. data/tests/requests/rds/db_snapshot_tests.rb +0 -62
  290. data/tests/requests/rds/describe_events.rb +0 -16
  291. data/tests/requests/rds/event_subscription_tests.rb +0 -30
  292. data/tests/requests/rds/helper.rb +0 -406
  293. data/tests/requests/rds/instance_option_tests.rb +0 -27
  294. data/tests/requests/rds/instance_tests.rb +0 -149
  295. data/tests/requests/rds/log_file_tests.rb +0 -19
  296. data/tests/requests/rds/parameter_group_tests.rb +0 -62
  297. data/tests/requests/rds/parameter_request_tests.rb +0 -32
  298. data/tests/requests/rds/security_group_tests.rb +0 -101
  299. data/tests/requests/rds/subnet_groups_tests.rb +0 -52
  300. data/tests/requests/rds/tagging_tests.rb +0 -78
  301. data/tests/requests/redshift/cluster_parameter_group_tests.rb +0 -76
  302. data/tests/requests/redshift/cluster_security_group_tests.rb +0 -42
  303. data/tests/requests/redshift/cluster_snapshot_tests.rb +0 -73
  304. data/tests/requests/redshift/cluster_tests.rb +0 -80
  305. data/tests/requests/ses/helper.rb +0 -9
  306. data/tests/requests/ses/verified_domain_identity_tests.rb +0 -16
  307. data/tests/requests/ses/verified_email_address_tests.rb +0 -27
  308. data/tests/requests/simpledb/attributes_tests.rb +0 -86
  309. data/tests/requests/simpledb/domain_tests.rb +0 -51
  310. data/tests/requests/simpledb/helper.rb +0 -10
  311. data/tests/requests/sns/helper.rb +0 -9
  312. data/tests/requests/sns/subscription_tests.rb +0 -86
  313. data/tests/requests/sns/topic_tests.rb +0 -53
  314. data/tests/requests/sqs/helper.rb +0 -9
  315. data/tests/requests/sqs/message_tests.rb +0 -51
  316. data/tests/requests/sqs/queue_tests.rb +0 -50
  317. data/tests/requests/storage/acl_utils_tests.rb +0 -209
  318. data/tests/requests/storage/bucket_tests.rb +0 -416
  319. data/tests/requests/storage/cors_utils_tests.rb +0 -108
  320. data/tests/requests/storage/delete_multiple_objects_tests.rb +0 -12
  321. data/tests/requests/storage/multipart_upload_tests.rb +0 -121
  322. data/tests/requests/storage/object_tests.rb +0 -262
  323. data/tests/requests/storage/versioning_tests.rb +0 -262
  324. data/tests/requests/sts/assume_role_tests.rb +0 -19
  325. data/tests/requests/sts/assume_role_with_saml_tests.rb +0 -18
  326. data/tests/requests/sts/assume_role_with_web_identity_tests.rb +0 -28
  327. data/tests/requests/sts/get_federation_token_tests.rb +0 -20
  328. data/tests/requests/sts/session_token_tests.rb +0 -16
  329. data/tests/requests/support/helper.rb +0 -43
  330. data/tests/requests/support/trusted_advisor_check_tests.rb +0 -16
  331. data/tests/signaturev4_tests.rb +0 -106
  332. data/tests/signed_params_tests.rb +0 -17
  333. data/tests/storage_tests.rb +0 -7
@@ -1,5 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | security_groups", ['aws']) do
2
-
3
- collection_tests(Fog::Compute[:aws].security_groups, {:description => 'foggroupdescription', :name => 'foggroupname'}, true)
4
-
5
- end
@@ -1,94 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | monitor", ['aws']) do
2
-
3
- @instance = Fog::Compute[:aws].servers.new
4
-
5
- [:addresses, :flavor, :key_pair, :key_pair=, :volumes, :associate_public_ip].each do |association|
6
- responds_to(association)
7
- end
8
-
9
- tests('new instance') do
10
-
11
- test('#monitor = true') do
12
- @instance.monitor = true
13
- @instance.attributes[:monitoring] == true
14
- end
15
-
16
- test('#monitor = false') do
17
- @instance.monitor = false
18
- @instance.attributes[:monitoring] == false
19
- end
20
-
21
- test('#associate_public_ip = true') do
22
- @instance.associate_public_ip = true
23
- @instance.attributes[:associate_public_ip] == true
24
- end
25
-
26
- test('#associate_public_ip = false') do
27
- @instance.associate_public_ip = false
28
- @instance.associate_public_ip == false
29
- end
30
-
31
- end
32
-
33
- tests('existing instance') do
34
-
35
- @instance.save
36
-
37
- [:id, :availability_zone, :flavor_id, :kernel_id, :image_id, :state].each do |attr|
38
- test("instance##{attr} should not contain whitespace") do
39
- nil == @instance.send(attr).match(/\s/)
40
- end
41
- end
42
-
43
- test('#monitor = true') do
44
- @instance.monitor = true
45
- @instance.monitoring == true
46
- end
47
-
48
- test('#monitor = false') do
49
- @instance.monitor = false
50
- @instance.monitoring == false
51
- end
52
-
53
- test('#associate_public_ip = true') do
54
- @instance.associate_public_ip = true
55
- @instance.attributes[:associate_public_ip] == true
56
- end
57
-
58
- test('#associate_public_ip = false') do
59
- @instance.associate_public_ip = false
60
- @instance.associate_public_ip == false
61
- end
62
-
63
- test('#stop') do
64
- @instance.stop
65
- @instance.wait_for { state == "stopped" }
66
- @instance.state == "stopped"
67
- end
68
-
69
- test("#start") do
70
- @instance.start
71
- @instance.wait_for { ready? }
72
- @instance.state == "running"
73
- end
74
- end
75
-
76
- @instance.destroy
77
-
78
- tests('tags') do
79
- @instance = Fog::Compute[:aws].servers.create(:tags => {'key' => 'value'})
80
-
81
- @instance.wait_for { ready? }
82
-
83
- tests('@instance.reload.tags').returns({'key' => 'value'}) do
84
- @instance.reload.tags
85
- end
86
-
87
- unless Fog.mocking?
88
- Fog::Compute[:aws].tags.all('resource-id' => @instance.identity).each {|tag| tag.destroy}
89
- end
90
-
91
- @instance.destroy
92
- end
93
-
94
- end
@@ -1,10 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | snapshot", ['aws']) do
2
-
3
- @volume = Fog::Compute[:aws].volumes.create(:availability_zone => 'us-east-1a', :size => 1)
4
- @volume.wait_for { ready? }
5
-
6
- model_tests(Fog::Compute[:aws].snapshots, {:volume_id => @volume.identity}, true)
7
-
8
- @volume.destroy
9
-
10
- end
@@ -1,10 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | snapshots", ['aws']) do
2
-
3
- @volume = Fog::Compute[:aws].volumes.create(:availability_zone => 'us-east-1a', :size => 1)
4
- @volume.wait_for { ready? }
5
-
6
- collection_tests(Fog::Compute[:aws].snapshots, {:volume_id => @volume.identity}, true)
7
-
8
- @volume.destroy
9
-
10
- end
@@ -1,13 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | subnet", ['aws']) do
2
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/24')
3
- model_tests(Fog::Compute[:aws].subnets, {:vpc_id => @vpc.id, :cidr_block => '10.0.10.0/28', :availability_zone => 'us-east-1b'}, true) do
4
- @ni = Fog::Compute[:aws].network_interfaces.create(:description => 'fog eni', :name => uniq_id('fog-eni'), :subnet_id => @instance.identity)
5
-
6
- tests("#network_interfaces") do
7
- returns([@ni]) { @instance.network_interfaces.to_a }
8
- end
9
-
10
- @ni.destroy
11
- end
12
- @vpc.destroy
13
- end
@@ -1,5 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | subnets", ['aws']) do
2
- @vpc=Fog::Compute[:aws].vpcs.create('cidr_block' => '10.0.10.0/28')
3
- collection_tests(Fog::Compute[:aws].subnets, { :vpc_id => @vpc.id, :cidr_block => '10.0.10.0/28', :availability_zone => 'us-east-1c'}, true)
4
- @vpc.destroy
5
- end
@@ -1,65 +0,0 @@
1
- Shindo.tests('Fog::Compute[:aws] | volume', ['aws']) do
2
- @server = Fog::Compute[:aws].servers.create
3
- @server.wait_for { ready? }
4
-
5
- model_tests(
6
- Fog::Compute[:aws].volumes,
7
- {
8
- availability_zone: @server.availability_zone,
9
- size: 1,
10
- tags: { 'key' => 'value' },
11
- type: 'gp2',
12
- server: @server,
13
- device: '/dev/sdz1'
14
- },
15
- true
16
- ) do
17
-
18
- tests('attached').succeeds do
19
- @instance.server == @server
20
- end
21
-
22
- tests('#detach').succeeds do
23
- @instance.detach
24
- @instance.wait_for { ready? }
25
- @instance.server.nil?
26
- end
27
-
28
- tests('#server=').raises(NoMethodError, 'use Fog::AWS::Compute::Volume#attach(server, device)') do
29
- @instance.server = @server
30
- end
31
-
32
- tests('#attach(server, device)').succeeds do
33
- @instance.attach(@server, '/dev/sdz1')
34
- @instance.server == @server
35
- end
36
-
37
- tests('#force_detach').succeeds do
38
- @instance.force_detach
39
- @instance.wait_for { ready? }
40
- @instance.server.nil?
41
- end
42
-
43
- @instance.type = 'io1'
44
- @instance.iops = 5000
45
- @instance.size = 100
46
- @instance.save
47
-
48
- returns(true) { @instance.modification_in_progress? }
49
- @instance.wait_for { !modification_in_progress? }
50
-
51
- # avoid weirdness with merge_attributes
52
- @instance = Fog::Compute[:aws].volumes.get(@instance.identity)
53
-
54
- returns('io1') { @instance.type }
55
- returns(5000) { @instance.iops }
56
- returns(100) { @instance.size }
57
-
58
- tests('@instance.tags').returns({'key' => 'value'}) do
59
- @instance.tags
60
- end
61
- end
62
-
63
- @server.destroy
64
-
65
- end
@@ -1,5 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | volumes", ['aws']) do
2
-
3
- collection_tests(Fog::Compute[:aws].volumes, {:availability_zone => 'us-east-1a', :size => 1, :device => '/dev/sdz1'}, true)
4
-
5
- end
@@ -1,26 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | vpc", ['aws']) do
2
-
3
- model_tests(Fog::Compute[:aws].vpcs, {:cidr_block => '10.0.10.0/28'}, true) do
4
- tests("#enable_classic_link") do
5
- returns(false) { @instance.classic_link_enabled? }
6
- returns(true) { @instance.enable_classic_link }
7
- returns(true) { @instance.classic_link_enabled? }
8
- end
9
-
10
- tests("#disable_classic_link") do
11
- returns(true) { @instance.disable_classic_link }
12
- returns(false) { @instance.classic_link_enabled? }
13
- end
14
-
15
- tests("#enable_classic_link_dns") do
16
- returns(false) { @instance.classic_link_dns_enabled? }
17
- returns(true) { @instance.enable_classic_link_dns }
18
- returns(true) { @instance.classic_link_dns_enabled? }
19
- end
20
-
21
- tests("#disable_classic_link") do
22
- returns(true) { @instance.disable_classic_link_dns }
23
- returns(false) { @instance.classic_link_dns_enabled? }
24
- end
25
- end
26
- end
@@ -1,19 +0,0 @@
1
- Shindo.tests("Fog::Compute[:aws] | vpcs", ['aws']) do
2
-
3
- collection_tests(Fog::Compute[:aws].vpcs, {:cidr_block => '10.0.10.0/28'}, true)
4
-
5
- tests('tags') do
6
- test_tags = {'foo' => 'bar'}
7
- @vpc = Fog::Compute[:aws].vpcs.create(:cidr_block => '1.2.3.4/24', :tags => test_tags)
8
-
9
- tests('@vpc.tags').returns(test_tags) do
10
- @vpc.reload.tags
11
- end
12
-
13
- unless Fog.mocking?
14
- Fog::Compute[:aws].tags.all('resource-id' => @vpc.id).each {|tag| tag.destroy}
15
- end
16
-
17
- @vpc.destroy
18
- end
19
- end
@@ -1,8 +0,0 @@
1
- Shindo.tests("AWS::DataPipeline | pipelines", ['aws', 'data_pipeline']) do
2
- pending if Fog.mocking?
3
-
4
- unique_id = uniq_id
5
- model_tests(Fog::AWS[:data_pipeline].pipelines, { :id => unique_id, :name => "#{unique_id}-name", :unique_id => unique_id }) do
6
- @instance.wait_for { state }
7
- end
8
- end
@@ -1,8 +0,0 @@
1
- Shindo.tests("AWS::DataPipeline | pipelines", ['aws', 'data_pipeline']) do
2
- pending if Fog.mocking?
3
-
4
- unique_id = uniq_id
5
- collection_tests(Fog::AWS[:data_pipeline].pipelines, { :id => unique_id, :name => "#{unique_id}-name", :unique_id => unique_id }) do
6
- @instance.wait_for { state }
7
- end
8
- end
@@ -1,33 +0,0 @@
1
- Shindo.tests("Fog::Dns[:aws] | record", ['aws', 'dns']) do
2
-
3
- tests("zones#create").succeeds do
4
- @zone = Fog::DNS[:aws].zones.create(:domain => generate_unique_domain)
5
- end
6
-
7
- params = { :name => @zone.domain, :type => 'A', :ttl => 3600, :value => ['1.2.3.4'] }
8
-
9
- model_tests(@zone.records, params) do
10
-
11
- # Newly created records should have a change id
12
- tests("#change_id") do
13
- returns(true) { @instance.change_id != nil }
14
- end
15
-
16
- # Waits for changes to sync to all Route 53 DNS servers. Usually takes ~30 seconds to complete.
17
- tests("#ready? - may take a minute to complete...").succeeds do
18
- @instance.wait_for { ready? }
19
- end
20
-
21
- tests("#modify") do
22
- new_value = ['5.5.5.5']
23
- returns(true) { @instance.modify(:value => new_value) }
24
- returns(new_value) { @instance.value }
25
- end
26
-
27
- end
28
-
29
- tests("zones#destroy").succeeds do
30
- @zone.destroy
31
- end
32
-
33
- end
@@ -1,41 +0,0 @@
1
- Shindo.tests("Fog::DNS[:aws] | records", ['aws', 'dns']) do
2
-
3
- tests("zones#create").succeeds do
4
- @zone = Fog::DNS[:aws].zones.create(:domain => generate_unique_domain)
5
- end
6
-
7
- param_groups = [
8
- # A record
9
- { :name => @zone.domain, :type => 'A', :ttl => 3600, :value => ['1.2.3.4'] },
10
- # CNAME record
11
- { :name => "www.#{@zone.domain}", :type => "CNAME", :ttl => 300, :value => @zone.domain}
12
- ]
13
-
14
- param_groups.each do |params|
15
- collection_tests(@zone.records, params)
16
- end
17
-
18
- records = []
19
-
20
- 100.times do |i|
21
- records << @zone.records.create(:name => "#{i}.#{@zone.domain}", :type => "A", :ttl => 3600, :value => ['1.2.3.4'])
22
- end
23
-
24
- records << @zone.records.create(:name => "*.#{@zone.domain}", :type => "A", :ttl => 3600, :value => ['1.2.3.4'])
25
-
26
- tests("#all!").returns(101) do
27
- @zone.records.all!.size
28
- end
29
-
30
- tests("#all wildcard parsing").returns(true) do
31
- @zone.records.map(&:name).include?("*.#{@zone.domain}")
32
- end
33
-
34
- records.each do |record|
35
- record.destroy
36
- end
37
-
38
- tests("zones#destroy").succeeds do
39
- @zone.destroy
40
- end
41
- end
@@ -1,4 +0,0 @@
1
- Shindo.tests("Fog::DNS[:aws] | zone", ['aws', 'dns']) do
2
- params = {:domain => generate_unique_domain }
3
- model_tests(Fog::DNS[:aws].zones, params)
4
- end
@@ -1,4 +0,0 @@
1
- Shindo.tests("Fog::DNS[:aws] | zones", ['aws', 'dns']) do
2
- params = {:domain => generate_unique_domain }
3
- collection_tests(Fog::DNS[:aws].zones, params)
4
- end
@@ -1,12 +0,0 @@
1
- Shindo.tests("AWS::EFS | file system", ["aws", "efs"]) do
2
- file_system_params = {
3
- :creation_token => "fogtoken#{rand(999).to_s}"
4
- }
5
-
6
- model_tests(Fog::AWS[:efs].file_systems, file_system_params, true)
7
-
8
- file_system_params = {
9
- :creation_token => "fogtoken#{rand(999).to_s}"
10
- }
11
- collection_tests(Fog::AWS[:efs].file_systems, file_system_params, true)
12
- end
@@ -1,45 +0,0 @@
1
- Shindo.tests("AWS::EFS | mount target", ["aws", "efs"]) do
2
- @file_system = Fog::AWS[:efs].file_systems.create(:creation_token => "fogtoken#{rand(999).to_s}")
3
- @file_system.wait_for { ready? }
4
-
5
- if Fog.mocking?
6
- vpc = Fog::Compute[:aws].vpcs.create(:cidr_block => "10.0.0.0/16")
7
- subnet = Fog::Compute[:aws].subnets.create(:vpc_id => vpc.id, :cidr_block => "10.0.1.0/24")
8
- default_security_group_data = Fog::Compute[:aws].data[:security_groups].values.find do |sg|
9
- sg['groupDescription'] == 'default_elb security group'
10
- end
11
- default_security_group = Fog::Compute[:aws].security_groups.new(default_security_group_data)
12
- else
13
- vpc = Fog::Compute[:aws].vpcs.first
14
- subnet = vpc.subnets.first
15
- default_security_group = Fog::Compute[:aws].security_groups.detect { |sg| sg.description == 'default VPC security group' }
16
- end
17
-
18
- security_group = Fog::Compute[:aws].security_groups.create(
19
- :vpc_id => vpc.id,
20
- :name => "fog#{rand(999).to_s}",
21
- :description => "fog#{rand(999).to_s}"
22
- )
23
-
24
- mount_target_params = {
25
- :file_system_id => @file_system.identity,
26
- :subnet_id => subnet.identity,
27
- }
28
-
29
- model_tests(Fog::AWS[:efs].mount_targets, mount_target_params, true) do
30
- @instance.wait_for { ready? }
31
-
32
- tests("#security_groups") do
33
- returns([default_security_group.group_id]) { @instance.security_groups }
34
- end
35
-
36
- tests("#security_groups=") do
37
- @instance.security_groups = [security_group.group_id]
38
- returns([security_group.group_id]) { @instance.security_groups }
39
- end
40
- end
41
-
42
- @file_system.wait_for { number_of_mount_targets == 0 }
43
- @file_system.destroy
44
- security_group.destroy
45
- end
@@ -1,30 +0,0 @@
1
- Shindo.tests("AWS::EFS | mount targets", ["aws", "efs"]) do
2
- @file_system = Fog::AWS[:efs].file_systems.create(:creation_token => "fogtoken#{rand(999).to_s}")
3
- @file_system.wait_for { ready? }
4
-
5
- if Fog.mocking?
6
- vpc = Fog::Compute[:aws].vpcs.create(:cidr_block => "10.0.0.0/16")
7
- subnet = Fog::Compute[:aws].subnets.create(:vpc_id => vpc.id, :cidr_block => "10.0.1.0/24")
8
- else
9
- vpc = Fog::Compute[:aws].vpcs.first
10
- subnet = vpc.subnets.first
11
- end
12
-
13
- security_group = Fog::Compute[:aws].security_groups.create(
14
- :vpc_id => vpc.id,
15
- :name => "fog#{rand(999).to_s}",
16
- :description => "fog#{rand(999).to_s}"
17
- )
18
-
19
- mount_target_params = {
20
- :file_system_id => @file_system.identity,
21
- :subnet_id => subnet.identity,
22
- :security_groups => [security_group.group_id]
23
- }
24
-
25
- collection_tests(Fog::AWS[:efs].mount_targets(:file_system_id => @file_system.identity), mount_target_params, true)
26
-
27
- @file_system.wait_for { number_of_mount_targets == 0 }
28
- @file_system.destroy
29
- security_group.destroy
30
- end
@@ -1,30 +0,0 @@
1
- Shindo.tests('AWS::Elasticache | cache clusters', ['aws', 'elasticache']) do
2
- cluster_params = {
3
- :id => "fog-test-cluster-#{rand(999).to_s}",
4
- :node_type => 'cache.m1.large',
5
- :security_groups => ['default'],
6
- :engine => 'memcached',
7
- :num_nodes => 1
8
- }
9
-
10
- pending if Fog.mocking?
11
-
12
- Fog::Formatador.display_line "Creating cluster #{cluster_params[:id]}..."
13
- model_tests(Fog::AWS[:elasticache].clusters, cluster_params, false) do
14
- @instance.reload # Reload to get the cluster info from AWS
15
- Fog::Formatador.display_line "Waiting for #{@instance.id} "+
16
- "to become available (#{@instance.status})..."
17
- @instance.wait_for {ready?}
18
- end
19
-
20
- # Single model is still deleting, so re-randomize the cluster ID
21
- cluster_params[:id] = "fog-test-cluster-#{rand(999).to_s}"
22
- Fog::Formatador.display_line "Creating cluster #{cluster_params[:id]}..."
23
- collection_tests(Fog::AWS[:elasticache].clusters, cluster_params, false) do
24
- @instance.reload # Reload to get the cluster info from AWS
25
- Fog::Formatador.display_line "Waiting for #{@instance.id} "+
26
- "to become available (#{@instance.status})..."
27
- @instance.wait_for {ready?}
28
- end
29
-
30
- end
@@ -1,15 +0,0 @@
1
- Shindo.tests('AWS::Elasticache | parameter groups', ['aws', 'elasticache']) do
2
- group_name = 'fog-test'
3
- description = 'Fog Test'
4
-
5
- model_tests(
6
- Fog::AWS[:elasticache].parameter_groups,
7
- {:id => group_name, :description => description}, true
8
- )
9
-
10
- collection_tests(
11
- Fog::AWS[:elasticache].parameter_groups,
12
- {:id => group_name, :description => description}, true
13
- )
14
-
15
- end
@@ -1,52 +0,0 @@
1
- Shindo.tests('AWS::Elasticache | security groups', ['aws', 'elasticache']) do
2
- group_name = 'fog-test'
3
- description = 'Fog Test'
4
-
5
- pending if Fog.mocking?
6
-
7
- model_tests(
8
- Fog::AWS[:elasticache].security_groups,
9
- {:id => group_name, :description => description}, false
10
- ) do
11
-
12
- # An EC2 group to authorize
13
- ec2_group = Fog::Compute.new(:provider => 'AWS').security_groups.create(
14
- :name => 'fog-test-elasticache', :description => 'fog test'
15
- )
16
-
17
- # Reload to get the instance owner_id
18
- @instance.reload
19
-
20
- tests('#authorize_ec2_group') do
21
- @instance.authorize_ec2_group(ec2_group.name)
22
- returns('authorizing') do
23
- group = @instance.ec2_groups.find do |g|
24
- g['EC2SecurityGroupName'] == ec2_group.name
25
- end
26
- group['Status']
27
- end
28
- returns(false, 'not ready') { @instance.ready? }
29
- end
30
-
31
- @instance.wait_for { ready? }
32
-
33
- tests('#revoke_ec2_group') do
34
- @instance.revoke_ec2_group(ec2_group.name)
35
- returns('revoking') do
36
- group = @instance.ec2_groups.find do |g|
37
- g['EC2SecurityGroupName'] == ec2_group.name
38
- end
39
- group['Status']
40
- end
41
- returns(false, 'not ready') { @instance.ready? }
42
- end
43
-
44
- ec2_group.destroy
45
- end
46
-
47
- collection_tests(
48
- Fog::AWS[:elasticache].security_groups,
49
- {:id => group_name, :description => description}, false
50
- )
51
-
52
- end
@@ -1,43 +0,0 @@
1
- Shindo.tests('AWS::Elasticache | subnet group', ['aws', 'elasticache']) do
2
- # random_differentiator
3
- # Useful when rapidly re-running tests, so we don't have to wait
4
- # serveral minutes for deleted VPCs/subnets to disappear
5
- suffix = rand(65536).to_s(16)
6
- @subnet_group_name = "fog-test-#{suffix}"
7
-
8
- vpc_range = rand(245) + 10
9
- @vpc = Fog::Compute[:aws].vpcs.create('cidr_block' => "10.#{vpc_range}.0.0/16")
10
-
11
- # Create 4 subnets in this VPC, each one in a different AZ
12
- subnet_az = 'us-east-1a'
13
- subnet_range = 8
14
- @subnets = (1..3).map do
15
- result = Fog::Compute[:aws].create_subnet(@vpc.id, "10.#{vpc_range}.#{subnet_range}.0/24",
16
- 'AvailabilityZone' => subnet_az)
17
- subnet = result.body['subnet']
18
- subnet_az = subnet_az.succ
19
- subnet_range *= 2
20
- subnet
21
- end
22
-
23
- tests('success') do
24
- group_name = 'fog-test'
25
- description = 'Fog Test'
26
- subnet_ids = @subnets.map { |sn| sn['subnetId'] }.to_a
27
-
28
- model_tests(
29
- Fog::AWS[:elasticache].subnet_groups,
30
- {:name => group_name, :subnet_ids => subnet_ids, :description => description}, true
31
- )
32
-
33
- collection_tests(
34
- Fog::AWS[:elasticache].subnet_groups,
35
- {:name => group_name, :subnet_ids => subnet_ids, :description => description}, true
36
- )
37
- end
38
-
39
- @subnets.each do |sn|
40
- Fog::Compute[:aws].delete_subnet(sn['subnetId'])
41
- end
42
- @vpc.destroy
43
- end