Web App

Overview

{
	"web_app": {
		"name": "web-app-{env}",
		"@plan_name": "plan-consump-{env}",
		"runtime": "python",

		"@application_insights_name": "appi-insights-{env}",
		"@log_analytics_workspace_name": "log-workspace-{env}",
		"cors": {
			"allowed_origins": ["http://localhost:3000"],
			"support_credentials": true
		},
		"keyvault": {
			"key_vault_name": "kv-vault-{env}",
			"secrets": { "default_key": "defaultappkey" }
		},
		"app_settings": [
			{
				"name": "MY_APP_SETTING",
				"value": "MY_APP_SETTING_VALUE"
			},
			{
				"name": "MY_OTHER_APP_SETTING",
				"value": "MY_OTHER_APP_SETTING_VALUE"
			}
		],
		"custom_domains": [
			{
				"custom_domain": "fct.cyncly-platform.com",
				"@dns_zone_name": "cyncly-platform.com",
				"dns_zone_resource_group": "rg-dns"
			}
		],
		"vnet_config": {
			"@vnet_name": "vnet-int-{env}",
			"@subnet_name": "snet-int-{env}"
		},
		"slot_settings": {
			"enabled": true,
			"name": "staging"
		},
		"location": "northeurope",
		"external": false,
		"resource_group_name": "my-rg-name",
		"tags": { "example": "S0" }
	}
}

Web App Reference

KeyValueDescription
name (required)stringThe name of the web app (see how to name)
@plan_name (required)string (reference to an app service plan)A reference to a defined App Service plan
runtime (required)RuntimeLanguage that your web app will be running
@application_insights_namestring (reference to an application insights component)A reference to a defined Application Insights component (defaults to no insights integration)
@log_analytics_workspace_namestring (reference to a log workspace)The name of the workspace that you want to attach to (defaults to no log integration)
keyvaultKeyvaultThe name of the Keyvault that this web app will have Get access (defaults to no keyvault config)
app_settingsarray of key value pairsThe application settings to pass to the web app (defaults to no settings)
custom_domainsarray of CustomDomainCustom Domains for your web app (defaults to no custom domains)
corsCORSThe CORS configuration (defaults to no cors configuration)
vnet_configVirtual NetworkVirtual Network configuration for your web app (defaults to no vnet_config meaning no integration)
slot_settingsSlotSettingsDeployment slot for the Function App (defaults to false)
locationstringResource Location (defaults to the resource group location)
externalboolA reference to an existing web app (defaults to false)
resource_group_namestringThe name of the resource group where the resource is located, only with external resources (defaults to the resource group of the deployment)
tagsobjectAdditional tags for the resource (defaults to no additional tags)

Runtime

ValueDescription
customYou will use this one if none of the options are the right one
dotnetIf your application runs in Dotnet use this option
javaIf your application runs in Java use this option
nodeIf your application runs in NodeJS use this option
powershellIf your script runs in Powershell use this option
pythonIf your application runs in Python use this option
dockerThe Docker type configuration

DockerRuntime

KeyValueDescription
domainstringThe domain of the registry (ex: registry.azurecr.io)
repositorystringThe repository name
imagestringThe image name to use
tagstringThe tag name to use

Keyvault

KeyValueDescription
@key_vault_namestringKeyvault name that your web app will have Get access
secretsobjectThe name and the value of the secret

CustomDomain

ValueDescription
custom_domainThe value of the custom domain (including parent domain)
@dns_zone_nameThe name of the dns zone in Azure
dns_zone_resource_groupThe name of the resource group that contains your dns zone

VirtualNetwork

KeyValueDescription
@vnet_namestringThe name of the virtual network
@subnet_nameobjectThe name of the subnet

SlotSettings

KeyTypeDescription
enabled (required)boolWhether the slot is activated or not
namestringThe optional name value for the slot (defaults to preprod)

Cors

KeyTypeDescription
allowed_origins (required)string[]The list of origins to allow
support_credentials (required)boolWhether credentials are allowed or not