Module: AwsSigner::Configuration

Included in:
AwsSigner
Defined in:
lib/aws_signer/configuration.rb

Constant Summary collapse

REQUIRED_ATTRIBUTES =
[:upload_bucket, :secret_access_key, :access_key_id]
DEFAULT_S3_BASE_URL =

Default S3 Base URL

'https://s3.amazonaws.com'

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#access_key_idObject

AWS Access Key ID



17
18
19
# File 'lib/aws_signer/configuration.rb', line 17

def access_key_id
  @access_key_id
end

#s3_base_urlObject

Public: The S3 base url.



35
36
37
# File 'lib/aws_signer/configuration.rb', line 35

def s3_base_url
  @s3_base_url ||= DEFAULT_S3_BASE_URL
end

#secret_access_keyObject

AWS Secret Access Key



14
15
16
# File 'lib/aws_signer/configuration.rb', line 14

def secret_access_key
  @secret_access_key
end

#upload_bucketObject

Bucket to upload to



11
12
13
# File 'lib/aws_signer/configuration.rb', line 11

def upload_bucket
  @upload_bucket
end

Instance Method Details

#configure {|_self| ... } ⇒ Object

Public: Configuration object.

Example:

AwsSigner.configure do |configuration|
  configuration.upload_bucket = 'my-bucket'
  configuration.secret_access_key = 'SECRET'
  configuration.access_key_id = 'SECRET'
end

Yields self to be able to configure AwsSigner with block-style configuration.

Yields:

  • (_self)

Yield Parameters:



30
31
32
# File 'lib/aws_signer/configuration.rb', line 30

def configure
  yield self
end

#validate_configuration!Object

Public: Validate that all required configuration is present.



40
41
42
43
44
45
# File 'lib/aws_signer/configuration.rb', line 40

def validate_configuration!
  REQUIRED_ATTRIBUTES.any? do |required_attribute|
    required = send(required_attribute)
    fail AwsSigner::RequiredConfigurationError, required_attribute if required.nil? || required.empty?
  end
end