dynamodb

cloudposse/dynamodb/aws

Terraform Module HCL AWS

Terraform module that implements AWS DynamoDB with support for AutoScaling

Install
module "dynamodb" {
source = "cloudposse/dynamodb/aws"
version = "0.37.0"
}
plain text: /constructs/tfmod-cloudposse-dynamodb-aws/install.txt
⭐ Source on GitHub 📦 Registry page
README

Terraform module to provision a DynamoDB table with autoscaling. Autoscaler scales up/down the provisioned OPS for the DynamoDB table based on the load. Requirements This module requires AWS Provider >= 4.22.0 > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Usage For a complete example, see examples/complete. For automated tests of the complete example using bats and Terratest (which tests and deploys the example on AWS), see test. ```hcl module "dynamodb_table" { source = "cloudposse/dynamodb/aws" # Cloud Posse recommends pin

Inputs (48)
NameTypeDescriptionDefault
hash_keystringDynamoDB table Hash Key required
table_namestringTable name. If provided, the bucket will be created with this name instead of genull
billing_modestringDynamoDB Billing mode. Can be PROVISIONED or PAY_PER_REQUEST"PROVISIONED"
enable_streamsboolEnable DynamoDB streamsfalse
autoscaler_tagsmap(string)Additional resource tags for the autoscaler module{}
table_classstringDynamoDB storage class of the table. Can be STANDARD or STANDARD_INFREQUENT_ACCE"STANDARD"
stagestringID element. Usually used to indicate role, e.g. 'prod', 'staging', 'source', 'bunull
labels_as_tagsset(string)Set of labels (ID elements) to include as tags in the `tags` output. Default is [ "default" ]
label_value_casestringControls the letter case of ID elements (labels) as included in `id`, set as tagnull
label_key_casestringControls the letter case of the `tags` keys (label names) for tags generated by null
tags_enabledboolSet to `false` to disable tagging. This can be helpful if you're managing tablestrue
autoscale_min_read_capacitynumberDynamoDB autoscaling min read capacity5
autoscale_max_write_capacitynumberDynamoDB autoscaling max write capacity20
stream_view_typestringWhen an item in the table is modified, what information is written to the stream""
ttl_enabledboolSet to false to disable DynamoDB table TTLtrue
autoscaler_attributeslist(string)Additional attributes for the autoscaler module[]
namespacestringID element. Usually an abbreviation of your organization name, e.g. 'eg' or 'cp'null
delimiterstringDelimiter to be used between ID elements. Defaults to `-` (hyphen). Set to `""` null
autoscale_read_targetnumberThe target value (in %) for DynamoDB read autoscaling50
import_tableobject({ # Valid values arImport Amazon S3 data into a new table.null
label_orderlist(string)The order in which the labels (ID elements) appear in the `id`. Defaults to ["nanull
… and 8 more inputs
Outputs (7)
table_stream_arn — DynamoDB table stream ARN
table_stream_label — DynamoDB table stream label
table_name — DynamoDB table name
table_id — DynamoDB table ID
table_arn — DynamoDB table ARN
global_secondary_index_names — DynamoDB secondary index names
local_secondary_index_names — DynamoDB local index names
Resources (2)
aws_dynamodb_tablenull_resource
Details
FrameworkTerraform Module
LanguageHCL
Version0.37.0
Cloud AWS
★ Stars89
Forks108
Total downloads2.1M
Inputs48
Outputs7
Resources2
Examples1
LicenseApache-2.0
Namespacecloudposse
Updated