Modifier and Type | Method and Description |
---|---|
S3Backend.Builder |
accessKey(String accessKey)
(experimental) (Optional) AWS access key.
|
S3Backend.Builder |
acl(String acl)
(experimental) (Optional) Canned ACL to be applied to the state file.
|
S3Backend.Builder |
assumeRolePolicy(String assumeRolePolicy)
(experimental) (Optional) IAM Policy JSON describing further restricting permissions for the IAM Role being assumed.
|
S3Backend.Builder |
assumeRolePolicyArns(List<String> assumeRolePolicyArns)
(experimental) (Optional) Set of Amazon Resource Names (ARNs) of IAM Policies describing further restricting permissions for the IAM Role being assumed.
|
S3Backend.Builder |
assumeRoleTags(Map<String,String> assumeRoleTags)
(experimental) (Optional) Map of assume role session tags.
|
S3Backend.Builder |
assumeRoleTransitiveTagKeys(List<String> assumeRoleTransitiveTagKeys)
(experimental) (Optional) Set of assume role session tag keys to pass to any subsequent sessions.
|
S3Backend.Builder |
bucket(String bucket)
(experimental) Name of the S3 Bucket.
|
S3Backend |
build() |
static S3Backend.Builder |
create(software.constructs.Construct scope) |
S3Backend.Builder |
dynamodbEndpoint(String dynamodbEndpoint)
(experimental) (Optional) Custom endpoint for the AWS DynamoDB API.
|
S3Backend.Builder |
dynamodbTable(String dynamodbTable)
(experimental) (Optional) Name of DynamoDB Table to use for state locking and consistency.
|
S3Backend.Builder |
encrypt(Boolean encrypt)
(experimental) (Optional) Enable server side encryption of the state file.
|
S3Backend.Builder |
endpoint(String endpoint)
(experimental) (Optional) Custom endpoint for the AWS S3 API.
|
S3Backend.Builder |
externalId(String externalId)
(experimental) (Optional) External identifier to use when assuming the role.
|
S3Backend.Builder |
forcePathStyle(Boolean forcePathStyle)
(experimental) (Optional) Enable path-style S3 URLs (https://
|
S3Backend.Builder |
iamEndpoint(String iamEndpoint)
(experimental) (Optional) Custom endpoint for the AWS Identity and Access Management (IAM) API.
|
S3Backend.Builder |
key(String key)
(experimental) Path to the state file inside the S3 Bucket.
|
S3Backend.Builder |
kmsKeyId(String kmsKeyId)
(experimental) (Optional) Amazon Resource Name (ARN) of a Key Management Service (KMS) Key to use for encrypting the state.
|
S3Backend.Builder |
maxRetries(Number maxRetries)
(experimental) (Optional) The maximum number of times an AWS API request is retried on retryable failure.
|
S3Backend.Builder |
profile(String profile)
(experimental) (Optional) Name of AWS profile in AWS shared credentials file (e.g.
|
S3Backend.Builder |
region(String region)
(experimental) AWS Region of the S3 Bucket and DynamoDB Table (if used).
|
S3Backend.Builder |
roleArn(String roleArn)
(experimental) (Optional) Amazon Resource Name (ARN) of the IAM Role to assume.
|
S3Backend.Builder |
secretKey(String secretKey)
(experimental) (Optional) AWS secret access key.
|
S3Backend.Builder |
sessionName(String sessionName)
(experimental) (Optional) Session name to use when assuming the role.
|
S3Backend.Builder |
sharedCredentialsFile(String sharedCredentialsFile)
(experimental) (Optional) Path to the AWS shared credentials file.
|
S3Backend.Builder |
skipCredentialsValidation(Boolean skipCredentialsValidation)
(experimental) (Optional) Skip credentials validation via the STS API.
|
S3Backend.Builder |
skipMetadataApiCheck(Boolean skipMetadataApiCheck)
(experimental) (Optional) Skip usage of EC2 Metadata API.
|
S3Backend.Builder |
skipRegionValidation(Boolean skipRegionValidation)
(experimental) (Optional) Skip validation of provided region name.
|
S3Backend.Builder |
sseCustomerKey(String sseCustomerKey)
(experimental) (Optional) The key to use for encrypting state with Server-Side Encryption with Customer-Provided Keys (SSE-C).
|
S3Backend.Builder |
stsEndpoint(String stsEndpoint)
(experimental) (Optional) Custom endpoint for the AWS Security Token Service (STS) API.
|
S3Backend.Builder |
token(String token)
(experimental) (Optional) Multi-Factor Authentication (MFA) token.
|
S3Backend.Builder |
workspaceKeyPrefix(String workspaceKeyPrefix)
(experimental) (Optional) Prefix applied to the state path inside the bucket.
|
@Stability(value=Experimental) public static S3Backend.Builder create(software.constructs.Construct scope)
scope
- This parameter is required.S3Backend.Builder
.@Stability(value=Experimental) public S3Backend.Builder bucket(String bucket)
bucket
- Name of the S3 Bucket. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder key(String key)
When using a non-default workspace, the state path will be /workspace_key_prefix/workspace_name/key
key
- Path to the state file inside the S3 Bucket. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder accessKey(String accessKey)
If configured, must also configure secret_key. This can also be sourced from the AWS_ACCESS_KEY_ID environment variable, AWS shared credentials file (e.g. ~/.aws/credentials), or AWS shared configuration file (e.g. ~/.aws/config).
accessKey
- (Optional) AWS access key. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder acl(String acl)
acl
- (Optional) Canned ACL to be applied to the state file. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder assumeRolePolicy(String assumeRolePolicy)
assumeRolePolicy
- (Optional) IAM Policy JSON describing further restricting permissions for the IAM Role being assumed. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder assumeRolePolicyArns(List<String> assumeRolePolicyArns)
assumeRolePolicyArns
- (Optional) Set of Amazon Resource Names (ARNs) of IAM Policies describing further restricting permissions for the IAM Role being assumed. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder assumeRoleTags(Map<String,String> assumeRoleTags)
assumeRoleTags
- (Optional) Map of assume role session tags. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder assumeRoleTransitiveTagKeys(List<String> assumeRoleTransitiveTagKeys)
assumeRoleTransitiveTagKeys
- (Optional) Set of assume role session tag keys to pass to any subsequent sessions. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder dynamodbEndpoint(String dynamodbEndpoint)
This can also be sourced from the AWS_DYNAMODB_ENDPOINT environment variable.
dynamodbEndpoint
- (Optional) Custom endpoint for the AWS DynamoDB API. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder dynamodbTable(String dynamodbTable)
The table must have a partition key named LockID with type of String. If not configured, state locking will be disabled.
dynamodbTable
- (Optional) Name of DynamoDB Table to use for state locking and consistency. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder encrypt(Boolean encrypt)
encrypt
- (Optional) Enable server side encryption of the state file. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder endpoint(String endpoint)
This can also be sourced from the AWS_S3_ENDPOINT environment variable.
endpoint
- (Optional) Custom endpoint for the AWS S3 API. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder externalId(String externalId)
externalId
- (Optional) External identifier to use when assuming the role. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder forcePathStyle(Boolean forcePathStyle)
forcePathStyle
- (Optional) Enable path-style S3 URLs (https://this
@Stability(value=Experimental) public S3Backend.Builder iamEndpoint(String iamEndpoint)
This can also be sourced from the AWS_IAM_ENDPOINT environment variable.
iamEndpoint
- (Optional) Custom endpoint for the AWS Identity and Access Management (IAM) API. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder kmsKeyId(String kmsKeyId)
Note that if this value is specified, Terraform will need kms:Encrypt, kms:Decrypt and kms:GenerateDataKey permissions on this KMS key.
kmsKeyId
- (Optional) Amazon Resource Name (ARN) of a Key Management Service (KMS) Key to use for encrypting the state. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder maxRetries(Number maxRetries)
Defaults to 5.
maxRetries
- (Optional) The maximum number of times an AWS API request is retried on retryable failure. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder profile(String profile)
profile
- (Optional) Name of AWS profile in AWS shared credentials file (e.g. ~/.aws/credentials) or AWS shared configuration file (e.g. ~/.aws/config) to use for credentials and/or configuration. This can also be sourced from the AWS_PROFILE environment variable. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder region(String region)
This can also be sourced from the AWS_DEFAULT_REGION and AWS_REGION environment variables.
region
- AWS Region of the S3 Bucket and DynamoDB Table (if used). This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder roleArn(String roleArn)
roleArn
- (Optional) Amazon Resource Name (ARN) of the IAM Role to assume. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder secretKey(String secretKey)
If configured, must also configure access_key. This can also be sourced from the AWS_SECRET_ACCESS_KEY environment variable, AWS shared credentials file (e.g. ~/.aws/credentials), or AWS shared configuration file (e.g. ~/.aws/config)
secretKey
- (Optional) AWS secret access key. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder sessionName(String sessionName)
sessionName
- (Optional) Session name to use when assuming the role. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder sharedCredentialsFile(String sharedCredentialsFile)
Defaults to ~/.aws/credentials.
sharedCredentialsFile
- (Optional) Path to the AWS shared credentials file. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder skipCredentialsValidation(Boolean skipCredentialsValidation)
skipCredentialsValidation
- (Optional) Skip credentials validation via the STS API. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder skipMetadataApiCheck(Boolean skipMetadataApiCheck)
skipMetadataApiCheck
- (Optional) Skip usage of EC2 Metadata API. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder skipRegionValidation(Boolean skipRegionValidation)
skipRegionValidation
- (Optional) Skip validation of provided region name. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder sseCustomerKey(String sseCustomerKey)
This is the base64-encoded value of the key, which must decode to 256 bits. This can also be sourced from the AWS_SSE_CUSTOMER_KEY environment variable, which is recommended due to the sensitivity of the value. Setting it inside a terraform file will cause it to be persisted to disk in terraform.tfstate.
sseCustomerKey
- (Optional) The key to use for encrypting state with Server-Side Encryption with Customer-Provided Keys (SSE-C). This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder stsEndpoint(String stsEndpoint)
This can also be sourced from the AWS_STS_ENDPOINT environment variable.
stsEndpoint
- (Optional) Custom endpoint for the AWS Security Token Service (STS) API. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder token(String token)
This can also be sourced from the AWS_SESSION_TOKEN environment variable.
token
- (Optional) Multi-Factor Authentication (MFA) token. This parameter is required.this
@Stability(value=Experimental) public S3Backend.Builder workspaceKeyPrefix(String workspaceKeyPrefix)
This is only relevant when using a non-default workspace. Defaults to env:
workspaceKeyPrefix
- (Optional) Prefix applied to the state path inside the bucket. This parameter is required.this
Copyright © 2023. All rights reserved.