Module: Aws
- Defined in:
- lib/aws-sdk-core.rb,
lib/aws-sdk-core/s3.rb,
lib/aws-sdk-core/rds.rb,
lib/aws-sdk-core/json.rb,
lib/aws-sdk-core/pager.rb,
lib/aws-sdk-core/polly.rb,
lib/aws-sdk-core/client.rb,
lib/aws-sdk-core/errors.rb,
lib/aws-sdk-core/service.rb,
lib/aws-sdk-core/version.rb,
lib/aws-sdk-core/dynamodb.rb,
lib/aws-sdk-core/checksums.rb,
lib/aws-sdk-core/structure.rb,
lib/aws-sdk-core/tree_hash.rb,
lib/aws-sdk-core/cloudfront.rb,
lib/aws-sdk-core/ini_parser.rb,
lib/aws-sdk-core/partitions.rb,
lib/aws-sdk-core/signers/s3.rb,
lib/aws-sdk-core/signers/v2.rb,
lib/aws-sdk-core/signers/v3.rb,
lib/aws-sdk-core/signers/v4.rb,
lib/aws-sdk-core/xml/parser.rb,
lib/aws-sdk-core/api/builder.rb,
lib/aws-sdk-core/credentials.rb,
lib/aws-sdk-core/json/parser.rb,
lib/aws-sdk-core/query/param.rb,
lib/aws-sdk-core/xml/builder.rb,
lib/aws-sdk-core/client_stubs.rb,
lib/aws-sdk-core/deprecations.rb,
lib/aws-sdk-core/eager_loader.rb,
lib/aws-sdk-core/json/builder.rb,
lib/aws-sdk-core/json/handler.rb,
lib/aws-sdk-core/rest/handler.rb,
lib/aws-sdk-core/s3/presigner.rb,
lib/aws-sdk-core/signers/base.rb,
lib/aws-sdk-core/type_builder.rb,
lib/aws-sdk-core/api/shape_map.rb,
lib/aws-sdk-core/log/formatter.rb,
lib/aws-sdk-core/query/handler.rb,
lib/aws-sdk-core/shared_config.rb,
lib/aws-sdk-core/api/docs/utils.rb,
lib/aws-sdk-core/client_waiters.rb,
lib/aws-sdk-core/json/oj_engine.rb,
lib/aws-sdk-core/waiters/errors.rb,
lib/aws-sdk-core/waiters/poller.rb,
lib/aws-sdk-core/waiters/waiter.rb,
lib/aws-sdk-core/ecs_credentials.rb,
lib/aws-sdk-core/empty_structure.rb,
lib/aws-sdk-core/param_converter.rb,
lib/aws-sdk-core/param_validator.rb,
lib/aws-sdk-core/plugins/logging.rb,
lib/aws-sdk-core/plugins/s3_md5s.rb,
lib/aws-sdk-core/polly/presigner.rb,
lib/aws-sdk-core/xml/default_map.rb,
lib/aws-sdk-core/xml/doc_builder.rb,
lib/aws-sdk-core/api/docs/builder.rb,
lib/aws-sdk-core/json/json_engine.rb,
lib/aws-sdk-core/log/param_filter.rb,
lib/aws-sdk-core/plugins/sqs_md5s.rb,
lib/aws-sdk-core/query/param_list.rb,
lib/aws-sdk-core/waiters/provider.rb,
lib/aws-sdk-core/xml/default_list.rb,
lib/aws-sdk-core/xml/parser/frame.rb,
lib/aws-sdk-core/xml/parser/stack.rb,
lib/aws-sdk-core/cloudfront/signer.rb,
lib/aws-sdk-core/endpoint_provider.rb,
lib/aws-sdk-core/pageable_response.rb,
lib/aws-sdk-core/partitions/region.rb,
lib/aws-sdk-core/rest/request/body.rb,
lib/aws-sdk-core/xml/error_handler.rb,
lib/aws-sdk-core/api/customizations.rb,
lib/aws-sdk-core/api/docs/crosslink.rb,
lib/aws-sdk-core/json/error_handler.rb,
lib/aws-sdk-core/partitions/service.rb,
lib/aws-sdk-core/plugins/s3_host_id.rb,
lib/aws-sdk-core/plugins/s3_sse_cpk.rb,
lib/aws-sdk-core/plugins/user_agent.rb,
lib/aws-sdk-core/rest/response/body.rb,
lib/aws-sdk-core/shared_credentials.rb,
lib/aws-sdk-core/stubbing/stub_data.rb,
lib/aws-sdk-core/stubbing/xml_error.rb,
lib/aws-sdk-core/credential_provider.rb,
lib/aws-sdk-core/log/param_formatter.rb,
lib/aws-sdk-core/query/param_builder.rb,
lib/aws-sdk-core/stubbing/empty_stub.rb,
lib/aws-sdk-core/partitions/partition.rb,
lib/aws-sdk-core/plugins/retry_errors.rb,
lib/aws-sdk-core/plugins/s3_dualstack.rb,
lib/aws-sdk-core/plugins/s3_redirects.rb,
lib/aws-sdk-core/rest/request/builder.rb,
lib/aws-sdk-core/rest/request/headers.rb,
lib/aws-sdk-core/rest/response/parser.rb,
lib/aws-sdk-core/cloudfront/url_signer.rb,
lib/aws-sdk-core/plugins/protocols/ec2.rb,
lib/aws-sdk-core/plugins/s3_accelerate.rb,
lib/aws-sdk-core/plugins/s3_bucket_dns.rb,
lib/aws-sdk-core/rest/request/endpoint.rb,
lib/aws-sdk-core/rest/response/headers.rb,
lib/aws-sdk-core/waiters/null_provider.rb,
lib/aws-sdk-core/xml/parser/engines/ox.rb,
lib/aws-sdk-core/plugins/request_signer.rb,
lib/aws-sdk-core/plugins/sqs_queue_urls.rb,
lib/aws-sdk-core/plugins/stub_responses.rb,
lib/aws-sdk-core/refreshing_credentials.rb,
lib/aws-sdk-core/s3/bucket_region_cache.rb,
lib/aws-sdk-core/stubbing/protocols/ec2.rb,
lib/aws-sdk-core/xml/parser/engines/oga.rb,
lib/aws-sdk-core/api/docs/shared_example.rb,
lib/aws-sdk-core/assume_role_credentials.rb,
lib/aws-sdk-core/plugins/param_converter.rb,
lib/aws-sdk-core/plugins/param_validator.rb,
lib/aws-sdk-core/plugins/protocols/query.rb,
lib/aws-sdk-core/plugins/response_paging.rb,
lib/aws-sdk-core/plugins/route_53_id_fix.rb,
lib/aws-sdk-core/query/ec2_param_builder.rb,
lib/aws-sdk-core/stubbing/protocols/json.rb,
lib/aws-sdk-core/stubbing/protocols/rest.rb,
lib/aws-sdk-core/api/docs/param_formatter.rb,
lib/aws-sdk-core/cloudfront/cookie_signer.rb,
lib/aws-sdk-core/dynamodb/attribute_value.rb,
lib/aws-sdk-core/rds/auth_token_generator.rb,
lib/aws-sdk-core/stubbing/data_applicator.rb,
lib/aws-sdk-core/stubbing/protocols/query.rb,
lib/aws-sdk-core/xml/parser/engines/rexml.rb,
lib/aws-sdk-core/xml/parser/parsing_error.rb,
lib/aws-sdk-core/credential_provider_chain.rb,
lib/aws-sdk-core/partitions/partition_list.rb,
lib/aws-sdk-core/plugins/glacier_checksums.rb,
lib/aws-sdk-core/plugins/idempotency_token.rb,
lib/aws-sdk-core/plugins/regional_endpoint.rb,
lib/aws-sdk-core/plugins/s3_request_signer.rb,
lib/aws-sdk-core/plugins/swf_read_timeouts.rb,
lib/aws-sdk-core/rest/response/status_code.rb,
lib/aws-sdk-core/xml/parser/engines/libxml.rb,
lib/aws-sdk-core/plugins/api_gateway_header.rb,
lib/aws-sdk-core/plugins/csd_switch_to_post.rb,
lib/aws-sdk-core/plugins/glacier_account_id.rb,
lib/aws-sdk-core/plugins/protocols/json_rpc.rb,
lib/aws-sdk-core/plugins/protocols/rest_xml.rb,
lib/aws-sdk-core/plugins/s3_http_200_errors.rb,
lib/aws-sdk-core/api/docs/docstring_provider.rb,
lib/aws-sdk-core/plugins/glacier_api_version.rb,
lib/aws-sdk-core/plugins/jsonvalue_converter.rb,
lib/aws-sdk-core/plugins/protocols/rest_json.rb,
lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb,
lib/aws-sdk-core/stubbing/protocols/rest_xml.rb,
lib/aws-sdk-core/xml/parser/engines/nokogiri.rb,
lib/aws-sdk-core/instance_profile_credentials.rb,
lib/aws-sdk-core/plugins/global_configuration.rb,
lib/aws-sdk-core/stubbing/protocols/rest_json.rb,
lib/aws-sdk-core/api/docs/operation_documenter.rb,
lib/aws-sdk-core/plugins/ec2_region_validation.rb,
lib/aws-sdk-core/plugins/helpful_socket_errors.rb,
lib/aws-sdk-core/plugins/s3_expect_100_continue.rb,
lib/aws-sdk-core/plugins/s3_location_constraint.rb,
lib/aws-sdk-core/api/docs/client_type_documenter.rb,
lib/aws-sdk-core/api/docs/request_syntax_example.rb,
lib/aws-sdk-core/plugins/csd_conditional_signing.rb,
lib/aws-sdk-core/plugins/rds_cross_region_copying.rb,
lib/aws-sdk-core/rest/request/querystring_builder.rb,
lib/aws-sdk-core/plugins/dynamodb_crc32_validation.rb,
lib/aws-sdk-core/plugins/dynamodb_extended_retries.rb,
lib/aws-sdk-core/plugins/dynamodb_simple_attributes.rb,
lib/aws-sdk-core/plugins/s3_get_bucket_location_fix.rb,
lib/aws-sdk-core/api/docs/response_structure_example.rb,
lib/aws-sdk-core/plugins/ec2_copy_encrypted_snapshot.rb,
lib/aws-sdk-core/plugins/s3_bucket_name_restrictions.rb,
lib/aws-sdk-core/plugins/machine_learning_predict_endpoint.rb
Defined Under Namespace
Modules: Api, Checksums, ClientStubs, ClientWaiters, CloudFront, CredentialProvider, Deprecations, DynamoDB, Errors, Json, Log, PageableResponse, Partitions, Plugins, Polly, Query, RDS, RefreshingCredentials, Rest, S3, Service, Signers, Stubbing, Waiters, Xml Classes: AssumeRoleCredentials, Client, CredentialProviderChain, Credentials, ECSCredentials, EagerLoader, EndpointProvider, IniParser, InstanceProfileCredentials, Pager, ParamConverter, ParamValidator, SharedConfig, SharedCredentials, Structure, TreeHash, TypeBuilder
Constant Summary collapse
- API_DIR =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
File.join(File.dirname(File.dirname(__FILE__)), 'apis')
- SERVICE_MODULE_NAMES =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
services
%w( ACM APIGateway AppStream ApplicationAutoScaling ApplicationDiscoveryService Athena AutoScaling Batch Budgets CloudDirectory CloudFormation CloudFront CloudHSM CloudSearch CloudSearchDomain CloudTrail CloudWatch CloudWatchEvents CloudWatchLogs CodeBuild CodeCommit CodeDeploy CodePipeline CodeStar CognitoIdentity CognitoIdentityProvider CognitoSync ConfigService CostandUsageReportService DAX DataPipeline DatabaseMigrationService DeviceFarm DirectConnect DirectoryService DynamoDB DynamoDBStreams EC2 ECR ECS EFS EMR ElastiCache ElasticBeanstalk ElasticLoadBalancing ElasticLoadBalancingV2 ElasticTranscoder ElasticsearchService Firehose GameLift Glacier Greengrass Health IAM ImportExport Inspector IoT IoTDataPlane KMS Kinesis KinesisAnalytics Lambda LambdaPreview Lex LexModelBuildingService Lightsail MTurk MachineLearning MarketplaceCommerceAnalytics MarketplaceEntitlementService MarketplaceMetering OpsWorks OpsWorksCM Organizations Pinpoint Polly RDS Redshift Rekognition ResourceGroupsTaggingAPI Route53 Route53Domains S3 SES SMS SNS SQS SSM STS SWF ServiceCatalog Shield SimpleDB Snowball States StorageGateway Support WAF WAFRegional WorkDocs WorkSpaces XRay )
- VERSION =
'2.10.23'
- EmptyStructure =
Class.new(Structure.new('AwsEmptyStructure'))
Class Attribute Summary collapse
-
.config ⇒ Hash
Returns a hash of default configuration options shared by all constructed clients.
Class Method Summary collapse
-
.add_service(svc_name, options = {}) ⇒ Module<Service>
Registers a new service.
-
.eager_autoload!(options = {}) ⇒ void
Loads modules that are normally loaded with Ruby’s ‘autoload`.
-
.empty_connection_pools! ⇒ nil
Close any long-lived connections maintained by the SDK’s internal connection pool.
-
.partition(partition_name) ⇒ Partitions::Partition
Return the partition with the given name.
-
.partitions ⇒ Array<Partitions::Partition>
Return an array of partitions.
-
.service_added(&block) ⇒ Object
private
Yields to the given block for each service that has already been defined via Aws.add_service.
- .shared_config ⇒ Object private
- .sub_modules(options = {}) ⇒ Object
-
.use_bundled_cert! ⇒ String
The SDK ships with a ca certificate bundle to use when verifying SSL peer certificates.
Class Attribute Details
.config ⇒ Hash
Returns a hash of default configuration options shared by all constructed clients.
330 331 332 |
# File 'lib/aws-sdk-core.rb', line 330 def config @config end |
Class Method Details
.add_service(svc_name, options = {}) ⇒ Module<Service>
500 501 502 503 504 505 506 507 508 |
# File 'lib/aws-sdk-core.rb', line 500 def add_service(svc_name, = {}) svc_module = Module.new { extend Service } const_set(svc_name, svc_module) @services[svc_name] = [svc_module, ] @service_added_callbacks.each do |callback| callback.call(svc_name.to_s, *@services[svc_name]) end svc_module end |
.eager_autoload!(options = {}) ⇒ void
This method returns an undefined value.
Loads modules that are normally loaded with Ruby’s ‘autoload`. This can avoid thread-safety issues that some Ruby versions have with `autoload`.
# loads ALL services
Aws.eager_autoload!
Loading all services can be slow. You can specify what services you want to load with the ‘:services` option. All services not named will continue to autoload as normal.
Aws.eager_autoload!(services: %w(S3 EC2))
447 448 449 450 451 452 453 454 455 |
# File 'lib/aws-sdk-core.rb', line 447 def eager_autoload!( = {}) eager_loader = EagerLoader.new eager_loader.load(JMESPath) eager_loader.load(Seahorse) sub_modules().each do |module_or_class| eager_loader.load(module_or_class) end eager_loader end |
.empty_connection_pools! ⇒ nil
Close any long-lived connections maintained by the SDK’s internal connection pool.
Applications that rely heavily on the ‘fork()` system call on POSIX systems should call this method in the child process directly after fork to ensure there are no race conditions between the parent process and its children for the pooled TCP connections.
Child processes that make multi-threaded calls to the SDK should block on this call before beginning work.
427 428 429 430 431 |
# File 'lib/aws-sdk-core.rb', line 427 def empty_connection_pools! Seahorse::Client::NetHttp::ConnectionPool.pools.each do |pool| pool.empty! end end |
.partition(partition_name) ⇒ Partitions::Partition
Return the partition with the given name. A partition describes the services and regions available in that partition.
aws = Aws.partition('aws')
puts "Regions available in the aws partition:\n"
aws.regions.each do |region|
puts region.name
end
puts "Services available in the aws partition:\n"
aws.services.each do |services|
puts services.name
end
See Partitions for more information and examples.
366 367 368 |
# File 'lib/aws-sdk-core.rb', line 366 def partition(partition_name) Partitions.default_list.partition(partition_name) end |
.partitions ⇒ Array<Partitions::Partition>
Return an array of partitions. A partition describes the services and regions available in that partition.
Aws.partitions.each do |partition|
puts "Regions available in #{partition.name}:\n"
partition.regions.each do |region|
puts region.name
end
puts "Services available in #{partition.name}:\n"
partition.services.each do |service|
puts service.name
end
end
See Partitions for more information and examples.
390 391 392 |
# File 'lib/aws-sdk-core.rb', line 390 def partitions Partitions.default_list.partitions end |
.service_added(&block) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Yields to the given block for each service that has already been defined via add_service. Also yields to the given block for each new service added after the callback is registered.
474 475 476 477 478 479 480 |
# File 'lib/aws-sdk-core.rb', line 474 def service_added(&block) callback = Proc.new @services.each do |svc_name, (svc_module, )| yield(svc_name, svc_module, ) end @service_added_callbacks << callback end |
.shared_config ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
323 324 325 326 |
# File 'lib/aws-sdk-core.rb', line 323 def shared_config enabled = ENV["AWS_SDK_CONFIG_OPT_OUT"] ? false : true @shared_config ||= SharedConfig.new(config_enabled: enabled) end |
.sub_modules(options = {}) ⇒ Object
457 458 459 460 461 462 463 464 465 466 467 468 |
# File 'lib/aws-sdk-core.rb', line 457 def sub_modules( = {}) constants = Aws.constants.map(&:to_s) if [:services] constants -= SERVICE_MODULE_NAMES constants += [:services] || SERVICE_MODULE_NAMES end constants.inject([]) do |modules, const_name| constant = Aws.const_get(const_name) modules << constant if Module === constant modules end end |
.use_bundled_cert! ⇒ String
The SDK ships with a ca certificate bundle to use when verifying SSL peer certificates. By default, this cert bundle is NOT used. The SDK will rely on the default cert available to OpenSSL. This ensures the cert provided by your OS is used.
For cases where the default cert is unavailable, e.g. Windows, you can call this method.
Aws.use_bundled_cert!
405 406 407 408 409 410 411 412 413 |
# File 'lib/aws-sdk-core.rb', line 405 def use_bundled_cert! config.delete(:ssl_ca_directory) config.delete(:ssl_ca_store) config[:ssl_ca_bundle] = File.(File.join( File.dirname(__FILE__), '..', 'ca-bundle.crt' )) end |