-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathmodules-web-app.tf
More file actions
270 lines (210 loc) · 10.2 KB
/
Copy pathmodules-web-app.tf
File metadata and controls
270 lines (210 loc) · 10.2 KB
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
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
module "linux_web_app" {
count = lower(var.os_type) == "linux" ? 1 : 0
source = "./modules/linux-web-app"
client_name = var.client_name
environment = var.environment
location = var.location
location_short = var.location_short
resource_group_name = var.resource_group_name
stack = var.stack
name_prefix = var.name_prefix
name_suffix = var.name_suffix
custom_name = var.app_service_custom_name
diagnostic_settings_custom_name = var.diagnostic_settings_custom_name
service_plan_id = module.service_plan.id
app_settings = var.app_settings
site_config = var.site_config
auth_settings = var.auth_settings
auth_settings_v2 = var.auth_settings_v2
connection_strings = var.connection_strings
sticky_settings = var.sticky_settings
mount_points = var.mount_points
staging_slot_mount_points = var.staging_slot_mount_points
client_affinity_enabled = var.client_affinity_enabled
https_only = var.https_only
client_certificate_enabled = var.client_certificate_enabled
staging_slot_enabled = var.staging_slot_enabled
staging_slot_custom_name = var.staging_slot_custom_name
staging_slot_custom_app_settings = var.staging_slot_custom_app_settings
staging_slot_site_config = var.staging_slot_site_config
custom_domains = var.custom_domains
certificates = var.certificates
public_network_access_enabled = var.public_network_access_enabled
allowed_cidrs = var.allowed_cidrs
ip_restriction_headers = var.ip_restriction_headers
allowed_subnet_ids = var.allowed_subnet_ids
allowed_service_tags = var.allowed_service_tags
scm_ip_restriction_headers = var.scm_ip_restriction_headers
scm_allowed_cidrs = var.scm_allowed_cidrs
scm_allowed_subnet_ids = var.scm_allowed_subnet_ids
scm_allowed_service_tags = var.scm_allowed_service_tags
vnet_integration_subnet_id = var.vnet_integration_subnet_id
vnet_image_pull_enabled = var.vnet_image_pull_enabled
backup_enabled = var.backup_enabled
backup_custom_name = var.backup_custom_name
backup_storage_account_id = var.backup_storage_account_id
backup_storage_account_container = var.backup_storage_account_container
backup_frequency_interval = var.backup_frequency_interval
backup_retention_period_in_days = var.backup_retention_period_in_days
backup_frequency_unit = var.backup_frequency_unit
backup_keep_at_least_one_backup = var.backup_keep_at_least_one_backup
backup_token_start_date = var.backup_token_start_date
application_insights = var.application_insights
auto_heal_setting = var.auto_heal_setting
logs = var.logs
key_vault_reference_identity_id = var.key_vault_reference_identity_id
identity = var.identity
logs_destinations_ids = var.logs_destinations_ids
logs_categories = var.logs_categories
logs_metrics_categories = var.logs_metrics_categories
default_tags_enabled = var.default_tags_enabled
extra_tags = var.extra_tags
}
moved {
from = module.linux_web_app["enabled"]
to = module.linux_web_app[0]
}
resource "null_resource" "fake_webapp_container_condition" {
count = lower(var.os_type) == "linuxcontainer" ? 1 : 0
triggers = {
webapp_type = var.os_type
}
lifecycle {
precondition {
condition = var.docker_image != null
error_message = "Variable `docker_image` must be set when `os_type` App Service variable is in 'LinuxContainer' mode."
}
}
}
module "container_web_app" {
count = lower(var.os_type) == "linuxcontainer" ? 1 : 0
source = "./modules/container-web-app"
client_name = var.client_name
environment = var.environment
location = var.location
location_short = var.location_short
resource_group_name = var.resource_group_name
stack = var.stack
name_prefix = var.name_prefix
name_suffix = var.name_suffix
custom_name = var.app_service_custom_name
diagnostic_settings_custom_name = var.diagnostic_settings_custom_name
service_plan_id = module.service_plan.id
docker_image = var.docker_image
app_settings = var.app_settings
site_config = var.site_config
auth_settings = var.auth_settings
auth_settings_v2 = var.auth_settings_v2
connection_strings = var.connection_strings
sticky_settings = var.sticky_settings
mount_points = var.mount_points
staging_slot_mount_points = var.staging_slot_mount_points
client_affinity_enabled = var.client_affinity_enabled
https_only = var.https_only
client_certificate_enabled = var.client_certificate_enabled
staging_slot_enabled = var.staging_slot_enabled
staging_slot_custom_name = var.staging_slot_custom_name
staging_slot_custom_app_settings = var.staging_slot_custom_app_settings
staging_slot_site_config = var.staging_slot_site_config
custom_domains = var.custom_domains
certificates = var.certificates
public_network_access_enabled = var.public_network_access_enabled
allowed_cidrs = var.allowed_cidrs
ip_restriction_headers = var.ip_restriction_headers
allowed_subnet_ids = var.allowed_subnet_ids
allowed_service_tags = var.allowed_service_tags
scm_ip_restriction_headers = var.scm_ip_restriction_headers
scm_allowed_cidrs = var.scm_allowed_cidrs
scm_allowed_subnet_ids = var.scm_allowed_subnet_ids
scm_allowed_service_tags = var.scm_allowed_service_tags
vnet_integration_subnet_id = var.vnet_integration_subnet_id
vnet_image_pull_enabled = var.vnet_image_pull_enabled
backup_enabled = var.backup_enabled
backup_custom_name = var.backup_custom_name
backup_storage_account_id = var.backup_storage_account_id
backup_storage_account_container = var.backup_storage_account_container
backup_frequency_interval = var.backup_frequency_interval
backup_retention_period_in_days = var.backup_retention_period_in_days
backup_frequency_unit = var.backup_frequency_unit
backup_keep_at_least_one_backup = var.backup_keep_at_least_one_backup
backup_token_start_date = var.backup_token_start_date
application_insights = var.application_insights
auto_heal_setting = var.auto_heal_setting
logs = var.logs
key_vault_reference_identity_id = var.key_vault_reference_identity_id
identity = var.identity
logs_destinations_ids = var.logs_destinations_ids
logs_categories = var.logs_categories
logs_metrics_categories = var.logs_metrics_categories
default_tags_enabled = var.default_tags_enabled
extra_tags = var.extra_tags
}
moved {
from = module.container_web_app["enabled"]
to = module.container_web_app[0]
}
module "windows_web_app" {
count = lower(var.os_type) == "windows" ? 1 : 0
source = "./modules/windows-web-app"
client_name = var.client_name
environment = var.environment
location = var.location
location_short = var.location_short
resource_group_name = var.resource_group_name
stack = var.stack
name_prefix = var.name_prefix
name_suffix = var.name_suffix
custom_name = var.app_service_custom_name
diagnostic_settings_custom_name = var.diagnostic_settings_custom_name
service_plan_id = module.service_plan.id
app_settings = var.app_settings
site_config = var.site_config
auth_settings = var.auth_settings
auth_settings_v2 = var.auth_settings_v2
connection_strings = var.connection_strings
sticky_settings = var.sticky_settings
mount_points = var.mount_points
staging_slot_mount_points = var.staging_slot_mount_points
client_affinity_enabled = var.client_affinity_enabled
https_only = var.https_only
client_certificate_enabled = var.client_certificate_enabled
staging_slot_enabled = var.staging_slot_enabled
staging_slot_custom_name = var.staging_slot_custom_name
staging_slot_custom_app_settings = var.staging_slot_custom_app_settings
staging_slot_site_config = var.staging_slot_site_config
custom_domains = var.custom_domains
certificates = var.certificates
public_network_access_enabled = var.public_network_access_enabled
allowed_cidrs = var.allowed_cidrs
ip_restriction_headers = var.ip_restriction_headers
allowed_subnet_ids = var.allowed_subnet_ids
allowed_service_tags = var.allowed_service_tags
scm_ip_restriction_headers = var.scm_ip_restriction_headers
scm_allowed_cidrs = var.scm_allowed_cidrs
scm_allowed_subnet_ids = var.scm_allowed_subnet_ids
scm_allowed_service_tags = var.scm_allowed_service_tags
vnet_integration_subnet_id = var.vnet_integration_subnet_id
backup_enabled = var.backup_enabled
backup_custom_name = var.backup_custom_name
backup_storage_account_id = var.backup_storage_account_id
backup_storage_account_container = var.backup_storage_account_container
backup_frequency_interval = var.backup_frequency_interval
backup_retention_period_in_days = var.backup_retention_period_in_days
backup_frequency_unit = var.backup_frequency_unit
backup_keep_at_least_one_backup = var.backup_keep_at_least_one_backup
backup_token_start_date = var.backup_token_start_date
application_insights = var.application_insights
auto_heal_setting = var.auto_heal_setting
logs = var.logs
key_vault_reference_identity_id = var.key_vault_reference_identity_id
identity = var.identity
logs_destinations_ids = var.logs_destinations_ids
logs_categories = var.logs_categories
logs_metrics_categories = var.logs_metrics_categories
default_tags_enabled = var.default_tags_enabled
extra_tags = var.extra_tags
}
moved {
from = module.windows_web_app["enabled"]
to = module.windows_web_app[0]
}