Class DataTerraformRemoteStateS3Config.Jsii$Proxy

java.lang.Object
software.amazon.jsii.JsiiObject
com.hashicorp.cdktf.DataTerraformRemoteStateS3Config.Jsii$Proxy
All Implemented Interfaces:
DataTerraformRemoteStateConfig, DataTerraformRemoteStateS3Config, S3BackendConfig, software.amazon.jsii.JsiiSerializable
Enclosing interface:
DataTerraformRemoteStateS3Config

@Stability(Experimental) @Internal public static final class DataTerraformRemoteStateS3Config.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements DataTerraformRemoteStateS3Config
An implementation for DataTerraformRemoteStateS3Config
  • Constructor Details

    • Jsii$Proxy

      protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
      Constructor that initializes the object based on values retrieved from the JsiiObject.
      Parameters:
      objRef - Reference to the JSII managed object.
    • Jsii$Proxy

      protected Jsii$Proxy(DataTerraformRemoteStateS3Config.Builder builder)
      Constructor that initializes the object based on literal property values passed by the DataTerraformRemoteStateS3Config.Builder.
  • Method Details

    • getDefaults

      public final Map<String,Object> getDefaults()
      Specified by:
      getDefaults in interface DataTerraformRemoteStateConfig
    • getWorkspace

      public final String getWorkspace()
      Specified by:
      getWorkspace in interface DataTerraformRemoteStateConfig
    • getBucket

      public final String getBucket()
      Description copied from interface: S3BackendConfig
      (experimental) Name of the S3 Bucket.
      Specified by:
      getBucket in interface S3BackendConfig
    • getKey

      public final String getKey()
      Description copied from interface: S3BackendConfig
      (experimental) Path to the state file inside the S3 Bucket.

      When using a non-default workspace, the state path will be /workspace_key_prefix/workspace_name/key

      Specified by:
      getKey in interface S3BackendConfig
    • getAccessKey

      public final String getAccessKey()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) AWS access key.

      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).

      Specified by:
      getAccessKey in interface S3BackendConfig
    • getAcl

      public final String getAcl()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Canned ACL to be applied to the state file.
      Specified by:
      getAcl in interface S3BackendConfig
    • getAssumeRolePolicy

      public final String getAssumeRolePolicy()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) IAM Policy JSON describing further restricting permissions for the IAM Role being assumed.
      Specified by:
      getAssumeRolePolicy in interface S3BackendConfig
    • getAssumeRolePolicyArns

      public final List<String> getAssumeRolePolicyArns()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Set of Amazon Resource Names (ARNs) of IAM Policies describing further restricting permissions for the IAM Role being assumed.
      Specified by:
      getAssumeRolePolicyArns in interface S3BackendConfig
    • getAssumeRoleTags

      public final Map<String,String> getAssumeRoleTags()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Map of assume role session tags.
      Specified by:
      getAssumeRoleTags in interface S3BackendConfig
    • getAssumeRoleTransitiveTagKeys

      public final List<String> getAssumeRoleTransitiveTagKeys()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Set of assume role session tag keys to pass to any subsequent sessions.
      Specified by:
      getAssumeRoleTransitiveTagKeys in interface S3BackendConfig
    • getDynamodbEndpoint

      public final String getDynamodbEndpoint()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Custom endpoint for the AWS DynamoDB API.

      This can also be sourced from the AWS_DYNAMODB_ENDPOINT environment variable.

      Specified by:
      getDynamodbEndpoint in interface S3BackendConfig
    • getDynamodbTable

      public final String getDynamodbTable()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Name of DynamoDB Table to use for state locking and consistency.

      The table must have a partition key named LockID with type of String. If not configured, state locking will be disabled.

      Specified by:
      getDynamodbTable in interface S3BackendConfig
    • getEncrypt

      public final Boolean getEncrypt()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Enable server side encryption of the state file.
      Specified by:
      getEncrypt in interface S3BackendConfig
    • getEndpoint

      public final String getEndpoint()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Custom endpoint for the AWS S3 API.

      This can also be sourced from the AWS_S3_ENDPOINT environment variable.

      Specified by:
      getEndpoint in interface S3BackendConfig
    • getExternalId

      public final String getExternalId()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) External identifier to use when assuming the role.
      Specified by:
      getExternalId in interface S3BackendConfig
    • getForcePathStyle

      public final Boolean getForcePathStyle()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Enable path-style S3 URLs (https:/// instead of https://.).
      Specified by:
      getForcePathStyle in interface S3BackendConfig
    • getIamEndpoint

      public final String getIamEndpoint()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Custom endpoint for the AWS Identity and Access Management (IAM) API.

      This can also be sourced from the AWS_IAM_ENDPOINT environment variable.

      Specified by:
      getIamEndpoint in interface S3BackendConfig
    • getKmsKeyId

      public final String getKmsKeyId()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Amazon Resource Name (ARN) of a Key Management Service (KMS) Key to use for encrypting the state.

      Note that if this value is specified, Terraform will need kms:Encrypt, kms:Decrypt and kms:GenerateDataKey permissions on this KMS key.

      Specified by:
      getKmsKeyId in interface S3BackendConfig
    • getMaxRetries

      public final Number getMaxRetries()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) The maximum number of times an AWS API request is retried on retryable failure.

      Defaults to 5.

      Specified by:
      getMaxRetries in interface S3BackendConfig
    • getProfile

      public final String getProfile()
      Description copied from interface: S3BackendConfig
      (experimental) (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.
      Specified by:
      getProfile in interface S3BackendConfig
    • getRegion

      public final String getRegion()
      Description copied from interface: S3BackendConfig
      (experimental) AWS Region of the S3 Bucket and DynamoDB Table (if used).

      This can also be sourced from the AWS_DEFAULT_REGION and AWS_REGION environment variables.

      Specified by:
      getRegion in interface S3BackendConfig
    • getRoleArn

      public final String getRoleArn()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Amazon Resource Name (ARN) of the IAM Role to assume.
      Specified by:
      getRoleArn in interface S3BackendConfig
    • getSecretKey

      public final String getSecretKey()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) AWS secret access key.

      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)

      Specified by:
      getSecretKey in interface S3BackendConfig
    • getSessionName

      public final String getSessionName()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Session name to use when assuming the role.
      Specified by:
      getSessionName in interface S3BackendConfig
    • getSharedCredentialsFile

      public final String getSharedCredentialsFile()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Path to the AWS shared credentials file.

      Defaults to ~/.aws/credentials.

      Specified by:
      getSharedCredentialsFile in interface S3BackendConfig
    • getSkipCredentialsValidation

      public final Boolean getSkipCredentialsValidation()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Skip credentials validation via the STS API.
      Specified by:
      getSkipCredentialsValidation in interface S3BackendConfig
    • getSkipMetadataApiCheck

      public final Boolean getSkipMetadataApiCheck()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Skip usage of EC2 Metadata API.
      Specified by:
      getSkipMetadataApiCheck in interface S3BackendConfig
    • getSkipRegionValidation

      public final Boolean getSkipRegionValidation()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Skip validation of provided region name.
      Specified by:
      getSkipRegionValidation in interface S3BackendConfig
    • getSseCustomerKey

      public final String getSseCustomerKey()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) The key to use for encrypting state with Server-Side Encryption with Customer-Provided Keys (SSE-C).

      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.

      Specified by:
      getSseCustomerKey in interface S3BackendConfig
    • getStsEndpoint

      public final String getStsEndpoint()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Custom endpoint for the AWS Security Token Service (STS) API.

      This can also be sourced from the AWS_STS_ENDPOINT environment variable.

      Specified by:
      getStsEndpoint in interface S3BackendConfig
    • getToken

      public final String getToken()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Multi-Factor Authentication (MFA) token.

      This can also be sourced from the AWS_SESSION_TOKEN environment variable.

      Specified by:
      getToken in interface S3BackendConfig
    • getWorkspaceKeyPrefix

      public final String getWorkspaceKeyPrefix()
      Description copied from interface: S3BackendConfig
      (experimental) (Optional) Prefix applied to the state path inside the bucket.

      This is only relevant when using a non-default workspace. Defaults to env:

      Specified by:
      getWorkspaceKeyPrefix in interface S3BackendConfig
    • $jsii$toJson

      @Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
      Specified by:
      $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object