webapps/windows_function_app¶
Overview¶
This page documents the Terraform module implementation, key configuration surfaces, and how it integrates with CAF.
Dependency diagram (Mermaid)¶
graph TD
azurecaf_name.windows_function_app["azurecaf_name.windows_function_app"]
azurerm_windows_function_app.windows_function_app["azurerm_windows_function_app.windows_function_app"]
module.diagnostics["module.diagnostics"]
module.private_endpoint["module.private_endpoint"]
module.slots["module.slots"]
remote:api_management_apis["remote:api_management_apis"]
remote:diagnostics["remote:diagnostics"]
remote:managed_identities["remote:managed_identities"]
remote:private_dns["remote:private_dns"]
remote:service_plans["remote:service_plans"]
remote:storage_accounts["remote:storage_accounts"]
remote:virtual_subnets["remote:virtual_subnets"]
remote:vnets["remote:vnets"]
azurerm_windows_function_app.windows_function_app --> azurecaf_name.windows_function_app
azurerm_windows_function_app.windows_function_app --> remote:api_management_apis
azurerm_windows_function_app.windows_function_app --> remote:managed_identities
azurerm_windows_function_app.windows_function_app --> remote:service_plans
azurerm_windows_function_app.windows_function_app --> remote:storage_accounts
azurerm_windows_function_app.windows_function_app --> remote:vnets
module.diagnostics --> azurerm_windows_function_app.windows_function_app
module.diagnostics --> remote:diagnostics
module.private_endpoint --> azurerm_windows_function_app.windows_function_app
module.private_endpoint --> remote:private_dns
module.private_endpoint --> remote:virtual_subnets
module.private_endpoint --> remote:vnets
module.slots --> azurerm_windows_function_app.windows_function_app
Module Reference¶
Category: webapps
Path: modules/webapps/windows_function_app
Azure Resources: azurecaf_name, azurerm_windows_function_app
Inputs¶
| Name | Description | Type | Required | Default | Validation |
|---|---|---|---|---|---|
"global_settings" |
"<<DESCRIPTION The global_settings object is a map of settings that can be used to configure the naming convention fo... | any |
yes | - |
- |
"client_config" |
"<<DESCRIPTION Client configuration object primarily used for specifying the Azure client context in non-interactive ... | any |
yes | - |
- |
"location" |
"(Required) Specifies the supported Azure location where to create the resource. Changing this forces a new resource ... | string |
yes | - |
- |
"settings" |
"<<DESCRIPTION Settings object for the Windows Function App (azurerm_windows_function_app). The attributes below do... |
any |
yes | - |
- |
"resource_group" |
"Resource group object" | any |
yes | - |
- |
"base_tags" |
"Flag to determine if tags should be inherited" | bool |
yes | - |
- |
"remote_objects" |
"Remote objects" | any |
yes | - |
- |
"private_endpoints" |
"A map of objects representing the private endpoints to create." | any |
no | {} |
- |
Outputs¶
| Name | Description | Sensitive | Value |
|---|---|---|---|
"name" |
"The CAF-compliant name of the Windows Function App" | - | azurecaf_name.windows_function_app.result |
"id" |
"The ID of the Windows Function App" | - | azurerm_windows_function_app.windows_function_app.id |
"rbac_id" |
"The Principal ID of the Windows Function App managed identity, used for RBAC role assignments." | - | try(azurerm_windows_function_app.windows_function_app.identity[0].principal_id, null) |
"custom_domain_verification_id" |
"The identifier used by App Service to perform domain ownership verification via DNS TXT record" | - | azurerm_windows_function_app.windows_function_app.custom_domain_verification_id |
"default_hostname" |
"The default hostname of the Windows Function App" | - | azurerm_windows_function_app.windows_function_app.default_hostname |
"hosting_environment_id" |
"The ID of the App Service Environment used by Function App" | - | azurerm_windows_function_app.windows_function_app.hosting_environment_id |
"identity" |
"An identity block as defined below" | - | length(azurerm_windows_function_app.windows_function_app.identity) > 0 ? {principal_id = azurerm_windows_function_app.windows_function_app.identity[0].principal_id, tenant_id = azurerm_windows_function_app.windows_function_app.identity[0].tenant_id} : null |
"kind" |
"The Kind value for this Windows Function App" | - | azurerm_windows_function_app.windows_function_app.kind |
"outbound_ip_address_list" |
"A list of outbound IP addresses" | - | azurerm_windows_function_app.windows_function_app.outbound_ip_address_list |
"outbound_ip_addresses" |
"A comma separated list of outbound IP addresses as a string" | - | azurerm_windows_function_app.windows_function_app.outbound_ip_addresses |
"possible_outbound_ip_address_list" |
"A list of possible outbound IP addresses, not all of which are necessarily in use" | - | azurerm_windows_function_app.windows_function_app.possible_outbound_ip_address_list |
"possible_outbound_ip_addresses" |
"A comma separated list of possible outbound IP addresses as a string" | - | azurerm_windows_function_app.windows_function_app.possible_outbound_ip_addresses |
"site_credential" |
"A site_credential block as defined below" | - | length(azurerm_windows_function_app.windows_function_app.site_credential) > 0 ? {name = azurerm_windows_function_app.windows_function_app.site_credential[0].name, password = azurerm_windows_function_app.windows_function_app.site_credential[0].password} : null |
"slots" |
"The Windows Function App Slots" | - | module.slots |
Sources¶
modules/webapps/windows_function_app/azurecaf_name.tfmodules/webapps/windows_function_app/diagnostics.tfmodules/webapps/windows_function_app/locals.dynamic_app_settings.tfmodules/webapps/windows_function_app/locals.tfmodules/webapps/windows_function_app/locals_function_app.tfmodules/webapps/windows_function_app/main.tfmodules/webapps/windows_function_app/managed_identities.tfmodules/webapps/windows_function_app/outputs.tfmodules/webapps/windows_function_app/private_endpoint.tfmodules/webapps/windows_function_app/providers.tfmodules/webapps/windows_function_app/variables.tfmodules/webapps/windows_function_app/windows_function_app.tf