-
Notifications
You must be signed in to change notification settings - Fork 83
/
variables.tf
176 lines (146 loc) · 5.4 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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
/*
# These vars would be used by cloudwatch.tf and should be uncommented if we decide to use them.
variable "alarm_cpu_threshold" {
default = "75"
}
variable "alarm_memory_threshold" {
# 10MB
default = "10000000"
}
variable "alarm_actions" {
type = "list"
}
*/
variable "apply_immediately" {
description = "Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false."
type = bool
default = false
}
variable "allowed_cidr" {
description = "A list of Security Group ID's to allow access to."
type = list(string)
default = ["127.0.0.1/32"]
}
variable "allowed_security_groups" {
description = "A list of Security Group ID's to allow access to."
type = list(string)
default = []
}
variable "env" {
description = "env to deploy into, should typically dev/staging/prod"
type = string
}
variable "name" {
description = "Name for the Redis replication group i.e. UserObject"
type = string
}
variable "redis_clusters" {
description = "Number of Redis cache clusters (nodes) to create"
type = string
}
variable "redis_failover" {
type = bool
default = false
}
variable "multi_az_enabled" {
type = bool
default = false
}
variable "redis_node_type" {
description = "Instance type to use for creating the Redis cache clusters"
type = string
default = "cache.m3.medium"
}
variable "redis_port" {
type = number
default = 6379
}
variable "subnets" {
type = list(string)
description = "List of VPC Subnet IDs for the cache subnet group"
}
# might want a map
variable "redis_version" {
description = "Redis version to use, defaults to 3.2.10"
type = string
default = "3.2.10"
}
variable "vpc_id" {
description = "VPC ID"
type = string
}
variable "redis_parameters" {
description = "additional parameters modifyed in parameter group"
type = list(map(any))
default = []
}
variable "redis_maintenance_window" {
description = "Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period"
type = string
default = "fri:08:00-fri:09:00"
}
variable "redis_snapshot_window" {
description = "The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period"
type = string
default = "06:30-07:30"
}
variable "redis_snapshot_retention_limit" {
description = "The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro or cache.t2.* cache nodes"
type = number
default = 0
}
variable "tags" {
description = "Tags for redis nodes"
type = map(string)
default = {}
}
variable "auto_minor_version_upgrade" {
description = "Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window"
type = bool
default = true
}
variable "availability_zones" {
description = "A list of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not important"
type = list(string)
default = []
}
variable "at_rest_encryption_enabled" {
description = "Whether to enable encryption at rest"
type = bool
default = false
}
variable "kms_key_id" {
description = "The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if at_rest_encryption_enabled = true"
type = string
default = ""
}
variable "transit_encryption_enabled" {
description = "Whether to enable encryption in transit. Requires 3.2.6 or >=4.0 redis_version"
type = bool
default = false
}
variable "auth_token" {
description = "The password used to access a password protected server. Can be specified only if transit_encryption_enabled = true. If specified must contain from 16 to 128 alphanumeric characters or symbols"
type = string
default = null
}
variable "security_group_names" {
description = "A list of cache security group names to associate with this replication group"
type = list(string)
default = []
}
variable "snapshot_arns" {
description = "A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb"
type = list(string)
default = []
}
variable "snapshot_name" {
description = " The name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource"
type = string
default = ""
}
variable "notification_topic_arn" {
description = "An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic"
type = string
default = ""
}