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-rds: 'github.com/cloudboss/unobin-library-aws//service/rds'
}
inputs: {
aws-config: {
type: library-config('github.com/cloudboss/unobin-library-aws//config')
default: {}
}
}
library-configs: {
aws-rds: 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.