Sha256: f64fc820dc86faf42d83db5290475964a7b6b47829442ace7c45b9b4b9c2eead

Contents?: true

Size: 1.11 KB

Versions: 3

Compression:

Stored size: 1.11 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 :StackStatus, 'jets/aws_services/stack_status'
  autoload :S3Bucket, 'jets/aws_services/s3_bucket'

  include StackStatus
  extend Memoist

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

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

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

  def lambda
    Aws::Lambda::Client.new
  end
  memoize :lambda

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

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

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

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

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

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

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
jets-1.8.7 lib/jets/aws_services.rb
jets-1.8.6 lib/jets/aws_services.rb
jets-1.8.5 lib/jets/aws_services.rb