Sha256: a8d97d6df32ee51bc433586df5a68d3262a214ff32c57631cf90c9c92734db81

Contents?: true

Size: 1.25 KB

Versions: 6

Compression:

Stored size: 1.25 KB

Contents

require "aws-sdk-apigateway"
require "aws-sdk-cloudformation"
require "aws-sdk-cloudwatchlogs"
require "aws-sdk-dynamodb"
require "aws-sdk-lambda"
require "aws-sdk-s3"
require "aws-sdk-sts"
# Not used in Jets internally but convenient for shared resources
require "aws-sdk-sns"
require "aws-sdk-sqs"

module Jets::AwsServices
  autoload :GlobalMemoist, 'jets/aws_services/global_memoist'
  autoload :S3Bucket, 'jets/aws_services/s3_bucket'
  autoload :StackStatus, 'jets/aws_services/stack_status'

  include GlobalMemoist
  include StackStatus

  def apigateway
    Aws::APIGateway::Client.new
  end
  global_memoize :apigateway

  def cfn
    Aws::CloudFormation::Client.new
  end
  global_memoize :cfn

  def dynamodb
    Aws::DynamoDB::Client.new
  end
  global_memoize :dynamodb

  def aws_lambda
    Aws::Lambda::Client.new
  end
  global_memoize :aws_lambda

  def logs
    Aws::CloudWatchLogs::Client.new
  end
  global_memoize :logs

  def s3
    Aws::S3::Client.new
  end
  global_memoize :s3

  def s3_resource
    Aws::S3::Resource.new
  end
  global_memoize :s3_resource

  def sns
    Aws::SNS::Client.new
  end
  global_memoize :sns

  def sqs
    Aws::SQS::Client.new
  end
  global_memoize :sqs

  def sts
    Aws::STS::Client.new
  end
  global_memoize :sts
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
jets-1.9.7 lib/jets/aws_services.rb
jets-1.9.6 lib/jets/aws_services.rb
jets-1.9.5 lib/jets/aws_services.rb
jets-1.9.4 lib/jets/aws_services.rb
jets-1.9.3 lib/jets/aws_services.rb
jets-1.9.2 lib/jets/aws_services.rb