The code examples in this topic show you how to use the AWS SDK for Ruby Version 3.
The AWS SDK for Ruby Version 3 provides a Ruby API for AWS infrastructure services. Using the SDK, you can build applications on top of Amazon S3, Amazon EC2, Amazon DynamoDB, and more.
-
Single-service actions - Code examples that show you how to call individual service functions.
-
Single-service scenarios - Code examples that show you how to accomplish a specific task by calling multiple functions within the same service.
-
Cross-service examples - Sample applications that work across multiple AWS services.
Single-service actions and scenarios are organized by AWS service in the example_code folder. A README in each folder lists and describes how to run the examples.
There are currently no cross-service examples for the AWS SDK for Ruby. To request a cross-service example, create an issue in the AWS SDK Code Examples repo.
- Running this code might result in charges to your AWS account.
- Running the tests might result in charges to your AWS account.
- We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see Grant least privilege.
- This code is not tested in every AWS Region. For more information, see AWS Regional Services.
To begin, you must set up an AWS account and configure credentials locally.
To resolve Ruby-specific dependencies, you must start a command line session and navigate to this directory.
This code is tested using version 3.1.2.
You can check your Ruby version by using the following command:
ruby -v
For more information about managing multiple Ruby versions in your local environment, see the Ruby install docs.
To resolve the dependencies declared in the Gemfile, run the following commands from this /ruby
directory:
gem install bundler
bundle install
To use a different Ruby version, modify or remove ruby "3.1.2"
from the Gemfile.
We rely on rubocop to keep this code consistently formatted and styled. To contribute Ruby code to this project, please refer to the following installation and usage steps.
We run Rubocop using a custom configuration file against any changed file or directory. See the Ruby Github Action workflow for details.
To invoke Rubocop yourself, first install it with gem install rubocop
.
Next, run:
rubocop --config .github/linters/.ruby-lint.yml path/to/ruby/file_or_directory
To lint all Ruby files in the current directory and its subdirectories, run:
rubocop --config .github/linters/.ruby-lint.yml .
Note: Running the tests might result in charges to your AWS account.
All tests use RSpec, and you can find them in the spec
folder for each example. Please check the README for each service or cross-service example for any additional requirements to run tests.
Note: Running the tests might result in charges to your AWS account.
The unit tests in this module use stubbed responses from AWS SDK for Ruby. This means that when the unit tests are run, requests are not sent to AWS, mocked responses are returned, and no charges are incurred on your account.
Run unit tests in the folder for each service or cross-service example at a command
prompt by including the ~integ
tag.
rspec --tag ~integ
Note: Running the tests might result in charges to your AWS account.
The integration tests in this module make actual requests to AWS. This means that when the integration tests are run, they can create and destroy resources in your account. These tests might also incur charges. Proceed with caution.
Run integration tests in the folder for each service or cross-service example at a
command prompt by including the integ
tag.
rspec --tag integ
This example code will soon be available in a container image hosted on Amazon Elastic Container Registry (ECR). This image will be pre-loaded with all Ruby examples with dependencies pre-resolved, allowing you to explore these examples in an isolated environment.
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0