generated from Azure/terraform-azurerm-avm-template
-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathvariables.tf
186 lines (169 loc) · 5.62 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
177
178
179
180
181
182
183
184
185
186
variable "domain_name" {
type = string
description = "The name of the private dns zone."
}
# This assumes resource group is already created and its name passed to this module
variable "resource_group_name" {
type = string
description = "The resource group where the resources will be deployed."
}
variable "a_records" {
type = map(object({
name = string
resource_group_name = string
zone_name = string
ttl = number
records = list(string)
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a A record."
}
variable "aaaa_records" {
type = map(object({
name = string
resource_group_name = string
zone_name = string
ttl = number
records = list(string)
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a AAAA record."
}
variable "cname_records" {
type = map(object({
name = string
resource_group_name = string
zone_name = string
ttl = number
record = string
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a CNAME record."
}
variable "enable_telemetry" {
type = bool
default = true
description = <<DESCRIPTION
This variable controls whether or not telemetry is enabled for the module.
For more information see https://aka.ms/avm/telemetryinfo.
If it is set to false, then no telemetry will be collected.
DESCRIPTION
}
variable "mx_records" {
type = map(object({
name = optional(string, "@")
resource_group_name = string
zone_name = string
ttl = number
records = map(object({
preference = number
exchange = string
}))
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a MX record."
}
variable "ptr_records" {
type = map(object({
name = string
resource_group_name = string
zone_name = string
ttl = number
records = list(string)
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a PTR record."
}
variable "soa_record" {
type = object({
email = string
expire_time = optional(number, 2419200)
minimum_ttl = optional(number, 10)
refresh_time = optional(number, 3600)
retry_time = optional(number, 300)
ttl = optional(number, 3600)
tags = optional(map(string), null)
})
default = null
description = "optional soa_record variable, if included only email is required, rest are optional. Email must use username.corp.com and not [email protected]"
}
variable "srv_records" {
type = map(object({
name = string
resource_group_name = string
zone_name = string
ttl = number
records = map(object({
priority = number
weight = number
port = number
target = string
}))
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a SRV record."
}
variable "tags" {
type = map(string)
default = null
description = "(Optional) Tags of the resource."
}
variable "timeouts" {
type = object({
dns_zones = optional(object({
create = optional(string, "30m")
delete = optional(string, "30m")
update = optional(string, "30m")
read = optional(string, "5m")
}), {}
)
vnet_links = optional(object({
create = optional(string, "30m")
delete = optional(string, "30m")
update = optional(string, "30m")
read = optional(string, "5m")
}), {}
)
})
default = {}
description = <<DESCRIPTION
A map of timeouts objects, per resource type, to apply to the creation and destruction of resources the following resources:
- `dns_zones` - (Optional) The timeouts for DNS Zones.
- `vnet_links` - (Optional) The timeouts for DNS Zones Virtual Network Links.
Each timeout object has the following optional attributes:
- `create` - (Optional) The timeout for creating the resource. Defaults to `5m` apart from policy assignments, where this is set to `15m`.
- `delete` - (Optional) The timeout for deleting the resource. Defaults to `5m`.
- `update` - (Optional) The timeout for updating the resource. Defaults to `5m`.
- `read` - (Optional) The timeout for reading the resource. Defaults to `5m`.
DESCRIPTION
}
variable "txt_records" {
type = map(object({
name = string
resource_group_name = string
zone_name = string
ttl = number
records = map(object({
value = string
}))
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a TXT record."
}
variable "virtual_network_links" {
type = map(object({
vnetlinkname = string
vnetid = string
autoregistration = optional(bool, false)
tags = optional(map(string), null)
}))
default = {}
description = "A map of objects where each object contains information to create a virtual network link."
}