Skip to content

Configuration

This library uses library-config('github.com/cloudboss/unobin-library-aws//config') for per-alias settings. Pass a value to library-configs: in factory source, usually from a factory input so stack files can choose the environment-specific settings.

Example usage:

imports: {
  aws-iam: 'github.com/cloudboss/unobin-library-aws//service/iam'
}

inputs: {
  aws-config: {
    type:    library-config('github.com/cloudboss/unobin-library-aws//config')
    default: {}
  }
}

library-configs: {
  aws-iam: input.aws-config
}

Description

Configuration selects how a component reaches AWS. Every field is optional; an empty or nil Configuration means the SDK's default chain alone: env credentials, shared config and credentials files, SSO, web identity, container credentials, then IMDS. Static credential fields are deliberately absent; credentials enter through the chain, a profile, or role assumption.

Fields

region

optional(string)

profile

optional(string)

endpoint-url

optional(string)

endpoints

optional(object)
optional(
  object({
    s3: optional(string)
    sts: optional(string)
    kms: optional(string)
  })
)

max-attempts

optional(integer)

retry-mode

optional(string)

shared-config-files

optional(list(string))

shared-credentials-files

optional(list(string))

custom-ca-bundle

optional(string)

http-proxy

optional(string)

https-proxy

optional(string)

no-proxy

optional(string)

assume-role

optional(object)
optional(
  object({
    role-arn: string
    role-session-name: optional(string)
    external-id: optional(string)
    duration-seconds: optional(integer)
    policy: optional(string)
    policy-arns: optional(list(string))
    source-identity: optional(string)
    tags: optional(map(string))
    transitive-tag-keys: optional(list(string))
  })
)

assume-role-with-web-identity

optional(object)
optional(
  object({
    role-arn: string
    web-identity-token-file: string
    role-session-name: optional(string)
    duration-seconds: optional(integer)
    policy: optional(string)
    policy-arns: optional(list(string))
  })
)

Configuration Constraints

This library declares no configuration constraints.