-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.tf
46 lines (38 loc) · 1.5 KB
/
main.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
locals {
labels = merge(var.labels, { "managed_by" : "terraform", "gl" : "memorystore" })
}
resource "google_redis_instance" "default" {
project = var.project
name = var.name
tier = var.tier
replica_count = var.tier == "STANDARD_HA" ? var.replica_count : null
read_replicas_mode = var.tier == "STANDARD_HA" ? var.read_replicas_mode : null
memory_size_gb = var.memory_size_gb
connect_mode = var.connect_mode
region = var.region
location_id = var.location_id
alternative_location_id = var.alternative_location_id
authorized_network = var.authorized_network
customer_managed_key = var.customer_managed_key
redis_version = var.redis_version
redis_configs = var.redis_configs
display_name = var.display_name
reserved_ip_range = var.reserved_ip_range
labels = local.labels
auth_enabled = var.auth_enabled
transit_encryption_mode = var.transit_encryption_mode
dynamic "maintenance_policy" {
for_each = var.maintenance_policy != null ? [var.maintenance_policy] : []
content {
weekly_maintenance_window {
day = maintenance_policy.value["day"]
start_time {
hours = maintenance_policy.value["start_time"]["hours"]
minutes = maintenance_policy.value["start_time"]["minutes"]
seconds = maintenance_policy.value["start_time"]["seconds"]
nanos = maintenance_policy.value["start_time"]["nanos"]
}
}
}
}
}