aws-sdk-euca 1.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.yardopts +5 -0
- data/LICENSE.txt +12 -0
- data/README.rdoc +189 -0
- data/ca-bundle.crt +3895 -0
- data/lib/aws-sdk-euca.rb +79 -0
- data/lib/aws-sdk.rb +79 -0
- data/lib/aws.rb +14 -0
- data/lib/aws/api_config/AutoScaling-2011-01-01.yml +825 -0
- data/lib/aws/api_config/CloudFormation-2010-05-15.yml +322 -0
- data/lib/aws/api_config/CloudFront-2012-05-05.yml +2102 -0
- data/lib/aws/api_config/CloudSearch-2011-02-01.yml +681 -0
- data/lib/aws/api_config/CloudWatch-2010-08-01.yml +433 -0
- data/lib/aws/api_config/DataPipeline-2012-10-29.yml +422 -0
- data/lib/aws/api_config/DynamoDB-2011-12-05.yml +1160 -0
- data/lib/aws/api_config/EC2-2013-02-01.yml +4368 -0
- data/lib/aws/api_config/ELB-2012-06-01.yml +597 -0
- data/lib/aws/api_config/EMR-2009-03-31.yml +370 -0
- data/lib/aws/api_config/ElastiCache-2012-03-09.yml +777 -0
- data/lib/aws/api_config/ElastiCache-2012-11-15.yml +979 -0
- data/lib/aws/api_config/ElasticBeanstalk-2010-12-01.yml +823 -0
- data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +1036 -0
- data/lib/aws/api_config/Glacier-2012-06-01.yml +618 -0
- data/lib/aws/api_config/IAM-2010-05-08.yml +1222 -0
- data/lib/aws/api_config/ImportExport-2010-06-01.yml +109 -0
- data/lib/aws/api_config/OpsWorks-2013-02-18.yml +1463 -0
- data/lib/aws/api_config/RDS-2012-09-17.yml +1861 -0
- data/lib/aws/api_config/RDS-2013-02-12.yml +2377 -0
- data/lib/aws/api_config/Redshift-2012-12-01.yml +1149 -0
- data/lib/aws/api_config/Route53-2012-02-29.yml +380 -0
- data/lib/aws/api_config/Route53-2012-12-12.yml +547 -0
- data/lib/aws/api_config/SNS-2010-03-31.yml +249 -0
- data/lib/aws/api_config/SQS-2012-11-05.yml +317 -0
- data/lib/aws/api_config/STS-2011-06-15.yml +81 -0
- data/lib/aws/api_config/SimpleDB-2009-04-15.yml +306 -0
- data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +346 -0
- data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +2358 -0
- data/lib/aws/api_config/StorageGateway-2012-06-30.yml +748 -0
- data/lib/aws/auto_scaling.rb +164 -0
- data/lib/aws/auto_scaling/activity.rb +102 -0
- data/lib/aws/auto_scaling/activity_collection.rb +82 -0
- data/lib/aws/auto_scaling/client.rb +521 -0
- data/lib/aws/auto_scaling/config.rb +18 -0
- data/lib/aws/auto_scaling/errors.rb +22 -0
- data/lib/aws/auto_scaling/group.rb +420 -0
- data/lib/aws/auto_scaling/group_collection.rb +96 -0
- data/lib/aws/auto_scaling/group_options.rb +146 -0
- data/lib/aws/auto_scaling/instance.rb +192 -0
- data/lib/aws/auto_scaling/instance_collection.rb +63 -0
- data/lib/aws/auto_scaling/launch_configuration.rb +158 -0
- data/lib/aws/auto_scaling/launch_configuration_collection.rb +154 -0
- data/lib/aws/auto_scaling/notification_configuration.rb +89 -0
- data/lib/aws/auto_scaling/notification_configuration_collection.rb +184 -0
- data/lib/aws/auto_scaling/request.rb +29 -0
- data/lib/aws/auto_scaling/scaling_policy.rb +142 -0
- data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
- data/lib/aws/auto_scaling/scaling_policy_options.rb +64 -0
- data/lib/aws/auto_scaling/scheduled_action.rb +145 -0
- data/lib/aws/auto_scaling/scheduled_action_collection.rb +195 -0
- data/lib/aws/auto_scaling/tag.rb +59 -0
- data/lib/aws/auto_scaling/tag_collection.rb +112 -0
- data/lib/aws/cloud_formation.rb +272 -0
- data/lib/aws/cloud_formation/client.rb +369 -0
- data/lib/aws/cloud_formation/config.rb +18 -0
- data/lib/aws/cloud_formation/errors.rb +22 -0
- data/lib/aws/cloud_formation/request.rb +29 -0
- data/lib/aws/cloud_formation/stack.rb +255 -0
- data/lib/aws/cloud_formation/stack_collection.rb +209 -0
- data/lib/aws/cloud_formation/stack_event.rb +75 -0
- data/lib/aws/cloud_formation/stack_event_collection.rb +47 -0
- data/lib/aws/cloud_formation/stack_options.rb +72 -0
- data/lib/aws/cloud_formation/stack_output.rb +53 -0
- data/lib/aws/cloud_formation/stack_resource.rb +117 -0
- data/lib/aws/cloud_formation/stack_resource_collection.rb +84 -0
- data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +64 -0
- data/lib/aws/cloud_formation/stack_summary_collection.rb +123 -0
- data/lib/aws/cloud_front.rb +73 -0
- data/lib/aws/cloud_front/client.rb +1307 -0
- data/lib/aws/cloud_front/config.rb +18 -0
- data/lib/aws/cloud_front/errors.rb +22 -0
- data/lib/aws/cloud_front/request.rb +44 -0
- data/lib/aws/cloud_search.rb +74 -0
- data/lib/aws/cloud_search/client.rb +558 -0
- data/lib/aws/cloud_search/config.rb +18 -0
- data/lib/aws/cloud_search/errors.rb +22 -0
- data/lib/aws/cloud_search/request.rb +23 -0
- data/lib/aws/cloud_watch.rb +119 -0
- data/lib/aws/cloud_watch/alarm.rb +272 -0
- data/lib/aws/cloud_watch/alarm_collection.rb +153 -0
- data/lib/aws/cloud_watch/alarm_history_item.rb +50 -0
- data/lib/aws/cloud_watch/alarm_history_item_collection.rb +84 -0
- data/lib/aws/cloud_watch/client.rb +247 -0
- data/lib/aws/cloud_watch/config.rb +18 -0
- data/lib/aws/cloud_watch/errors.rb +22 -0
- data/lib/aws/cloud_watch/metric.rb +135 -0
- data/lib/aws/cloud_watch/metric_alarm_collection.rb +160 -0
- data/lib/aws/cloud_watch/metric_collection.rb +131 -0
- data/lib/aws/cloud_watch/metric_statistics.rb +69 -0
- data/lib/aws/cloud_watch/request.rb +23 -0
- data/lib/aws/core.rb +587 -0
- data/lib/aws/core/async_handle.rb +90 -0
- data/lib/aws/core/autoloader.rb +64 -0
- data/lib/aws/core/cacheable.rb +78 -0
- data/lib/aws/core/client.rb +691 -0
- data/lib/aws/core/collection.rb +267 -0
- data/lib/aws/core/collection/simple.rb +82 -0
- data/lib/aws/core/collection/with_limit_and_next_token.rb +71 -0
- data/lib/aws/core/collection/with_next_token.rb +97 -0
- data/lib/aws/core/configuration.rb +546 -0
- data/lib/aws/core/credential_providers.rb +461 -0
- data/lib/aws/core/data.rb +247 -0
- data/lib/aws/core/http/curb_handler.rb +155 -0
- data/lib/aws/core/http/handler.rb +89 -0
- data/lib/aws/core/http/net_http_handler.rb +128 -0
- data/lib/aws/core/http/request.rb +263 -0
- data/lib/aws/core/http/response.rb +81 -0
- data/lib/aws/core/indifferent_hash.rb +88 -0
- data/lib/aws/core/inflection.rb +56 -0
- data/lib/aws/core/json_client.rb +47 -0
- data/lib/aws/core/json_parser.rb +76 -0
- data/lib/aws/core/json_request_builder.rb +35 -0
- data/lib/aws/core/json_response_parser.rb +79 -0
- data/lib/aws/core/lazy_error_classes.rb +90 -0
- data/lib/aws/core/log_formatter.rb +462 -0
- data/lib/aws/core/managed_file.rb +32 -0
- data/lib/aws/core/meta_utils.rb +45 -0
- data/lib/aws/core/model.rb +57 -0
- data/lib/aws/core/naming.rb +30 -0
- data/lib/aws/core/option_grammar.rb +735 -0
- data/lib/aws/core/options/json_serializer.rb +82 -0
- data/lib/aws/core/options/validator.rb +155 -0
- data/lib/aws/core/options/xml_serializer.rb +118 -0
- data/lib/aws/core/page_result.rb +75 -0
- data/lib/aws/core/policy.rb +916 -0
- data/lib/aws/core/query_client.rb +41 -0
- data/lib/aws/core/query_error_parser.rb +24 -0
- data/lib/aws/core/query_request_builder.rb +47 -0
- data/lib/aws/core/query_response_parser.rb +35 -0
- data/lib/aws/core/resource.rb +413 -0
- data/lib/aws/core/resource_cache.rb +40 -0
- data/lib/aws/core/response.rb +208 -0
- data/lib/aws/core/response_cache.rb +50 -0
- data/lib/aws/core/rest_error_parser.rb +24 -0
- data/lib/aws/core/rest_json_client.rb +40 -0
- data/lib/aws/core/rest_request_builder.rb +146 -0
- data/lib/aws/core/rest_response_parser.rb +66 -0
- data/lib/aws/core/rest_xml_client.rb +47 -0
- data/lib/aws/core/service_interface.rb +61 -0
- data/lib/aws/core/signature/version_2.rb +56 -0
- data/lib/aws/core/signature/version_3.rb +77 -0
- data/lib/aws/core/signature/version_3_https.rb +54 -0
- data/lib/aws/core/signature/version_4.rb +135 -0
- data/lib/aws/core/signer.rb +46 -0
- data/lib/aws/core/uri_escape.rb +44 -0
- data/lib/aws/core/xml/frame.rb +244 -0
- data/lib/aws/core/xml/frame_stack.rb +85 -0
- data/lib/aws/core/xml/grammar.rb +307 -0
- data/lib/aws/core/xml/parser.rb +70 -0
- data/lib/aws/core/xml/root_frame.rb +65 -0
- data/lib/aws/core/xml/sax_handlers/libxml.rb +47 -0
- data/lib/aws/core/xml/sax_handlers/nokogiri.rb +55 -0
- data/lib/aws/core/xml/sax_handlers/ox.rb +41 -0
- data/lib/aws/core/xml/sax_handlers/rexml.rb +43 -0
- data/lib/aws/core/xml/stub.rb +123 -0
- data/lib/aws/data_pipeline.rb +73 -0
- data/lib/aws/data_pipeline/client.rb +339 -0
- data/lib/aws/data_pipeline/config.rb +18 -0
- data/lib/aws/data_pipeline/errors.rb +20 -0
- data/lib/aws/data_pipeline/request.rb +26 -0
- data/lib/aws/dynamo_db.rb +206 -0
- data/lib/aws/dynamo_db/attribute_collection.rb +461 -0
- data/lib/aws/dynamo_db/batch_get.rb +213 -0
- data/lib/aws/dynamo_db/batch_write.rb +252 -0
- data/lib/aws/dynamo_db/binary.rb +35 -0
- data/lib/aws/dynamo_db/client.rb +904 -0
- data/lib/aws/dynamo_db/config.rb +24 -0
- data/lib/aws/dynamo_db/errors.rb +20 -0
- data/lib/aws/dynamo_db/expectations.rb +40 -0
- data/lib/aws/dynamo_db/item.rb +133 -0
- data/lib/aws/dynamo_db/item_collection.rb +852 -0
- data/lib/aws/dynamo_db/item_data.rb +31 -0
- data/lib/aws/dynamo_db/keys.rb +41 -0
- data/lib/aws/dynamo_db/primary_key_element.rb +48 -0
- data/lib/aws/dynamo_db/request.rb +26 -0
- data/lib/aws/dynamo_db/resource.rb +33 -0
- data/lib/aws/dynamo_db/table.rb +491 -0
- data/lib/aws/dynamo_db/table_collection.rb +165 -0
- data/lib/aws/dynamo_db/types.rb +111 -0
- data/lib/aws/ec2.rb +440 -0
- data/lib/aws/ec2/attachment.rb +140 -0
- data/lib/aws/ec2/attachment_collection.rb +54 -0
- data/lib/aws/ec2/availability_zone.rb +86 -0
- data/lib/aws/ec2/availability_zone_collection.rb +43 -0
- data/lib/aws/ec2/block_device_mappings.rb +53 -0
- data/lib/aws/ec2/client.rb +3621 -0
- data/lib/aws/ec2/collection.rb +36 -0
- data/lib/aws/ec2/config.rb +18 -0
- data/lib/aws/ec2/config_transform.rb +63 -0
- data/lib/aws/ec2/customer_gateway.rb +90 -0
- data/lib/aws/ec2/customer_gateway_collection.rb +73 -0
- data/lib/aws/ec2/dhcp_options.rb +106 -0
- data/lib/aws/ec2/dhcp_options_collection.rb +87 -0
- data/lib/aws/ec2/elastic_ip.rb +208 -0
- data/lib/aws/ec2/elastic_ip_collection.rb +97 -0
- data/lib/aws/ec2/errors.rb +32 -0
- data/lib/aws/ec2/export_task.rb +120 -0
- data/lib/aws/ec2/export_task_collection.rb +67 -0
- data/lib/aws/ec2/filtered_collection.rb +89 -0
- data/lib/aws/ec2/has_permissions.rb +44 -0
- data/lib/aws/ec2/image.rb +264 -0
- data/lib/aws/ec2/image_collection.rb +228 -0
- data/lib/aws/ec2/instance.rb +796 -0
- data/lib/aws/ec2/instance_collection.rb +372 -0
- data/lib/aws/ec2/internet_gateway.rb +122 -0
- data/lib/aws/ec2/internet_gateway/attachment.rb +78 -0
- data/lib/aws/ec2/internet_gateway_collection.rb +54 -0
- data/lib/aws/ec2/key_pair.rb +82 -0
- data/lib/aws/ec2/key_pair_collection.rb +99 -0
- data/lib/aws/ec2/network_acl.rb +256 -0
- data/lib/aws/ec2/network_acl/association.rb +56 -0
- data/lib/aws/ec2/network_acl/entry.rb +147 -0
- data/lib/aws/ec2/network_acl_collection.rb +64 -0
- data/lib/aws/ec2/network_interface.rb +228 -0
- data/lib/aws/ec2/network_interface/attachment.rb +100 -0
- data/lib/aws/ec2/network_interface_collection.rb +103 -0
- data/lib/aws/ec2/permission_collection.rb +174 -0
- data/lib/aws/ec2/region.rb +106 -0
- data/lib/aws/ec2/region_collection.rb +51 -0
- data/lib/aws/ec2/request.rb +21 -0
- data/lib/aws/ec2/reserved_instances.rb +56 -0
- data/lib/aws/ec2/reserved_instances_collection.rb +40 -0
- data/lib/aws/ec2/reserved_instances_offering.rb +60 -0
- data/lib/aws/ec2/reserved_instances_offering_collection.rb +39 -0
- data/lib/aws/ec2/resource.rb +161 -0
- data/lib/aws/ec2/resource_tag_collection.rb +211 -0
- data/lib/aws/ec2/route_table.rb +205 -0
- data/lib/aws/ec2/route_table/association.rb +119 -0
- data/lib/aws/ec2/route_table/route.rb +119 -0
- data/lib/aws/ec2/route_table_collection.rb +72 -0
- data/lib/aws/ec2/security_group.rb +484 -0
- data/lib/aws/ec2/security_group/ip_permission.rb +135 -0
- data/lib/aws/ec2/security_group/ip_permission_collection.rb +82 -0
- data/lib/aws/ec2/security_group_collection.rb +135 -0
- data/lib/aws/ec2/snapshot.rb +143 -0
- data/lib/aws/ec2/snapshot_collection.rb +132 -0
- data/lib/aws/ec2/subnet.rb +161 -0
- data/lib/aws/ec2/subnet_collection.rb +115 -0
- data/lib/aws/ec2/tag.rb +81 -0
- data/lib/aws/ec2/tag_collection.rb +107 -0
- data/lib/aws/ec2/tagged_collection.rb +53 -0
- data/lib/aws/ec2/tagged_item.rb +85 -0
- data/lib/aws/ec2/volume.rb +174 -0
- data/lib/aws/ec2/volume_collection.rb +101 -0
- data/lib/aws/ec2/vpc.rb +166 -0
- data/lib/aws/ec2/vpc_collection.rb +70 -0
- data/lib/aws/ec2/vpn_connection.rb +99 -0
- data/lib/aws/ec2/vpn_connection/telemetry.rb +49 -0
- data/lib/aws/ec2/vpn_connection_collection.rb +96 -0
- data/lib/aws/ec2/vpn_gateway.rb +123 -0
- data/lib/aws/ec2/vpn_gateway/attachment.rb +45 -0
- data/lib/aws/ec2/vpn_gateway_collection.rb +77 -0
- data/lib/aws/elastic_beanstalk.rb +50 -0
- data/lib/aws/elastic_beanstalk/client.rb +867 -0
- data/lib/aws/elastic_beanstalk/config.rb +18 -0
- data/lib/aws/elastic_beanstalk/errors.rb +22 -0
- data/lib/aws/elastic_beanstalk/request.rb +29 -0
- data/lib/aws/elastic_transcoder.rb +30 -0
- data/lib/aws/elastic_transcoder/client.rb +672 -0
- data/lib/aws/elastic_transcoder/config.rb +18 -0
- data/lib/aws/elastic_transcoder/errors.rb +23 -0
- data/lib/aws/elastic_transcoder/request.rb +30 -0
- data/lib/aws/elasticache.rb +50 -0
- data/lib/aws/elasticache/client.rb +920 -0
- data/lib/aws/elasticache/config.rb +18 -0
- data/lib/aws/elasticache/errors.rb +22 -0
- data/lib/aws/elasticache/request.rb +23 -0
- data/lib/aws/elb.rb +67 -0
- data/lib/aws/elb/availability_zone_collection.rb +138 -0
- data/lib/aws/elb/backend_server_policy_collection.rb +139 -0
- data/lib/aws/elb/client.rb +500 -0
- data/lib/aws/elb/config.rb +18 -0
- data/lib/aws/elb/errors.rb +26 -0
- data/lib/aws/elb/instance_collection.rb +173 -0
- data/lib/aws/elb/listener.rb +190 -0
- data/lib/aws/elb/listener_collection.rb +113 -0
- data/lib/aws/elb/listener_opts.rb +45 -0
- data/lib/aws/elb/load_balancer.rb +281 -0
- data/lib/aws/elb/load_balancer_collection.rb +134 -0
- data/lib/aws/elb/load_balancer_policy.rb +93 -0
- data/lib/aws/elb/load_balancer_policy_collection.rb +208 -0
- data/lib/aws/elb/request.rb +29 -0
- data/lib/aws/emr.rb +86 -0
- data/lib/aws/emr/client.rb +330 -0
- data/lib/aws/emr/config.rb +18 -0
- data/lib/aws/emr/errors.rb +22 -0
- data/lib/aws/emr/instance_group.rb +138 -0
- data/lib/aws/emr/instance_group_collection.rb +82 -0
- data/lib/aws/emr/job_flow.rb +306 -0
- data/lib/aws/emr/job_flow_collection.rb +185 -0
- data/lib/aws/emr/request.rb +23 -0
- data/lib/aws/errors.rb +162 -0
- data/lib/aws/glacier.rb +80 -0
- data/lib/aws/glacier/archive.rb +56 -0
- data/lib/aws/glacier/archive_collection.rb +146 -0
- data/lib/aws/glacier/client.rb +286 -0
- data/lib/aws/glacier/config.rb +19 -0
- data/lib/aws/glacier/errors.rb +22 -0
- data/lib/aws/glacier/request.rb +34 -0
- data/lib/aws/glacier/resource.rb +30 -0
- data/lib/aws/glacier/vault.rb +145 -0
- data/lib/aws/glacier/vault_collection.rb +75 -0
- data/lib/aws/glacier/vault_notification_configuration.rb +29 -0
- data/lib/aws/iam.rb +420 -0
- data/lib/aws/iam/access_key.rb +180 -0
- data/lib/aws/iam/access_key_collection.rb +128 -0
- data/lib/aws/iam/account_alias_collection.rb +79 -0
- data/lib/aws/iam/client.rb +1092 -0
- data/lib/aws/iam/collection.rb +83 -0
- data/lib/aws/iam/config.rb +18 -0
- data/lib/aws/iam/errors.rb +22 -0
- data/lib/aws/iam/group.rb +111 -0
- data/lib/aws/iam/group_collection.rb +132 -0
- data/lib/aws/iam/group_policy_collection.rb +47 -0
- data/lib/aws/iam/group_user_collection.rb +84 -0
- data/lib/aws/iam/login_profile.rb +99 -0
- data/lib/aws/iam/mfa_device.rb +52 -0
- data/lib/aws/iam/mfa_device_collection.rb +127 -0
- data/lib/aws/iam/policy.rb +46 -0
- data/lib/aws/iam/policy_collection.rb +188 -0
- data/lib/aws/iam/request.rb +29 -0
- data/lib/aws/iam/resource.rb +62 -0
- data/lib/aws/iam/server_certificate.rb +141 -0
- data/lib/aws/iam/server_certificate_collection.rb +138 -0
- data/lib/aws/iam/signing_certificate.rb +169 -0
- data/lib/aws/iam/signing_certificate_collection.rb +131 -0
- data/lib/aws/iam/user.rb +205 -0
- data/lib/aws/iam/user_collection.rb +133 -0
- data/lib/aws/iam/user_group_collection.rb +98 -0
- data/lib/aws/iam/user_policy.rb +90 -0
- data/lib/aws/iam/user_policy_collection.rb +45 -0
- data/lib/aws/iam/virtual_mfa_device.rb +139 -0
- data/lib/aws/iam/virtual_mfa_device_collection.rb +73 -0
- data/lib/aws/import_export.rb +73 -0
- data/lib/aws/import_export/client.rb +109 -0
- data/lib/aws/import_export/config.rb +19 -0
- data/lib/aws/import_export/errors.rb +22 -0
- data/lib/aws/import_export/request.rb +23 -0
- data/lib/aws/ops_works.rb +30 -0
- data/lib/aws/ops_works/client.rb +713 -0
- data/lib/aws/ops_works/config.rb +18 -0
- data/lib/aws/ops_works/errors.rb +20 -0
- data/lib/aws/ops_works/request.rb +27 -0
- data/lib/aws/rails.rb +195 -0
- data/lib/aws/rds.rb +71 -0
- data/lib/aws/rds/client.rb +2228 -0
- data/lib/aws/rds/config.rb +18 -0
- data/lib/aws/rds/db_instance.rb +205 -0
- data/lib/aws/rds/db_instance_collection.rb +75 -0
- data/lib/aws/rds/db_snapshot.rb +163 -0
- data/lib/aws/rds/db_snapshot_collection.rb +89 -0
- data/lib/aws/rds/errors.rb +22 -0
- data/lib/aws/rds/request.rb +23 -0
- data/lib/aws/record.rb +116 -0
- data/lib/aws/record/abstract_base.rb +701 -0
- data/lib/aws/record/attributes.rb +384 -0
- data/lib/aws/record/conversion.rb +38 -0
- data/lib/aws/record/dirty_tracking.rb +285 -0
- data/lib/aws/record/errors.rb +143 -0
- data/lib/aws/record/exceptions.rb +48 -0
- data/lib/aws/record/hash_model.rb +161 -0
- data/lib/aws/record/hash_model/attributes.rb +197 -0
- data/lib/aws/record/hash_model/finder_methods.rb +172 -0
- data/lib/aws/record/hash_model/scope.rb +108 -0
- data/lib/aws/record/model.rb +427 -0
- data/lib/aws/record/model/attributes.rb +379 -0
- data/lib/aws/record/model/finder_methods.rb +232 -0
- data/lib/aws/record/model/scope.rb +213 -0
- data/lib/aws/record/naming.rb +31 -0
- data/lib/aws/record/scope.rb +199 -0
- data/lib/aws/record/validations.rb +712 -0
- data/lib/aws/record/validator.rb +246 -0
- data/lib/aws/record/validators/acceptance.rb +51 -0
- data/lib/aws/record/validators/block.rb +38 -0
- data/lib/aws/record/validators/confirmation.rb +43 -0
- data/lib/aws/record/validators/count.rb +108 -0
- data/lib/aws/record/validators/exclusion.rb +43 -0
- data/lib/aws/record/validators/format.rb +57 -0
- data/lib/aws/record/validators/inclusion.rb +56 -0
- data/lib/aws/record/validators/length.rb +107 -0
- data/lib/aws/record/validators/method.rb +33 -0
- data/lib/aws/record/validators/numericality.rb +138 -0
- data/lib/aws/record/validators/presence.rb +45 -0
- data/lib/aws/redshift.rb +52 -0
- data/lib/aws/redshift/client.rb +1291 -0
- data/lib/aws/redshift/config.rb +18 -0
- data/lib/aws/redshift/errors.rb +22 -0
- data/lib/aws/redshift/request.rb +29 -0
- data/lib/aws/route_53.rb +87 -0
- data/lib/aws/route_53/change_batch.rb +159 -0
- data/lib/aws/route_53/change_info.rb +72 -0
- data/lib/aws/route_53/client.rb +387 -0
- data/lib/aws/route_53/config.rb +18 -0
- data/lib/aws/route_53/errors.rb +22 -0
- data/lib/aws/route_53/hosted_zone.rb +111 -0
- data/lib/aws/route_53/hosted_zone_collection.rb +100 -0
- data/lib/aws/route_53/request.rb +23 -0
- data/lib/aws/route_53/resource_record_set.rb +237 -0
- data/lib/aws/route_53/resource_record_set_collection.rb +110 -0
- data/lib/aws/s3.rb +155 -0
- data/lib/aws/s3/access_control_list.rb +257 -0
- data/lib/aws/s3/acl_object.rb +264 -0
- data/lib/aws/s3/acl_options.rb +204 -0
- data/lib/aws/s3/bucket.rb +742 -0
- data/lib/aws/s3/bucket_collection.rb +160 -0
- data/lib/aws/s3/bucket_lifecycle_configuration.rb +458 -0
- data/lib/aws/s3/bucket_tag_collection.rb +109 -0
- data/lib/aws/s3/bucket_version_collection.rb +77 -0
- data/lib/aws/s3/cipher_io.rb +119 -0
- data/lib/aws/s3/client.rb +1700 -0
- data/lib/aws/s3/client/xml.rb +231 -0
- data/lib/aws/s3/config.rb +36 -0
- data/lib/aws/s3/cors_rule.rb +106 -0
- data/lib/aws/s3/cors_rule_collection.rb +192 -0
- data/lib/aws/s3/data_options.rb +185 -0
- data/lib/aws/s3/encryption_utils.rb +139 -0
- data/lib/aws/s3/errors.rb +94 -0
- data/lib/aws/s3/multipart_upload.rb +320 -0
- data/lib/aws/s3/multipart_upload_collection.rb +68 -0
- data/lib/aws/s3/object_collection.rb +355 -0
- data/lib/aws/s3/object_metadata.rb +96 -0
- data/lib/aws/s3/object_upload_collection.rb +77 -0
- data/lib/aws/s3/object_version.rb +148 -0
- data/lib/aws/s3/object_version_collection.rb +89 -0
- data/lib/aws/s3/paginated_collection.rb +75 -0
- data/lib/aws/s3/policy.rb +74 -0
- data/lib/aws/s3/prefix_and_delimiter_collection.rb +47 -0
- data/lib/aws/s3/prefixed_collection.rb +81 -0
- data/lib/aws/s3/presigned_post.rb +555 -0
- data/lib/aws/s3/request.rb +201 -0
- data/lib/aws/s3/s3_object.rb +1690 -0
- data/lib/aws/s3/tree.rb +118 -0
- data/lib/aws/s3/tree/branch_node.rb +68 -0
- data/lib/aws/s3/tree/child_collection.rb +104 -0
- data/lib/aws/s3/tree/leaf_node.rb +94 -0
- data/lib/aws/s3/tree/node.rb +22 -0
- data/lib/aws/s3/tree/parent.rb +87 -0
- data/lib/aws/s3/uploaded_part.rb +80 -0
- data/lib/aws/s3/uploaded_part_collection.rb +84 -0
- data/lib/aws/s3/website_configuration.rb +102 -0
- data/lib/aws/simple_db.rb +219 -0
- data/lib/aws/simple_db/attribute.rb +154 -0
- data/lib/aws/simple_db/attribute_collection.rb +231 -0
- data/lib/aws/simple_db/client.rb +287 -0
- data/lib/aws/simple_db/config.rb +20 -0
- data/lib/aws/simple_db/consistent_read_option.rb +42 -0
- data/lib/aws/simple_db/delete_attributes.rb +62 -0
- data/lib/aws/simple_db/domain.rb +121 -0
- data/lib/aws/simple_db/domain_collection.rb +86 -0
- data/lib/aws/simple_db/domain_metadata.rb +110 -0
- data/lib/aws/simple_db/errors.rb +55 -0
- data/lib/aws/simple_db/expect_condition_option.rb +45 -0
- data/lib/aws/simple_db/item.rb +93 -0
- data/lib/aws/simple_db/item_collection.rb +649 -0
- data/lib/aws/simple_db/item_data.rb +73 -0
- data/lib/aws/simple_db/put_attributes.rb +60 -0
- data/lib/aws/simple_db/request.rb +23 -0
- data/lib/aws/simple_email_service.rb +428 -0
- data/lib/aws/simple_email_service/client.rb +276 -0
- data/lib/aws/simple_email_service/config.rb +19 -0
- data/lib/aws/simple_email_service/email_address_collection.rb +69 -0
- data/lib/aws/simple_email_service/errors.rb +22 -0
- data/lib/aws/simple_email_service/identity.rb +209 -0
- data/lib/aws/simple_email_service/identity_collection.rb +81 -0
- data/lib/aws/simple_email_service/quotas.rb +64 -0
- data/lib/aws/simple_email_service/request.rb +27 -0
- data/lib/aws/simple_workflow.rb +228 -0
- data/lib/aws/simple_workflow/activity_task.rb +173 -0
- data/lib/aws/simple_workflow/activity_task_collection.rb +123 -0
- data/lib/aws/simple_workflow/activity_type.rb +131 -0
- data/lib/aws/simple_workflow/activity_type_collection.rb +93 -0
- data/lib/aws/simple_workflow/client.rb +1204 -0
- data/lib/aws/simple_workflow/config.rb +18 -0
- data/lib/aws/simple_workflow/count.rb +49 -0
- data/lib/aws/simple_workflow/decision_task.rb +603 -0
- data/lib/aws/simple_workflow/decision_task_collection.rb +225 -0
- data/lib/aws/simple_workflow/domain.rb +122 -0
- data/lib/aws/simple_workflow/domain_collection.rb +169 -0
- data/lib/aws/simple_workflow/errors.rb +20 -0
- data/lib/aws/simple_workflow/history_event.rb +276 -0
- data/lib/aws/simple_workflow/history_event_collection.rb +76 -0
- data/lib/aws/simple_workflow/option_formatters.rb +82 -0
- data/lib/aws/simple_workflow/request.rb +33 -0
- data/lib/aws/simple_workflow/resource.rb +94 -0
- data/lib/aws/simple_workflow/type.rb +89 -0
- data/lib/aws/simple_workflow/type_collection.rb +140 -0
- data/lib/aws/simple_workflow/workflow_execution.rb +386 -0
- data/lib/aws/simple_workflow/workflow_execution_collection.rb +617 -0
- data/lib/aws/simple_workflow/workflow_type.rb +177 -0
- data/lib/aws/simple_workflow/workflow_type_collection.rb +91 -0
- data/lib/aws/sns.rb +76 -0
- data/lib/aws/sns/client.rb +266 -0
- data/lib/aws/sns/config.rb +18 -0
- data/lib/aws/sns/errors.rb +22 -0
- data/lib/aws/sns/has_delivery_policy.rb +68 -0
- data/lib/aws/sns/policy.rb +47 -0
- data/lib/aws/sns/request.rb +23 -0
- data/lib/aws/sns/subscription.rb +144 -0
- data/lib/aws/sns/subscription_collection.rb +78 -0
- data/lib/aws/sns/topic.rb +403 -0
- data/lib/aws/sns/topic_collection.rb +62 -0
- data/lib/aws/sns/topic_subscription_collection.rb +54 -0
- data/lib/aws/sqs.rb +81 -0
- data/lib/aws/sqs/client.rb +258 -0
- data/lib/aws/sqs/config.rb +18 -0
- data/lib/aws/sqs/errors.rb +101 -0
- data/lib/aws/sqs/policy.rb +48 -0
- data/lib/aws/sqs/queue.rb +764 -0
- data/lib/aws/sqs/queue_collection.rb +174 -0
- data/lib/aws/sqs/received_message.rb +181 -0
- data/lib/aws/sqs/received_sns_message.rb +116 -0
- data/lib/aws/sqs/request.rb +67 -0
- data/lib/aws/storage_gateway.rb +73 -0
- data/lib/aws/storage_gateway/client.rb +472 -0
- data/lib/aws/storage_gateway/config.rb +18 -0
- data/lib/aws/storage_gateway/errors.rb +22 -0
- data/lib/aws/storage_gateway/request.rb +28 -0
- data/lib/aws/sts.rb +163 -0
- data/lib/aws/sts/client.rb +157 -0
- data/lib/aws/sts/config.rb +18 -0
- data/lib/aws/sts/errors.rb +22 -0
- data/lib/aws/sts/federated_session.rb +56 -0
- data/lib/aws/sts/policy.rb +30 -0
- data/lib/aws/sts/request.rb +29 -0
- data/lib/aws/sts/session.rb +48 -0
- data/lib/aws/version.rb +18 -0
- data/lib/net/http/connection_pool.rb +226 -0
- data/lib/net/http/connection_pool/connection.rb +189 -0
- data/lib/net/http/connection_pool/session.rb +126 -0
- data/rails/init.rb +15 -0
- metadata +632 -0
|
@@ -0,0 +1,93 @@
|
|
|
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 ELB
|
|
16
|
+
class LoadBalancerPolicy < Core::Resource
|
|
17
|
+
|
|
18
|
+
# @private
|
|
19
|
+
def initialize load_balancer, name, options = {}
|
|
20
|
+
@load_balancer = load_balancer
|
|
21
|
+
super(load_balancer, options.merge(:name => name.to_s))
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# @return [LoadBalancer] Returns the load balancer this policy belongs to.
|
|
25
|
+
attr_reader :load_balancer
|
|
26
|
+
|
|
27
|
+
attribute :name, :static => true, :from => :policy_name
|
|
28
|
+
|
|
29
|
+
attribute :type, :static => true, :from => :policy_type_name
|
|
30
|
+
|
|
31
|
+
attribute :policy_attribute_descriptions, :static => true
|
|
32
|
+
|
|
33
|
+
protected :policy_attribute_descriptions
|
|
34
|
+
|
|
35
|
+
populates_from(:describe_load_balancer_policies) do |resp|
|
|
36
|
+
if resp.request_options[:load_balancer_name] == load_balancer.name
|
|
37
|
+
resp.policy_descriptions.find do |desc|
|
|
38
|
+
desc.policy_name == name
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# @return [Hash] Returns a hash of policy attributes. Keys are
|
|
44
|
+
# policy attribute names, and values are arrays one or more policy
|
|
45
|
+
# attribute values.
|
|
46
|
+
def attributes
|
|
47
|
+
attributes = {}
|
|
48
|
+
policy_attribute_descriptions.each do |desc|
|
|
49
|
+
attributes[desc.attribute_name] ||= []
|
|
50
|
+
attributes[desc.attribute_name] << desc.attribute_value
|
|
51
|
+
end
|
|
52
|
+
attributes
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Deletes this load balancer policy.
|
|
56
|
+
# @return [nil]
|
|
57
|
+
def delete
|
|
58
|
+
|
|
59
|
+
client.delete_load_balancer_policy(
|
|
60
|
+
:load_balancer_name => load_balancer.name,
|
|
61
|
+
:policy_name => name)
|
|
62
|
+
|
|
63
|
+
nil
|
|
64
|
+
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# Useful for determining if a policy with the given name exists:
|
|
68
|
+
#
|
|
69
|
+
# load_balancer.policies['my-policy-name'].exists? # => true/false
|
|
70
|
+
#
|
|
71
|
+
# @return [Boolean] Returns true this policy's load balancer has a
|
|
72
|
+
# policy with this name.
|
|
73
|
+
def exists?
|
|
74
|
+
r = get_resource
|
|
75
|
+
r.policy_descriptions.find{|d| d.policy_name == name } ? true : false
|
|
76
|
+
rescue AWS::ELB::Errors::LoadBalancerNotFound
|
|
77
|
+
false
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
protected
|
|
81
|
+
def resource_identifiers
|
|
82
|
+
[[:load_balancer_name, load_balancer.name],[:policy_name, name]]
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
protected
|
|
86
|
+
def get_resource attr_name = nil
|
|
87
|
+
client.describe_load_balancer_policies(
|
|
88
|
+
:load_balancer_name => load_balancer.name)
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
@@ -0,0 +1,208 @@
|
|
|
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 ELB
|
|
16
|
+
|
|
17
|
+
class LoadBalancerPolicyCollection
|
|
18
|
+
|
|
19
|
+
include Core::Collection::Simple
|
|
20
|
+
|
|
21
|
+
def initialize load_balancer, options = {}
|
|
22
|
+
@load_balancer = load_balancer
|
|
23
|
+
super
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
attr_reader :load_balancer
|
|
27
|
+
|
|
28
|
+
# Creates a new load balancer policy that contains the necessary
|
|
29
|
+
# attributes depending on the policy type. Policies are settings
|
|
30
|
+
# that are saved for your load balancer and that can be applied to
|
|
31
|
+
# the front-end listener, or the back-end application server,
|
|
32
|
+
# depending on your policy type.
|
|
33
|
+
#
|
|
34
|
+
# == Applying Policies
|
|
35
|
+
#
|
|
36
|
+
# To apply a policy to a front-end listener:
|
|
37
|
+
#
|
|
38
|
+
# # each listener may only have a single policy
|
|
39
|
+
# load_balancer.listener[80].policy = listener_policy
|
|
40
|
+
#
|
|
41
|
+
# To apply a policy to backend instance port
|
|
42
|
+
#
|
|
43
|
+
# # back end servers can have multiple policies per instance port
|
|
44
|
+
# load_balancer.backend_server_policies.add(80, back_end_policy)
|
|
45
|
+
#
|
|
46
|
+
# @param [String] name The name of the policy being created. The name
|
|
47
|
+
# must be unique within the set of policies for this load balancer.
|
|
48
|
+
#
|
|
49
|
+
# @param [String] type The policy type name. Valid values inlucde:
|
|
50
|
+
#
|
|
51
|
+
# * 'PublicKeyPolicyType'
|
|
52
|
+
# * 'AppCookieStickinessPolicyType'
|
|
53
|
+
# * 'LBCookieStickinessPolicyType'
|
|
54
|
+
# * 'SSLNegotiationPolicyType'
|
|
55
|
+
# * 'BackendServerAuthenticationPolicyType'
|
|
56
|
+
#
|
|
57
|
+
# @param [Hash] attributes A hash of policy attributes. Each policy
|
|
58
|
+
# type accepts a different list of hash options. Below each
|
|
59
|
+
# policy type name is listed with its list of accepted options.
|
|
60
|
+
# Attributes that accept more than one value should be provided
|
|
61
|
+
# as an array of values.
|
|
62
|
+
#
|
|
63
|
+
# Hash keys should be attribute names, values may be single
|
|
64
|
+
# values or arrays of values.
|
|
65
|
+
#
|
|
66
|
+
# PublicKeyPolicyType
|
|
67
|
+
#
|
|
68
|
+
# Policy containing a list of public keys to accept when authenticating the back-end server(s). This policy cannot be applied directly to back-end servers or listeners but must be part of a BackendServerAuthenticationPolicyType.
|
|
69
|
+
#
|
|
70
|
+
# * 'PublicKey', String, one
|
|
71
|
+
#
|
|
72
|
+
# AppCookieStickinessPolicyType
|
|
73
|
+
#
|
|
74
|
+
# Stickiness policy with session lifetimes controlled by the lifetime of the application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners.
|
|
75
|
+
#
|
|
76
|
+
# * 'CookieName', String, one
|
|
77
|
+
#
|
|
78
|
+
# LBCookieStickinessPolicyType
|
|
79
|
+
#
|
|
80
|
+
# Stickiness policy with session lifetimes controlled by the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP/HTTPS listeners.
|
|
81
|
+
#
|
|
82
|
+
# * 'CookieExpirationPeriod', Long, zero or one
|
|
83
|
+
#
|
|
84
|
+
# SSLNegotiationPolicyType
|
|
85
|
+
#
|
|
86
|
+
# Listener policy that defines the ciphers and protocols that will be accepted by the load balancer. This policy can be associated only with HTTPS/SSL listeners.
|
|
87
|
+
#
|
|
88
|
+
# * 'Protocol-SSLv2', Boolean, zero or one
|
|
89
|
+
# * 'Protocol-TLSv1', Boolean, zero or one
|
|
90
|
+
# * 'Protocol-SSLv3', Boolean, zero or one
|
|
91
|
+
# * 'DHE-RSA-AES256-SHA', Boolean, zero or one
|
|
92
|
+
# * 'DHE-DSS-AES256-SHA', Boolean, zero or one
|
|
93
|
+
# * 'DHE-RSA-CAMELLIA256-SHA', Boolean, zero or one
|
|
94
|
+
# * 'DHE-DSS-CAMELLIA256-SHA', Boolean, zero or one
|
|
95
|
+
# * 'ADH-AES256-SHA', Boolean, zero or one
|
|
96
|
+
# * 'ADH-CAMELLIA256-SHA', Boolean, zero or one
|
|
97
|
+
# * 'AES256-SHA', Boolean, zero or one
|
|
98
|
+
# * 'CAMELLIA256-SHA', Boolean, zero or one
|
|
99
|
+
# * 'PSK-AES256-CBC-SHA', Boolean, zero or one
|
|
100
|
+
# * 'EDH-RSA-DES-CBC3-SHA', Boolean, zero or one
|
|
101
|
+
# * 'EDH-DSS-DES-CBC3-SHA', Boolean, zero or one
|
|
102
|
+
# * 'ADH-DES-CBC3-SHA', Boolean, zero or one
|
|
103
|
+
# * 'DES-CBC3-SHA', Boolean, zero or one
|
|
104
|
+
# * 'DES-CBC3-MD5', Boolean, zero or one
|
|
105
|
+
# * 'PSK-3DES-EDE-CBC-SHA', Boolean, zero or one
|
|
106
|
+
# * 'KRB5-DES-CBC3-SHA', Boolean, zero or one
|
|
107
|
+
# * 'KRB5-DES-CBC3-MD5', Boolean, zero or one
|
|
108
|
+
# * 'DHE-RSA-AES128-SHA', Boolean, zero or one
|
|
109
|
+
# * 'DHE-DSS-AES128-SHA', Boolean, zero or one
|
|
110
|
+
# * 'DHE-RSA-SEED-SHA', Boolean, zero or one
|
|
111
|
+
# * 'DHE-DSS-SEED-SHA', Boolean, zero or one
|
|
112
|
+
# * 'DHE-RSA-CAMELLIA128-SHA', Boolean, zero or one
|
|
113
|
+
# * 'DHE-DSS-CAMELLIA128-SHA', Boolean, zero or one
|
|
114
|
+
# * 'ADH-AES128-SHA', Boolean, zero or one
|
|
115
|
+
# * 'ADH-SEED-SHA', Boolean, zero or one
|
|
116
|
+
# * 'ADH-CAMELLIA128-SHA', Boolean, zero or one
|
|
117
|
+
# * 'AES128-SHA', Boolean, zero or one
|
|
118
|
+
# * 'SEED-SHA', Boolean, zero or one
|
|
119
|
+
# * 'CAMELLIA128-SHA', Boolean, zero or one
|
|
120
|
+
# * 'RC2-CBC-MD5', Boolean, zero or one
|
|
121
|
+
# * 'PSK-AES128-CBC-SHA', Boolean, zero or one
|
|
122
|
+
# * 'ADH-RC4-MD5', Boolean, zero or one
|
|
123
|
+
# * 'IDEA-CBC-SHA', Boolean, zero or one
|
|
124
|
+
# * 'RC4-SHA', Boolean, zero or one
|
|
125
|
+
# * 'RC4-MD5', Boolean, zero or one
|
|
126
|
+
# * 'PSK-RC4-SHA', Boolean, zero or one
|
|
127
|
+
# * 'KRB5-RC4-SHA', Boolean, zero or one
|
|
128
|
+
# * 'KRB5-RC4-MD5', Boolean, zero or one
|
|
129
|
+
# * 'EDH-RSA-DES-CBC-SHA', Boolean, zero or one
|
|
130
|
+
# * 'EDH-DSS-DES-CBC-SHA', Boolean, zero or one
|
|
131
|
+
# * 'ADH-DES-CBC-SHA', Boolean, zero or one
|
|
132
|
+
# * 'DES-CBC-SHA', Boolean, zero or one
|
|
133
|
+
# * 'DES-CBC-MD5', Boolean, zero or one
|
|
134
|
+
# * 'KRB5-DES-CBC-SHA', Boolean, zero or one
|
|
135
|
+
# * 'KRB5-DES-CBC-MD5', Boolean, zero or one
|
|
136
|
+
# * 'EXP-EDH-RSA-DES-CBC-SHA', Boolean, zero or one
|
|
137
|
+
# * 'EXP-EDH-DSS-DES-CBC-SHA', Boolean, zero or one
|
|
138
|
+
# * 'EXP-ADH-DES-CBC-SHA', Boolean, zero or one
|
|
139
|
+
# * 'EXP-DES-CBC-SHA', Boolean, zero or one
|
|
140
|
+
# * 'EXP-RC2-CBC-MD5', Boolean, zero or one
|
|
141
|
+
# * 'EXP-KRB5-RC2-CBC-SHA', Boolean, zero or one
|
|
142
|
+
# * 'EXP-KRB5-DES-CBC-SHA', Boolean, zero or one
|
|
143
|
+
# * 'EXP-KRB5-RC2-CBC-MD5', Boolean, zero or one
|
|
144
|
+
# * 'EXP-KRB5-DES-CBC-MD5', Boolean, zero or one
|
|
145
|
+
# * 'EXP-ADH-RC4-MD5', Boolean, zero or one
|
|
146
|
+
# * 'EXP-RC4-MD5', Boolean, zero or one
|
|
147
|
+
# * 'EXP-KRB5-RC4-SHA', Boolean, zero or one
|
|
148
|
+
# * 'EXP-KRB5-RC4-MD5', Boolean, zero or one
|
|
149
|
+
#
|
|
150
|
+
# BackendServerAuthenticationPolicyType
|
|
151
|
+
#
|
|
152
|
+
# Policy that controls authentication to back-end server(s) and contains one or more policies, such as an instance of a PublicKeyPolicyType. This policy can be associated only with back-end servers that are using HTTPS/SSL.
|
|
153
|
+
#
|
|
154
|
+
# * 'PublicKeyPolicyName', PolicyName, one or more
|
|
155
|
+
#
|
|
156
|
+
# @return [nil]
|
|
157
|
+
#
|
|
158
|
+
def create name, type, attributes = {}
|
|
159
|
+
|
|
160
|
+
attribute_list = []
|
|
161
|
+
|
|
162
|
+
attributes.each do |attr_name,values|
|
|
163
|
+
[values].flatten.each do |value|
|
|
164
|
+
attribute_list << {
|
|
165
|
+
:attribute_name => attr_name,
|
|
166
|
+
:attribute_value => value.to_s
|
|
167
|
+
}
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
client.create_load_balancer_policy(
|
|
172
|
+
:load_balancer_name => load_balancer.name,
|
|
173
|
+
:policy_name => name.to_s,
|
|
174
|
+
:policy_type_name => type.to_s,
|
|
175
|
+
:policy_attributes => attribute_list)
|
|
176
|
+
|
|
177
|
+
LoadBalancerPolicy.new(load_balancer, name, :type => type.to_s)
|
|
178
|
+
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
# @param [String] policy_name The name of the policy to return.
|
|
182
|
+
# @return [LoadBalancerPolicy] Returns a reference to the load balancer
|
|
183
|
+
# policy with the given name.
|
|
184
|
+
def [] policy_name
|
|
185
|
+
LoadBalancerPolicy.new(load_balancer, policy_name)
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
protected
|
|
189
|
+
def _each_item options = {}, &block
|
|
190
|
+
|
|
191
|
+
options[:load_balancer_name] = load_balancer.name
|
|
192
|
+
|
|
193
|
+
response = client.describe_load_balancer_policies(options)
|
|
194
|
+
response.policy_descriptions.each do |desc|
|
|
195
|
+
|
|
196
|
+
load_balancer_policy = LoadBalancerPolicy.new_from(
|
|
197
|
+
:describe_load_balancer_policies,
|
|
198
|
+
desc, load_balancer, desc.policy_name)
|
|
199
|
+
|
|
200
|
+
yield(load_balancer_policy)
|
|
201
|
+
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
end
|
|
207
|
+
end
|
|
208
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
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 ELB
|
|
16
|
+
|
|
17
|
+
# @private
|
|
18
|
+
class Request < Core::Http::Request
|
|
19
|
+
|
|
20
|
+
include Core::Signature::Version4
|
|
21
|
+
|
|
22
|
+
def service
|
|
23
|
+
'elasticloadbalancing'
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
end
|
|
29
|
+
end
|
data/lib/aws/emr.rb
ADDED
|
@@ -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
|
+
require 'aws/core'
|
|
15
|
+
require 'aws/emr/config'
|
|
16
|
+
require 'time'
|
|
17
|
+
|
|
18
|
+
module AWS
|
|
19
|
+
|
|
20
|
+
# Provides an expressive, object-oriented interface to Amazon Elastic
|
|
21
|
+
# MapReduce.
|
|
22
|
+
#
|
|
23
|
+
# To use Amazon Elastic MapReduce you must first
|
|
24
|
+
# {sign up here}[http://aws.amazon.com/elasticmapreduce/]
|
|
25
|
+
#
|
|
26
|
+
# For more information about Amazon Elastic MapReduce, see:
|
|
27
|
+
#
|
|
28
|
+
# * {Amazon Elastic MapReduce}[http://aws.amazon.com/elasticmapreduce/]
|
|
29
|
+
# * {Amazon Elastic MapReduce Documentation}[http://aws.amazon.com/documentation/elasticmapreduce/]
|
|
30
|
+
#
|
|
31
|
+
# == Credentials
|
|
32
|
+
#
|
|
33
|
+
# You can setup default credentials for all AWS services via
|
|
34
|
+
# AWS.config:
|
|
35
|
+
#
|
|
36
|
+
# AWS.config(
|
|
37
|
+
# :access_key_id => 'YOUR_ACCESS_KEY_ID',
|
|
38
|
+
# :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
|
|
39
|
+
#
|
|
40
|
+
# Or you can set them directly on the EMR interface:
|
|
41
|
+
#
|
|
42
|
+
# emr = AWS::EMR.new(
|
|
43
|
+
# :access_key_id => 'YOUR_ACCESS_KEY_ID',
|
|
44
|
+
# :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
|
|
45
|
+
#
|
|
46
|
+
# = Job Flows
|
|
47
|
+
#
|
|
48
|
+
# The {#job_flows} method returns a collection you use to interact
|
|
49
|
+
# with your job flows.
|
|
50
|
+
#
|
|
51
|
+
# # creating a job flow
|
|
52
|
+
# job_flow = emr.job_flows.create(...)
|
|
53
|
+
#
|
|
54
|
+
# # enumerating job flows
|
|
55
|
+
# emr.job_flows.each do |job_flow|
|
|
56
|
+
# puts job_flow.id
|
|
57
|
+
# end
|
|
58
|
+
#
|
|
59
|
+
# See {JobFlowCollection} and {JobFlow} for more information on working
|
|
60
|
+
# with job flows.
|
|
61
|
+
#
|
|
62
|
+
# @!attribute [r] client
|
|
63
|
+
# @return [Client] the low-level EMR client object
|
|
64
|
+
class EMR
|
|
65
|
+
|
|
66
|
+
AWS.register_autoloads(self) do
|
|
67
|
+
autoload :Client, 'client'
|
|
68
|
+
autoload :Errors, 'errors'
|
|
69
|
+
autoload :InstanceGroup, 'instance_group'
|
|
70
|
+
autoload :InstanceGroupCollection, 'instance_group_collection'
|
|
71
|
+
autoload :JobFlow, 'job_flow'
|
|
72
|
+
autoload :JobFlowCollection, 'job_flow_collection'
|
|
73
|
+
autoload :Request, 'request'
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
include Core::ServiceInterface
|
|
77
|
+
|
|
78
|
+
# @return [JobFlowCollection] Returns a collection that represents all
|
|
79
|
+
# job flows.
|
|
80
|
+
def job_flows
|
|
81
|
+
JobFlowCollection.new(:config => config)
|
|
82
|
+
end
|
|
83
|
+
alias_method :jobs, :job_flows
|
|
84
|
+
|
|
85
|
+
end
|
|
86
|
+
end
|
|
@@ -0,0 +1,330 @@
|
|
|
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 EMR
|
|
16
|
+
|
|
17
|
+
# Client class for Elastic MapReduce (EMR).
|
|
18
|
+
class Client < Core::QueryClient
|
|
19
|
+
|
|
20
|
+
# @private
|
|
21
|
+
CACHEABLE_REQUESTS = Set[]
|
|
22
|
+
|
|
23
|
+
# client methods #
|
|
24
|
+
|
|
25
|
+
# @!method add_instance_groups(options = {})
|
|
26
|
+
# Calls the AddInstanceGroups API operation.
|
|
27
|
+
# @param [Hash] options
|
|
28
|
+
# * +:instance_groups+ - *required* - (Array<Hash>) Instance Groups to
|
|
29
|
+
# add.
|
|
30
|
+
# * +:name+ - (String) Friendly name given to the instance group.
|
|
31
|
+
# * +:market+ - (String) Market type of the Amazon EC2 instances used
|
|
32
|
+
# to create a cluster node.
|
|
33
|
+
# * +:instance_role+ - *required* - (String) The role of the instance
|
|
34
|
+
# group in the cluster.
|
|
35
|
+
# * +:bid_price+ - (String) Bid price for each Amazon EC2 instance in
|
|
36
|
+
# the instance group when launching nodes as Spot Instances,
|
|
37
|
+
# expressed in USD.
|
|
38
|
+
# * +:instance_type+ - *required* - (String) The Amazon EC2 instance
|
|
39
|
+
# type for all instances in the instance group.
|
|
40
|
+
# * +:instance_count+ - *required* - (Integer) Target number of
|
|
41
|
+
# instances for the instance group.
|
|
42
|
+
# * +:job_flow_id+ - *required* - (String) Job flow in which to add the
|
|
43
|
+
# instance groups.
|
|
44
|
+
# @return [Core::Response]
|
|
45
|
+
# The #data method of the response object returns
|
|
46
|
+
# a hash with the following structure:
|
|
47
|
+
# * +:job_flow_id+ - (String)
|
|
48
|
+
# * +:instance_group_ids+ - (Array<String>)
|
|
49
|
+
|
|
50
|
+
# @!method add_job_flow_steps(options = {})
|
|
51
|
+
# Calls the AddJobFlowSteps API operation.
|
|
52
|
+
# @param [Hash] options
|
|
53
|
+
# * +:job_flow_id+ - *required* - (String) A string that uniquely
|
|
54
|
+
# identifies the job flow. This identifier is returned by RunJobFlow
|
|
55
|
+
# and can also be obtained from DescribeJobFlows.
|
|
56
|
+
# * +:steps+ - *required* - (Array<Hash>) A list of StepConfig to be
|
|
57
|
+
# executed by the job flow.
|
|
58
|
+
# * +:name+ - *required* - (String) The name of the job flow step.
|
|
59
|
+
# * +:action_on_failure+ - (String) Specifies the action to take if
|
|
60
|
+
# the job flow step fails.
|
|
61
|
+
# * +:hadoop_jar_step+ - *required* - (Hash) Specifies the JAR file
|
|
62
|
+
# used for the job flow step.
|
|
63
|
+
# * +:properties+ - (Array<Hash>) A list of Java properties that
|
|
64
|
+
# are set when the step runs. You can use these properties to
|
|
65
|
+
# pass key value pairs to your main function.
|
|
66
|
+
# * +:key+ - (String) The unique identifier of a key value pair.
|
|
67
|
+
# * +:value+ - (String) The value part of the identified key.
|
|
68
|
+
# * +:jar+ - *required* - (String) A path to a JAR file run during
|
|
69
|
+
# the step.
|
|
70
|
+
# * +:main_class+ - (String) The name of the main class in the
|
|
71
|
+
# specified Java file. If not specified, the JAR file should
|
|
72
|
+
# specify a Main-Class in its manifest file.
|
|
73
|
+
# * +:args+ - (Array<String>) A list of command line arguments
|
|
74
|
+
# passed to the JAR file's main function when executed.
|
|
75
|
+
# @return [Core::Response]
|
|
76
|
+
|
|
77
|
+
# @!method describe_job_flows(options = {})
|
|
78
|
+
# Calls the DescribeJobFlows API operation.
|
|
79
|
+
# @param [Hash] options
|
|
80
|
+
# * +:created_after+ - (String<ISO8601 datetime>) Return only job flows
|
|
81
|
+
# created after this date and time.
|
|
82
|
+
# * +:created_before+ - (String<ISO8601 datetime>) Return only job
|
|
83
|
+
# flows created before this date and time.
|
|
84
|
+
# * +:job_flow_ids+ - (Array<String>) Return only job flows whose job
|
|
85
|
+
# flow ID is contained in this list.
|
|
86
|
+
# * +:job_flow_states+ - (Array<String>) Return only job flows whose
|
|
87
|
+
# state is contained in this list.
|
|
88
|
+
# @return [Core::Response]
|
|
89
|
+
# The #data method of the response object returns
|
|
90
|
+
# a hash with the following structure:
|
|
91
|
+
# * +:job_flows+ - (Array<Hash>)
|
|
92
|
+
# * +:job_flow_id+ - (String)
|
|
93
|
+
# * +:name+ - (String)
|
|
94
|
+
# * +:log_uri+ - (String)
|
|
95
|
+
# * +:ami_version+ - (String)
|
|
96
|
+
# * +:execution_status_detail+ - (Hash)
|
|
97
|
+
# * +:state+ - (String)
|
|
98
|
+
# * +:creation_date_time+ - (Time)
|
|
99
|
+
# * +:start_date_time+ - (Time)
|
|
100
|
+
# * +:ready_date_time+ - (Time)
|
|
101
|
+
# * +:end_date_time+ - (Time)
|
|
102
|
+
# * +:last_state_change_reason+ - (String)
|
|
103
|
+
# * +:instances+ - (Hash)
|
|
104
|
+
# * +:master_instance_type+ - (String)
|
|
105
|
+
# * +:master_public_dns_name+ - (String)
|
|
106
|
+
# * +:master_instance_id+ - (String)
|
|
107
|
+
# * +:slave_instance_type+ - (String)
|
|
108
|
+
# * +:instance_count+ - (Integer)
|
|
109
|
+
# * +:instance_groups+ - (Array<Hash>)
|
|
110
|
+
# * +:instance_group_id+ - (String)
|
|
111
|
+
# * +:name+ - (String)
|
|
112
|
+
# * +:market+ - (String)
|
|
113
|
+
# * +:instance_role+ - (String)
|
|
114
|
+
# * +:bid_price+ - (String)
|
|
115
|
+
# * +:instance_type+ - (String)
|
|
116
|
+
# * +:instance_request_count+ - (Integer)
|
|
117
|
+
# * +:instance_running_count+ - (Integer)
|
|
118
|
+
# * +:state+ - (String)
|
|
119
|
+
# * +:last_state_change_reason+ - (String)
|
|
120
|
+
# * +:creation_date_time+ - (Time)
|
|
121
|
+
# * +:start_date_time+ - (Time)
|
|
122
|
+
# * +:ready_date_time+ - (Time)
|
|
123
|
+
# * +:end_date_time+ - (Time)
|
|
124
|
+
# * +:normalized_instance_hours+ - (Integer)
|
|
125
|
+
# * +:ec2_key_name+ - (String)
|
|
126
|
+
# * +:ec2_subnet_id+ - (String)
|
|
127
|
+
# * +:placement+ - (Hash)
|
|
128
|
+
# * +:availability_zone+ - (String)
|
|
129
|
+
# * +:keep_job_flow_alive_when_no_steps+ - (Boolean)
|
|
130
|
+
# * +:termination_protected+ - (Boolean)
|
|
131
|
+
# * +:hadoop_version+ - (String)
|
|
132
|
+
# * +:steps+ - (Array<Hash>)
|
|
133
|
+
# * +:step_config+ - (Hash)
|
|
134
|
+
# * +:name+ - (String)
|
|
135
|
+
# * +:action_on_failure+ - (String)
|
|
136
|
+
# * +:hadoop_jar_step+ - (Hash)
|
|
137
|
+
# * +:properties+ - (Array<Hash>)
|
|
138
|
+
# * +:key+ - (String)
|
|
139
|
+
# * +:value+ - (String)
|
|
140
|
+
# * +:jar+ - (String)
|
|
141
|
+
# * +:main_class+ - (String)
|
|
142
|
+
# * +:args+ - (Array<String>)
|
|
143
|
+
# * +:execution_status_detail+ - (Hash)
|
|
144
|
+
# * +:state+ - (String)
|
|
145
|
+
# * +:creation_date_time+ - (Time)
|
|
146
|
+
# * +:start_date_time+ - (Time)
|
|
147
|
+
# * +:end_date_time+ - (Time)
|
|
148
|
+
# * +:last_state_change_reason+ - (String)
|
|
149
|
+
# * +:bootstrap_actions+ - (Array<Hash>)
|
|
150
|
+
# * +:bootstrap_action_config+ - (Hash)
|
|
151
|
+
# * +:name+ - (String)
|
|
152
|
+
# * +:script_bootstrap_action+ - (Hash)
|
|
153
|
+
# * +:path+ - (String)
|
|
154
|
+
# * +:args+ - (Array<String>)
|
|
155
|
+
# * +:supported_products+ - (Array<String>)
|
|
156
|
+
# * +:visible_to_all_users+ - (Boolean)
|
|
157
|
+
# * +:job_flow_role+ - (String)
|
|
158
|
+
|
|
159
|
+
# @!method modify_instance_groups(options = {})
|
|
160
|
+
# Calls the ModifyInstanceGroups API operation.
|
|
161
|
+
# @param [Hash] options
|
|
162
|
+
# * +:instance_groups+ - (Array<Hash>) Instance groups to change.
|
|
163
|
+
# * +:instance_group_id+ - *required* - (String) Unique ID of the
|
|
164
|
+
# instance group to expand or shrink.
|
|
165
|
+
# * +:instance_count+ - *required* - (Integer) Target size for the
|
|
166
|
+
# instance group.
|
|
167
|
+
# @return [Core::Response]
|
|
168
|
+
|
|
169
|
+
# @!method run_job_flow(options = {})
|
|
170
|
+
# Calls the RunJobFlow API operation.
|
|
171
|
+
# @param [Hash] options
|
|
172
|
+
# * +:name+ - *required* - (String) The name of the job flow.
|
|
173
|
+
# * +:log_uri+ - (String) Specifies the location in Amazon S3 to write
|
|
174
|
+
# the log files of the job flow. If a value is not provided, logs are
|
|
175
|
+
# not created.
|
|
176
|
+
# * +:additional_info+ - (String) A JSON string for selecting
|
|
177
|
+
# additional features.
|
|
178
|
+
# * +:ami_version+ - (String) The version of the Amazon Machine Image
|
|
179
|
+
# (AMI) to use when launching Amazon EC2 instances in the job flow.
|
|
180
|
+
# The following values are valid: "latest" (uses the latest AMI) The
|
|
181
|
+
# version number of the AMI to use, for example, "2.0" If this value
|
|
182
|
+
# is not specified, the job flow uses the default of (AMI 1.0, Hadoop
|
|
183
|
+
# 0.18). If the AMI supports multiple versions of Hadoop (for
|
|
184
|
+
# example, AMI 1.0 supports both Hadoop 0.18 and 0.20) you can use
|
|
185
|
+
# the JobFlowInstancesConfig HadoopVersion parameter to modify the
|
|
186
|
+
# version of Hadoop from the defaults shown above. For details about
|
|
187
|
+
# the AMI versions currently supported by Amazon ElasticMapReduce, go
|
|
188
|
+
# to AMI Versions Supported in Elastic MapReduce in the Amazon
|
|
189
|
+
# Elastic MapReduce Developer's Guide.
|
|
190
|
+
# * +:instances+ - *required* - (Hash) A specification of the number
|
|
191
|
+
# and type of Amazon EC2 instances on which to run the job flow.
|
|
192
|
+
# * +:master_instance_type+ - (String) The EC2 instance type of the
|
|
193
|
+
# master node.
|
|
194
|
+
# * +:slave_instance_type+ - (String) The EC2 instance type of the
|
|
195
|
+
# slave nodes.
|
|
196
|
+
# * +:instance_count+ - (Integer) The number of Amazon EC2 instances
|
|
197
|
+
# used to execute the job flow.
|
|
198
|
+
# * +:instance_groups+ - (Array<Hash>) Configuration for the job
|
|
199
|
+
# flow's instance groups.
|
|
200
|
+
# * +:name+ - (String) Friendly name given to the instance group.
|
|
201
|
+
# * +:market+ - (String) Market type of the Amazon EC2 instances
|
|
202
|
+
# used to create a cluster node.
|
|
203
|
+
# * +:instance_role+ - *required* - (String) The role of the
|
|
204
|
+
# instance group in the cluster.
|
|
205
|
+
# * +:bid_price+ - (String) Bid price for each Amazon EC2 instance
|
|
206
|
+
# in the instance group when launching nodes as Spot Instances,
|
|
207
|
+
# expressed in USD.
|
|
208
|
+
# * +:instance_type+ - *required* - (String) The Amazon EC2
|
|
209
|
+
# instance type for all instances in the instance group.
|
|
210
|
+
# * +:instance_count+ - *required* - (Integer) Target number of
|
|
211
|
+
# instances for the instance group.
|
|
212
|
+
# * +:ec2_key_name+ - (String) Specifies the name of the Amazon EC2
|
|
213
|
+
# key pair that can be used to ssh to the master node as the user
|
|
214
|
+
# called "hadoop."
|
|
215
|
+
# * +:placement+ - (Hash) Specifies the Availability Zone the job
|
|
216
|
+
# flow will run in.
|
|
217
|
+
# * +:availability_zone+ - *required* - (String) The Amazon EC2
|
|
218
|
+
# Availability Zone for the job flow.
|
|
219
|
+
# * +:keep_job_flow_alive_when_no_steps+ - (Boolean) Specifies
|
|
220
|
+
# whether the job flow should terminate after completing all steps.
|
|
221
|
+
# * +:termination_protected+ - (Boolean) Specifies whether to lock
|
|
222
|
+
# the job flow to prevent the Amazon EC2 instances from being
|
|
223
|
+
# terminated by API call, user intervention, or in the event of a
|
|
224
|
+
# job flow error.
|
|
225
|
+
# * +:hadoop_version+ - (String) Specifies the Hadoop version for the
|
|
226
|
+
# job flow. Valid inputs are "0.18", "0.20", or "0.20.205". If you
|
|
227
|
+
# do not set this value, the default of 0.18 is used, unless the
|
|
228
|
+
# AmiVersion parameter is set in the RunJobFlow call, in which case
|
|
229
|
+
# the default version of Hadoop for that AMI version is used.
|
|
230
|
+
# * +:ec2_subnet_id+ - (String) To launch the job flow in Amazon
|
|
231
|
+
# Virtual Private Cloud (Amazon VPC), set this parameter to the
|
|
232
|
+
# identifier of the Amazon VPC subnet where you want the job flow
|
|
233
|
+
# to launch. If you do not specify this value, the job flow is
|
|
234
|
+
# launched in the normal Amazon Web Services cloud, outside of an
|
|
235
|
+
# Amazon VPC. Amazon VPC currently does not support cluster compute
|
|
236
|
+
# quadruple extra large (cc1.4xlarge) instances. Thus you cannot
|
|
237
|
+
# specify the cc1.4xlarge instance type for nodes of a job flow
|
|
238
|
+
# launched in a Amazon VPC.
|
|
239
|
+
# * +:steps+ - (Array<Hash>) A list of steps to be executed by the job
|
|
240
|
+
# flow.
|
|
241
|
+
# * +:name+ - *required* - (String) The name of the job flow step.
|
|
242
|
+
# * +:action_on_failure+ - (String) Specifies the action to take if
|
|
243
|
+
# the job flow step fails.
|
|
244
|
+
# * +:hadoop_jar_step+ - *required* - (Hash) Specifies the JAR file
|
|
245
|
+
# used for the job flow step.
|
|
246
|
+
# * +:properties+ - (Array<Hash>) A list of Java properties that
|
|
247
|
+
# are set when the step runs. You can use these properties to
|
|
248
|
+
# pass key value pairs to your main function.
|
|
249
|
+
# * +:key+ - (String) The unique identifier of a key value pair.
|
|
250
|
+
# * +:value+ - (String) The value part of the identified key.
|
|
251
|
+
# * +:jar+ - *required* - (String) A path to a JAR file run during
|
|
252
|
+
# the step.
|
|
253
|
+
# * +:main_class+ - (String) The name of the main class in the
|
|
254
|
+
# specified Java file. If not specified, the JAR file should
|
|
255
|
+
# specify a Main-Class in its manifest file.
|
|
256
|
+
# * +:args+ - (Array<String>) A list of command line arguments
|
|
257
|
+
# passed to the JAR file's main function when executed.
|
|
258
|
+
# * +:bootstrap_actions+ - (Array<Hash>) A list of bootstrap actions
|
|
259
|
+
# that will be run before Hadoop is started on the cluster nodes.
|
|
260
|
+
# * +:name+ - *required* - (String) The name of the bootstrap action.
|
|
261
|
+
# * +:script_bootstrap_action+ - *required* - (Hash) The script run
|
|
262
|
+
# by the bootstrap action.
|
|
263
|
+
# * +:path+ - *required* - (String) Location of the script to run
|
|
264
|
+
# during a bootstrap action. Can be either a location in Amazon
|
|
265
|
+
# S3 or on a local file system.
|
|
266
|
+
# * +:args+ - (Array<String>) A list of command line arguments to
|
|
267
|
+
# pass to the bootstrap action script.
|
|
268
|
+
# * +:supported_products+ - (Array<String>) A list of strings that
|
|
269
|
+
# indicates third-party software to use with the job flow. For more
|
|
270
|
+
# information, go to Use Third Party Applications with Amazon EMR.
|
|
271
|
+
# Currently supported values are: "karmasphere-enterprise-utility" -
|
|
272
|
+
# tag the job flow for management by Karmasphere. "mapr-m3" - launch
|
|
273
|
+
# the job flow using MapR M3 Edition. "mapr-m5" - launch the job flow
|
|
274
|
+
# using MapR M5 Edition.
|
|
275
|
+
# * +:visible_to_all_users+ - (Boolean) Whether the job flow is visible
|
|
276
|
+
# to all IAM users of the AWS account associated with the job flow.
|
|
277
|
+
# If this value is set to +true+ , all IAM users of that AWS account
|
|
278
|
+
# can view and (if they have the proper policy permissions set)
|
|
279
|
+
# manage the job flow. If it is set to +false+ , only the IAM user
|
|
280
|
+
# that created the job flow can view and manage it.
|
|
281
|
+
# * +:job_flow_role+ - (String) An IAM role for the job flow. The EC2
|
|
282
|
+
# instances of the job flow assume this role. The default role is
|
|
283
|
+
# EMRJobflowDefault. In order to use the default role, you must have
|
|
284
|
+
# already created it using the CLI.
|
|
285
|
+
# @return [Core::Response]
|
|
286
|
+
# The #data method of the response object returns
|
|
287
|
+
# a hash with the following structure:
|
|
288
|
+
# * +:job_flow_id+ - (String)
|
|
289
|
+
|
|
290
|
+
# @!method set_termination_protection(options = {})
|
|
291
|
+
# Calls the SetTerminationProtection API operation.
|
|
292
|
+
# @param [Hash] options
|
|
293
|
+
# * +:job_flow_ids+ - *required* - (Array<String>) A list of strings
|
|
294
|
+
# that uniquely identify the job flows to protect. This identifier is
|
|
295
|
+
# returned by RunJobFlow and can also be obtained from
|
|
296
|
+
# DescribeJobFlows .
|
|
297
|
+
# * +:termination_protected+ - *required* - (Boolean) A Boolean that
|
|
298
|
+
# indicates whether to protect the job flow and prevent the Amazon
|
|
299
|
+
# EC2 instances in the cluster from shutting down due to API calls,
|
|
300
|
+
# user intervention, or job-flow error.
|
|
301
|
+
# @return [Core::Response]
|
|
302
|
+
|
|
303
|
+
# @!method set_visible_to_all_users(options = {})
|
|
304
|
+
# Calls the SetVisibleToAllUsers API operation.
|
|
305
|
+
# @param [Hash] options
|
|
306
|
+
# * +:job_flow_ids+ - *required* - (Array<String>) Identifiers of the
|
|
307
|
+
# job flows to receive the new visibility setting.
|
|
308
|
+
# * +:visible_to_all_users+ - *required* - (Boolean) Whether the
|
|
309
|
+
# specified job flows are visible to all IAM users of the AWS account
|
|
310
|
+
# associated with the job flow. If this value is set to True, all IAM
|
|
311
|
+
# users of that AWS account can view and, if they have the proper IAM
|
|
312
|
+
# policy permissions set, manage the job flows. If it is set to
|
|
313
|
+
# False, only the IAM user that created a job flow can view and
|
|
314
|
+
# manage it.
|
|
315
|
+
# @return [Core::Response]
|
|
316
|
+
|
|
317
|
+
# @!method terminate_job_flows(options = {})
|
|
318
|
+
# Calls the TerminateJobFlows API operation.
|
|
319
|
+
# @param [Hash] options
|
|
320
|
+
# * +:job_flow_ids+ - *required* - (Array<String>) A list of job flows
|
|
321
|
+
# to be shutdown.
|
|
322
|
+
# @return [Core::Response]
|
|
323
|
+
|
|
324
|
+
# end client methods #
|
|
325
|
+
|
|
326
|
+
define_client_methods('2009-03-31')
|
|
327
|
+
|
|
328
|
+
end
|
|
329
|
+
end
|
|
330
|
+
end
|