-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.tf
199 lines (173 loc) · 5.49 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
187
188
189
190
191
192
193
194
195
196
197
198
199
variable "scale_set_name" {
type = string
description = "Virtual Machine Scale Set name."
}
variable "resource_group" {
type = string
description = "The name of the resource group."
}
variable "location" {
type = string
description = "The Azure Region in which all resources in this example should be created."
}
variable "subnet_id" {
type = string
description = "The ID of the Subnet where this Network first Interface should be located in."
}
variable "admin_ssh_key" {
description = "Objects to configure ssh key reference for Virtual Machine Scale Sets"
type = object({
username = optional(string, "azureuser")
public_key = string
})
default = {
username = null
public_key = null
}
}
variable "tags" {
type = map(string)
description = "list of tags"
default = {}
}
variable "public_ip_prefix_enabled" {
description = "Boolean flag that determines whether Public IP Address prefix is created for VM Scale Set."
type = bool
default = true
}
variable "public_ip_prefix_name" {
description = "Public IP Address prefix name."
type = string
default = null
}
variable "public_ip_prefix_length" {
description = "Public IP Address prefix length. Possible value are between 0 and 31."
type = string
default = 30
}
variable "scale_set_configuration" {
description = "Configuration options for linux virtual machine scale set"
type = object({
sku = optional(string, "Standard_D2_v2")
instances = optional(string, "2")
admin_username = optional(string, "azureuser")
admin_password = optional(string, null)
disable_password_authentication = optional(bool, true)
priority = optional(string, "Regular")
overprovision = optional(bool, false)
single_placement_group = optional(bool, false)
upgrade_mode = optional(string, "Manual")
enable_ip_forwarding_interface = optional(bool, false)
domain_name_label = optional(string, null)
lb_backend_address_pool_ids = optional(list(string), [])
})
default = {}
}
variable "extensions" {
description = "Virtual Machine scale set extensions config"
type = set(object({
name = string
publisher = string
type = string
type_handler_version = string
settings = optional(string)
protected_settings = optional(string)
}))
default = []
}
variable "os_disk" {
description = "Objects to configure os disk reference for Virtual Machine Scale Sets"
type = object({
caching = optional(string, "ReadWrite")
storage_account_type = optional(string, "Standard_LRS")
})
default = {}
}
variable "source_image_reference" {
description = "Objects to configure source image reference for Virtual Machine Scale Sets"
type = object({
publisher = string
offer = string
sku = string
version = string
})
default = {
publisher = "Canonical"
offer = "0001-com-ubuntu-server-jammy"
sku = "22_04-lts"
version = "latest"
}
}
variable "analytics_workspace_id" {
type = string
description = "Resource ID of Log Analytics Workspace"
default = null
}
variable "enable_data_collection_rule" {
type = bool
description = "Enable data collection rule. var.analytics_workspace_id must be provided"
default = false
}
variable "enable_scale_set_extension" {
type = bool
description = "Enable scale set extension. var.analytics_workspace_id must be provided"
default = true
}
variable "enable_data_collection_rule_association" {
type = bool
description = "Enable data collection rule association. var.analytics_workspace_id must be provided"
default = true
}
variable "data_collection_rule_association_name" {
type = string
description = "Data collection rule association name"
default = null
}
variable "data_collection_rule_name" {
type = string
description = "Data collection rule name"
default = null
}
variable "dcr_association_description" {
type = string
description = "Description of Data collection rule association"
default = "Association between the Data Collection Rule and the Linux VM."
}
variable "facility_names" {
type = list(string)
description = "List of Facility names"
default = ["daemon", "syslog", "user"]
}
variable "log_levels" {
type = list(string)
description = "List of Log levels"
default = ["Debug"]
}
variable "datasource_name" {
type = string
description = "Datasource syslog name"
default = "datasource-syslog"
}
variable "dependency_agent_extension_version" {
type = string
description = "Version of VMSS extension required for logging"
default = "9.5"
}
variable "automatic_os_upgrade_policy_enabled" {
description = "Boolean flag that determines whether automatic os upgrade policy is enabled"
type = bool
default = false
}
variable "automatic_os_upgrade_policy" {
description = "Configuration options for automatic os upgrade policy"
type = object({
disable_automatic_rollback = optional(bool, false)
enable_automatic_os_upgrade = optional(bool, false)
})
default = {}
}
variable "identity_ids" {
type = list(string)
description = "List of user assigned identity IDs"
default = null
}