{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "variables": { "resourcesApiVersion": "2018-05-01", "defaultDependency": [ { "name": "application" } ], "dependencies": "[concat(variables('defaultDependency'), parameters('modules').items)]" }, "parameters": { "modules": { "type": "secureObject", "defaultValue": { "items": [ { "name": "empty", "templateLink": "[concat(uri(parameters('templateLinkBase'), 'nested/emptyAddon.json'), parameters('templateLinkAccessToken'))]", "parameters": {} } ] } }, "prerequisites": { "type": "secureObject", "defaultValue": { "items": [ { "name": "empty-prerequisite", "templateLink": "[concat(uri(parameters('templateLinkBase'), 'nested/emptyAddon.json'), parameters('templateLinkAccessToken'))]", "parameters": {} } ] } }, "templateLinkBase": { "type": "string", "minLength": 1, "defaultValue": "[uri(replace(json(string(deployment().properties.templateLink)).uri,' ','%20'), '.')]" }, "templateLinkAccessToken": { "type": "securestring", "defaultValue": "" }, "deploymentId": { "type": "string", "defaultValue": "[resourceGroup().name]" }, "location": { "type": "string", "minLength": 1, "defaultValue": "[resourceGroup().location]" }, "sitecoreAdminPassword": { "type": "securestring", "minLength": 8 }, "licenseXml": { "type": "securestring", "minLength": 1 }, "sqlServerName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-sql')]" }, "sqlServerLogin": { "type": "string", "minLength": 1 }, "sqlServerPassword": { "type": "securestring", "minLength": 8 }, "sqlServerVersion": { "type": "string", "minLength": 1, "defaultValue": "12.0" }, "sqlDatabaseCollation": { "type": "string", "minLength": 1, "defaultValue": "SQL_Latin1_General_CP1_CI_AS" }, "sqlDatabaseEdition": { "type": "string", "minLength": 1, "defaultValue": "Standard" }, "sqlDatabaseMaxSize": { "type": "int", "defaultValue": 268435456000 }, "sqlBasicDatabaseServiceObjectiveLevel": { "type": "string", "minLength": 1, "defaultValue": "S0" }, "sqlDatabaseServiceObjectiveLevel": { "type": "string", "minLength": 1, "defaultValue": "S1" }, "coreSqlDatabaseName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-core-db')]" }, "securitySqlDatabaseName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-core-db')]" }, "masterSqlDatabaseName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-master-db')]" }, "webSqlDatabaseName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-web-db')]" }, "formsSqlDatabaseName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-forms-db')]" }, "searchServiceName": { "type": "string", "defaultValue": "[concat(parameters('deploymentId'), '-as')]" }, "searchServiceLocation": { "type": "string", "defaultValue": "[parameters('location')]" }, "searchServiceSkuName": { "type": "string", "defaultValue": "Standard" }, "searchServiceReplicaCount": { "type": "int", "defaultValue": 1 }, "searchServicePartitionCount": { "type": "int", "defaultValue": 1 }, "solrConnectionString": { "type": "securestring", "defaultValue": "" }, "useApplicationInsights": { "type": "bool", "defaultValue": true }, "applicationInsightsName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-ai')]" }, "applicationInsightsLocation": { "type": "string", "defaultValue": "East US" }, "storeSitecoreCountersInApplicationInsights": { "type": "bool", "defaultValue": false }, "applicationInsightsPricePlan": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-ai-pp')]" }, "applicationInsightsCurrentBillingFeatures": { "type": "string", "defaultValue": "Basic", "allowedValues": [ "Basic", "Application Insights Enterprise" ] }, "applicationInsightsDataVolumeCap": { "type": "string", "defaultValue": "0.33" }, "singleHostingPlanName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-single-hp')]" }, "singleHostingPlanSkuName": { "type": "string", "defaultValue": "S3" }, "singleHostingPlanSkuCapacity": { "type": "int", "defaultValue": 1 }, "singleWebAppName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-single')]" }, "siWebAppName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-si')]" }, "singleMsDeployPackageUrl": { "type": "securestring", "minLength": 1 }, "siMsDeployPackageUrl": { "type": "securestring", "minLength": 1 }, "setCompatibilityLevelMsDeployPackageUrl": { "type": "securestring", "minLength": 1, "defaultValue": "https://github.com/Sitecore/Sitecore-Azure-Quickstart-Templates/releases/download/v1.5.0/SetCompatibilityLevel.scwdp.zip" }, "coreSqlDatabaseUserName": { "type": "string", "minLength": 1, "defaultValue": "coreuser" }, "coreSqlDatabasePassword": { "type": "securestring", "minLength": 8, "defaultValue": "[concat(toUpper(uniqueString('core', parameters('passwordSalt'))), uniqueString('core', parameters('sqlServerPassword'), parameters('passwordSalt')), toUpper(uniqueString('core', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '4@')]" }, "securitySqlDatabaseUserName": { "type": "string", "minLength": 1, "defaultValue": "securityuser" }, "securitySqlDatabasePassword": { "type": "securestring", "minLength": 8, "defaultValue": "[concat(toUpper(uniqueString('security', parameters('passwordSalt'))), uniqueString('security', parameters('sqlServerPassword'), parameters('passwordSalt')), toUpper(uniqueString('security', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '4@')]" }, "masterSqlDatabaseUserName": { "type": "string", "minLength": 1, "defaultValue": "masteruser" }, "masterSqlDatabasePassword": { "type": "securestring", "minLength": 8, "defaultValue": "[concat(toUpper(uniqueString('master', parameters('passwordSalt'))), uniqueString('master', parameters('sqlServerPassword'), parameters('passwordSalt')), toUpper(uniqueString('master', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '4@')]" }, "webSqlDatabaseUserName": { "type": "string", "minLength": 1, "defaultValue": "webuser" }, "webSqlDatabasePassword": { "type": "securestring", "minLength": 8, "defaultValue": "[concat(toUpper(uniqueString('web', parameters('passwordSalt'))), uniqueString('web', parameters('sqlServerPassword'), parameters('passwordSalt')), toUpper(uniqueString('web', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '4@')]" }, "formsSqlDatabaseUserName": { "type": "string", "minLength": 1, "defaultValue": "formsuser" }, "formsSqlDatabasePassword": { "type": "securestring", "minLength": 8, "defaultValue": "[concat(toUpper(uniqueString('forms', parameters('passwordSalt'))), uniqueString('forms', parameters('sqlServerPassword'), parameters('passwordSalt')), toUpper(uniqueString('forms', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '4@')]" }, "authCertificateName": { "type": "string", "minLength": 1, "defaultValue": "[concat(parameters('deploymentId'), '-auth')]" }, "authCertificateBlob": { "type": "securestring", "minLength": 1 }, "authCertificatePassword": { "type": "securestring", "minLength": 1 }, "siClientSecret": { "type": "securestring", "minLength": 6, "defaultValue": "[toUpper(replace(guid(uniqueString('siClientSecret', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '-',''))]" }, "telerikEncryptionKey": { "type": "securestring", "minLength": 8, "defaultValue": "[concat(toUpper(uniqueString('telerik', parameters('passwordSalt'))), uniqueString('telerik', parameters('sqlServerPassword'), parameters('passwordSalt')), toUpper(uniqueString('telerik', parameters('sitecoreAdminPassword'), parameters('passwordSalt'))), '4@')]" }, "passwordSalt": { "type": "securestring", "minLength": 1, "defaultValue": "[resourceGroup().id]" }, "nodeJsVersion": { "type": "string", "defaultValue": "8.11.1" }, "environmentType": { "type": "string", "defaultValue": "Non-Production" }, "omsWorkspaceName": { "defaultValue": "[concat(parameters('deploymentId'), '-oms')]", "type": "string" }, "omsWorkspaceMetricsRetentionDays": { "defaultValue": 7, "type": "int" }, "omsWorkspaceSku": { "defaultValue": "standalone", "type": "string" }, "omsCapSizeGb": { "defaultValue": 1, "type": "int" }, "minTlsVersion": { "type": "string", "defaultValue": "1.2" } }, "resources": [ { "copy": { "name": "[concat(parameters('deploymentId'), '-prerequisites')]", "count": "[length(parameters('prerequisites').items)]", "mode": "Serial", "batchSize": 1 }, "name": "[concat(parameters('deploymentId'), '-', parameters('prerequisites').items[copyIndex()].name)]", "apiVersion": "[variables('resourcesApiVersion')]", "type": "Microsoft.Resources/deployments", "properties": { "mode": "Incremental", "templateLink": { "uri": "[parameters('prerequisites').items[copyIndex()].templateLink]" }, "parameters": "[parameters('prerequisites').items[copyIndex()].parameters]" } }, { "apiVersion": "[variables('resourcesApiVersion')]", "name": "[concat(parameters('deploymentId'), '-infrastructure')]", "type": "Microsoft.Resources/deployments", "properties": { "mode": "incremental", "templateLink": { "uri": "[concat(uri(parameters('templateLinkBase'), 'nested/infrastructure.json'), parameters('templateLinkAccessToken'))]" }, "parameters": { "deploymentId": { "value": "[parameters('deploymentId')]" }, "location": { "value": "[parameters('location')]" }, "sqlServerName": { "value": "[parameters('sqlServerName')]" }, "sqlServerLogin": { "value": "[parameters('sqlServerLogin')]" }, "sqlServerPassword": { "value": "[parameters('sqlServerPassword')]" }, "sqlServerVersion": { "value": "[parameters('sqlServerVersion')]" }, "sqlDatabaseCollation": { "value": "[parameters('sqlDatabaseCollation')]" }, "sqlDatabaseEdition": { "value": "[parameters('sqlDatabaseEdition')]" }, "sqlDatabaseMaxSize": { "value": "[parameters('sqlDatabaseMaxSize')]" }, "sqlBasicDatabaseServiceObjectiveLevel": { "value": "[parameters('sqlBasicDatabaseServiceObjectiveLevel')]" }, "sqlDatabaseServiceObjectiveLevel": { "value": "[parameters('sqlDatabaseServiceObjectiveLevel')]" }, "coreSqlDatabaseName": { "value": "[parameters('coreSqlDatabaseName')]" }, "masterSqlDatabaseName": { "value": "[parameters('masterSqlDatabaseName')]" }, "webSqlDatabaseName": { "value": "[parameters('webSqlDatabaseName')]" }, "formsSqlDatabaseName": { "value": "[parameters('formsSqlDatabaseName')]" }, "authCertificateName": { "value": "[parameters('authCertificateName')]" }, "authCertificateBlob": { "value": "[parameters('authCertificateBlob')]" }, "authCertificatePassword": { "value": "[parameters('authCertificatePassword')]" }, "deployAzureSearch": { "value": "[empty(parameters('solrConnectionString'))]" }, "searchServiceName": { "value": "[parameters('searchServiceName')]" }, "searchServiceLocation": { "value": "[parameters('searchServiceLocation')]" }, "searchServiceSkuName": { "value": "[parameters('searchServiceSkuName')]" }, "searchServiceReplicaCount": { "value": "[parameters('searchServiceReplicaCount')]" }, "searchServicePartitionCount": { "value": "[parameters('searchServicePartitionCount')]" }, "useApplicationInsights": { "value": "[parameters('useApplicationInsights')]" }, "applicationInsightsName": { "value": "[parameters('applicationInsightsName')]" }, "applicationInsightsLocation": { "value": "[parameters('applicationInsightsLocation')]" }, "applicationInsightsPricePlan": { "value": "[parameters('applicationInsightsPricePlan')]" }, "applicationInsightsCurrentBillingFeatures": { "value": "[parameters('applicationInsightsCurrentBillingFeatures')]" }, "applicationInsightsDataVolumeCap": { "value": "[parameters('applicationInsightsDataVolumeCap')]" }, "singleHostingPlanName": { "value": "[parameters('singleHostingPlanName')]" }, "singleHostingPlanSkuName": { "value": "[parameters('singleHostingPlanSkuName')]" }, "singleHostingPlanSkuCapacity": { "value": "[parameters('singleHostingPlanSkuCapacity')]" }, "siWebAppName": { "value": "[parameters('siWebAppName')]" }, "singleWebAppName": { "value": "[parameters('singleWebAppName')]" }, "omsWorkspaceName": { "value": "[parameters('omsWorkspaceName')]" }, "omsWorkspaceMetricsRetentionDays": { "value": "[parameters('omsWorkspaceMetricsRetentionDays')]" }, "omsWorkspaceSku": { "value": "[parameters('omsWorkspaceSku')]" }, "omsCapSizeGb": { "value": "[parameters('omsCapSizeGb')]" }, "minTlsVersion": { "value": "[parameters('minTlsVersion')]" } } }, "dependsOn": [ "[concat(parameters('deploymentId'), '-prerequisites')]" ] }, { "apiVersion": "[variables('resourcesApiVersion')]", "name": "[concat(parameters('deploymentId'), '-application')]", "type": "Microsoft.Resources/deployments", "properties": { "mode": "incremental", "templateLink": { "uri": "[concat(uri(parameters('templateLinkBase'), 'nested/application.json'), parameters('templateLinkAccessToken'))]" }, "parameters": { "infrastructure": { "value": "[reference(concat(parameters('deploymentId'), '-infrastructure')).outputs.infrastructure.value]" }, "deploymentId": { "value": "[parameters('deploymentId')]" }, "location": { "value": "[parameters('location')]" }, "sitecoreAdminPassword": { "value": "[parameters('sitecoreAdminPassword')]" }, "licenseXml": { "value": "[parameters('licenseXml')]" }, "sqlServerLogin": { "value": "[parameters('sqlServerLogin')]" }, "sqlServerPassword": { "value": "[parameters('sqlServerPassword')]" }, "coreSqlDatabaseName": { "value": "[parameters('coreSqlDatabaseName')]" }, "securitySqlDatabaseName": { "value": "[parameters('securitySqlDatabaseName')]" }, "masterSqlDatabaseName": { "value": "[parameters('masterSqlDatabaseName')]" }, "webSqlDatabaseName": { "value": "[parameters('webSqlDatabaseName')]" }, "formsSqlDatabaseName": { "value": "[parameters('formsSqlDatabaseName')]" }, "coreSqlDatabaseUserName": { "value": "[parameters('coreSqlDatabaseUserName')]" }, "coreSqlDatabasePassword": { "value": "[parameters('coreSqlDatabasePassword')]" }, "securitySqlDatabaseUserName": { "value": "[parameters('securitySqlDatabaseUserName')]" }, "securitySqlDatabasePassword": { "value": "[parameters('securitySqlDatabasePassword')]" }, "masterSqlDatabaseUserName": { "value": "[parameters('masterSqlDatabaseUserName')]" }, "masterSqlDatabasePassword": { "value": "[parameters('masterSqlDatabasePassword')]" }, "webSqlDatabaseUserName": { "value": "[parameters('webSqlDatabaseUserName')]" }, "webSqlDatabasePassword": { "value": "[parameters('webSqlDatabasePassword')]" }, "formsSqlDatabaseUserName": { "value": "[parameters('formsSqlDatabaseUserName')]" }, "formsSqlDatabasePassword": { "value": "[parameters('formsSqlDatabasePassword')]" }, "solrConnectionString": { "value": "[parameters('solrConnectionString')]" }, "searchServiceName": { "value": "[parameters('searchServiceName')]" }, "useApplicationInsights": { "value": "[parameters('useApplicationInsights')]" }, "applicationInsightsName": { "value": "[parameters('applicationInsightsName')]" }, "storeSitecoreCountersInApplicationInsights": { "value": "[parameters('storeSitecoreCountersInApplicationInsights')]" }, "singleWebAppName": { "value": "[parameters('singleWebAppName')]" }, "siWebAppName": { "value": "[parameters('siWebAppName')]" }, "siMsDeployPackageUrl": { "value": "[parameters('siMsDeployPackageUrl')]" }, "singleMsDeployPackageUrl": { "value": "[parameters('singleMsDeployPackageUrl')]" }, "siClientSecret": { "value": "[parameters('siClientSecret')]" }, "setCompatibilityLevelMsDeployPackageUrl": { "value": "[parameters('setCompatibilityLevelMsDeployPackageUrl')]" }, "telerikEncryptionKey": { "value": "[parameters('telerikEncryptionKey')]" }, "passwordSalt": { "value": "[parameters('passwordSalt')]" }, "nodeJsVersion": { "value": "[parameters('nodeJsVersion')]" }, "environmentType": { "value": "[parameters('environmentType')]" }, "minTlsVersion": { "value": "[parameters('minTlsVersion')]" } } }, "dependsOn": [ "[resourceId('Microsoft.Resources/deployments', concat(parameters('deploymentId'), '-infrastructure'))]" ] }, { "copy": { "name": "modules", "count": "[length(parameters('modules').items)]" }, "name": "[concat(parameters('deploymentId'), '-' , parameters('modules').items[copyIndex()].name)]", "apiVersion": "[variables('resourcesApiVersion')]", "type": "Microsoft.Resources/deployments", "properties": { "mode": "incremental", "templateLink": { "uri": "[parameters('modules').items[copyIndex()].templateLink]" }, "parameters": { "standard": { "value": { "infrastructure": "[reference(concat(parameters('deploymentId'), '-infrastructure')).outputs.infrastructure.value]", "deploymentId": "[parameters('deploymentId')]", "location": "[parameters('location')]", "sitecoreAdminPassword": "[parameters('sitecoreAdminPassword')]", "licenseXml": "[parameters('licenseXml')]", "sqlServerName": "[parameters('sqlServerName')]", "sqlServerLogin": "[parameters('sqlServerLogin')]", "sqlServerPassword": "[parameters('sqlServerPassword')]", "sqlServerVersion": "[parameters('sqlServerVersion')]", "sqlDatabaseCollation": "[parameters('sqlDatabaseCollation')]", "sqlDatabaseEdition": "[parameters('sqlDatabaseEdition')]", "sqlDatabaseMaxSize": "[parameters('sqlDatabaseMaxSize')]", "sqlBasicDatabaseServiceObjectiveLevel": "[parameters('sqlBasicDatabaseServiceObjectiveLevel')]", "sqlDatabaseServiceObjectiveLevel": "[parameters('sqlDatabaseServiceObjectiveLevel')]", "coreSqlDatabaseName": "[parameters('coreSqlDatabaseName')]", "masterSqlDatabaseName": "[parameters('masterSqlDatabaseName')]", "webSqlDatabaseName": "[parameters('webSqlDatabaseName')]", "formsSqlDatabaseName": "[parameters('formsSqlDatabaseName')]", "coreSqlDatabaseUserName": "[parameters('coreSqlDatabaseUserName')]", "coreSqlDatabasePassword": "[parameters('coreSqlDatabasePassword')]", "securitySqlDatabaseUserName": "[parameters('securitySqlDatabaseUserName')]", "securitySqlDatabasePassword": "[parameters('securitySqlDatabasePassword')]", "masterSqlDatabaseUserName": "[parameters('masterSqlDatabaseUserName')]", "masterSqlDatabasePassword": "[parameters('masterSqlDatabasePassword')]", "webSqlDatabaseUserName": "[parameters('webSqlDatabaseUserName')]", "webSqlDatabasePassword": "[parameters('webSqlDatabasePassword')]", "formsSqlDatabaseUserName": "[parameters('formsSqlDatabaseUserName')]", "formsSqlDatabasePassword": "[parameters('formsSqlDatabasePassword')]", "searchServiceName": "[parameters('searchServiceName')]", "searchServiceLocation": "[parameters('searchServiceLocation')]", "searchServiceReplicaCount": "[parameters('searchServiceReplicaCount')]", "searchServicePartitionCount": "[parameters('searchServicePartitionCount')]", "solrConnectionString": "[parameters('solrConnectionString')]", "useApplicationInsights": "[parameters('useApplicationInsights')]", "applicationInsightsName": "[parameters('applicationInsightsName')]", "applicationInsightsLocation": "[parameters('applicationInsightsLocation')]", "storeSitecoreCountersInApplicationInsights": "[parameters('storeSitecoreCountersInApplicationInsights')]", "singleHostingPlanName": "[parameters('singleHostingPlanName')]", "singleWebAppName": "[parameters('singleWebAppName')]", "passwordSalt": "[parameters('passwordSalt')]", "environmentType": "[parameters('environmentType')]" } }, "extension": { "value": "[parameters('modules').items[copyIndex()].parameters]" } } }, "dependsOn": [ "[concat(parameters('deploymentId'), '-' , variables('dependencies')[copyIndex()].name)]" ] } ] }