class BetterSqs::Configuration

Provides configuration management for the BetterSqs gem

Attributes

aws_access_key_id[RW]
aws_secret_access_key[RW]
queue_name[RW]
region[RW]
sqs_message_deferral_seconds[RW]

Public Class Methods

new() click to toggle source
# File lib/better_sqs/configuration.rb, line 10
def initialize
  @sqs_message_deferral_seconds = 60
  @aws_access_key_id      = ENV["AWS_ACCESS_KEY_ID"]
  @aws_secret_access_key  = ENV["AWS_SECRET_ACCESS_KEY"]
  @region                 = ENV["AWS_REGION"] || "us-east-1"
end

Public Instance Methods

configure_aws() click to toggle source
# File lib/better_sqs/configuration.rb, line 17
def configure_aws
  return configure_region_only unless aws_secret_access_key && aws_access_key_id
  Aws.config.update(
    region:      region,
    credentials: Aws::Credentials.new(aws_access_key_id, aws_secret_access_key),
  )
end

Private Instance Methods

configure_region_only() click to toggle source
# File lib/better_sqs/configuration.rb, line 27
def configure_region_only
  Aws.config.update(region: region)
end