-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathvariables.tf
129 lines (110 loc) · 4.03 KB
/
variables.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
variable "attribute" {
description = "List of nested attribute definitions. Only required for hash_key and range_key attributes."
type = list(object({
name = string
type = string
}))
}
variable "autoscaling_service_role_arn" {
default = ""
description = "The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf. Required if billing_mode is PROVISIONED."
type = string
}
variable "billing_mode" {
default = "PROVISIONED"
description = "Controls how you are charged for read and write throughput and how you manage capacity. The valid values are PROVISIONED and PAY_PER_REQUEST."
type = string
}
variable "deletion_protection_enabled" {
default = false
description = "Enables deletion protection for table. Defaults to 'false'"
type = bool
}
variable "glue_crawler" {
default = {
}
description = "If present, glue crawler is created to crawl the table. Should consist of database_name, schedule (cron expression) and description(can be null)"
type = map(string)
}
variable "global_secondary_index" {
default = []
description = "Describe a GSO for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. Look at global_secondary_index for the attributes https://www.terraform.io/docs/providers/aws/r/dynamodb_table.html#global_secondary_index"
type = any
#list(object({
# hash_key = string
# name = string
# non_key_attributes = list(string)
# projection_type = string
# range_key = string
# read_capacity = number
# write_capacity = number
# }))
}
variable "hash_key" {
description = "The attribute to use as the hash (partition) key. Must also be defined as an attribute, see below."
type = string
}
variable "local_secondary_index" {
default = []
description = "Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource.Look at local_secondary_index for the attributes https://www.terraform.io/docs/providers/aws/r/dynamodb_table.html#local_secondary_index"
type = any
# list(object({
# name = string
# non_key_attributes = list(string)
# projection_type = string
# range_key = string
# }))
}
variable "name" {
description = "The name of the table, this needs to be unique within a region."
type = string
}
variable "point_in_time_recovery" {
default = false
type = bool
}
variable "read_capacity" {
default = {
max = 1
min = 1
}
description = "The number of read units for this table, expressed as min and max."
type = map(number)
}
variable "range_key" {
default = ""
description = "The attribute to use as the range (sort) key. Must also be defined as an attribute, see below."
type = string
}
variable "stream_view_type" {
default = ""
description = "When an item in the table is modified, StreamViewType determines what information is written to the table's stream. Valid values are KEYS_ONLY, NEW_IMAGE, OLD_IMAGE, NEW_AND_OLD_IMAGES."
type = string
}
variable "tags" {
default = {}
description = "A map of tags to populate on the created table."
type = map(string)
}
variable "ttl_attribute_name" {
default = ""
description = "The name of the table attribute to store the TTL timestamp in."
type = string
}
variable "write_capacity" {
default = {
max = 1
min = 1
}
description = "The number of write units for this table, expressed as min and max."
type = map(number)
}
variable "replica" {
default = []
description = "List of nested region_names and kms_key_arn (optional) for replica configuration"
type = any
# type = list(object({
# region_name = string
# kms_key_arn = string
# }))
}