Sha256: e94473eabcd80e106d6ba85d238da778492570525f021075a2dfcaae18b915d9
Contents?: true
Size: 1.24 KB
Versions: 3
Compression:
Stored size: 1.24 KB
Contents
require_relative "includes" module AwsAssumeRole module Types Dry = Dry::Types.module ::Dry::Types.register_class(::Aws::Credentials) AwsAssumeRole::Types::Credentials = ::Dry::Types["aws.credentials"] ACCESS_KEY_REGEX = /[\w]+/ ACCESS_KEY_VALIDATOR = proc { filled? & str? & format?(ACCESS_KEY_REGEX) & min_size?(16) & max_size?(32) } ARN_REGEX = %r{arn:[\w+=\/,.@-]+:[\w+=\/,.@-]+:[\w+=\/,.@-]*:[0-9]+:[\w+=,.@-]+(\/[\w+=\/,.@-]+)*} EXTERNAL_ID_REGEX = %r{[\w+=,.@:\/-]*} MFA_REGEX = %r{arn:aws:iam::[0-9]+:mfa\/([\w+=,.@-]+)*|automatic} REGION_REGEX = /^(us|eu|ap|sa|ca)\-\w+\-\d+$|^cn\-\w+\-\d+$|^us\-gov\-\w+\-\d+$/ REGION_VALIDATOR = proc { filled? & str? & format?(REGION_REGEX) } ROLE_REGEX = %r{arn:aws:iam::[0-9]+:role\/([\w+=,.@-]+)*} ROLE_SESSION_NAME_REGEX = /[\w+=,.@-]*/ SECRET_ACCESS_KEY_REGEX = // SECRET_ACCESS_KEY_VALIDATOR = proc { filled? & str? & format?(SECRET_ACCESS_KEY_REGEX) } AwsAssumeRole::Types::Region = Dry::Strict::String.constrained( format: REGION_REGEX, ) AwsAssumeRole::Types::MfaSerial = Dry::Strict::String.constrained( format: MFA_REGEX, ) end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
aws_assume_role-0.2.2 | lib/aws_assume_role/types.rb |
aws_assume_role-0.2.0 | lib/aws_assume_role/types.rb |
aws_assume_role-0.1.2 | lib/aws_assume_role/types.rb |