-
Notifications
You must be signed in to change notification settings - Fork 0
/
inputs-optional.tf
141 lines (122 loc) · 3.52 KB
/
inputs-optional.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
variable "existing_resource_group_name" {
description = "Name of an existing resourcegroup to deploy resources into"
type = string
default = null
}
variable "location" {
description = "Target Azure location to deploy resources into"
type = string
default = "uksouth"
}
variable "tags" {
description = "Tags to apply to all resources"
type = map(string)
default = null
}
variable "vnet_address_space" {
description = "The address space of the virtual network"
type = list(string)
default = ["10.100.0.0/16"]
}
variable "existing_subnet_id" {
description = "The ID of an existing subnet to deploy resources into."
type = string
default = null
}
variable "existing_nsg_id" {
description = "The ID of an existing network security group to reference."
type = string
default = null
}
variable "env" {
description = "The name of the environment"
type = string
default = "prod"
}
variable "kv_policies" {
description = "Policiy to apply to the keyvault"
type = set(object({
tenant_id = string
object_id = string
application_id = string
certificate_permissions = list(string)
key_permissions = list(string)
storage_permissions = list(string)
secret_permissions = list(string)
}))
default = []
}
variable "admin_public_key" {
description = "Public key to use for the admin account. If not provided, a new key will be generated"
type = string
default = null
}
variable "admin_username" {
description = "Username for the admin account. If not provided, a random username will be generated"
type = string
default = null
}
variable "publicly_accessible" {
description = "Whether the node should be publicly accessible"
type = bool
default = false
}
variable "existing_public_ip" {
description = "The name and resource group of an existing public IP to use for the node"
type = object({
name = string
resource_group_name = string
})
default = null
}
variable "nsg_rules" {
description = "Rule to apply to the network security group"
type = map(object({
priority = number
direction = string
access = string
protocol = string
source_port_range = string
destination_port_range = string
source_address_prefix = string
destination_address_prefix = string
}))
default = {}
}
variable "vm_os_disk_caching" {
description = "The caching type for the OS disk"
type = string
default = "ReadWrite"
}
variable "vm_os_disk_type" {
description = "The type of the OS disk"
type = string
default = "StandardSSD_LRS"
}
variable "vm_os_disk_size_gb" {
description = "The size of the OS disk"
type = number
default = 128
}
variable "vm_shutdown_schedule" {
description = "Shutdown schedule to create for the VM."
type = object({ enabled = bool, timezone = string, time = string })
default = {
enabled = false
time = "0000"
timezone = "GMT Standard Time"
}
}
variable "certificate_config" {
description = "Configuration for the certificate to use for the VM."
type = object({
domain_name = optional(string, "")
email = optional(string, "")
})
default = {}
}
variable "enable_aad_login" {
description = "Should AAD login be enabled for the VM."
type = bool
default = false
}