{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "WebAppName": { "type": "string", "maxLength": 24, "minLength": 3, "metadata": { "description": "App name for Bold BI and Reports services. The name must be between 3 and 24 characters long, and can contain only numbers and lowercase letters." } }, "appServicePlanSize": { "type": "string", "allowedValues": [ "P2V3_4Core_16GB_DEV", "P3V3_8Core_32GB_PROD" ], "defaultValue": "P2V3_4Core_16GB_DEV", "metadata": { "description": "The pricing tier size for the App Service Plan." } }, "storageAccountName": { "type": "string", "maxLength": 24, "minLength": 3, "metadata": { "description": "Storage account name for Bold BI and Reports services. The name must be between 3 to 24 characters long, and can contain only numbers and lowercase letters." }, "defaultValue": "boldservices" }, "storageAccountType": { "type": "string", "allowedValues": [ "Standard_LRS", "Standard_GRS", "Standard_RAGRS" ], "metadata": { "description": "Type of the storage account created" }, "defaultValue": "Standard_LRS" } }, "variables": { "sizeMapping": { "P2V3_4Core_16GB_DEV": "P2v3", "P3V3_8Core_32GB_PROD": "P3v3" }, "WebAppSvcPlanWorkerSize": "0", "WebAppSvcPlanSKU": "PremiumV3", "WebAppSvcPlanName": "BoldServicesAppSvcPlan", "WebAppSvcPlanSize": "[variables('sizeMapping')[parameters('appServicePlanSize')]]", "WebAppSvcPlanCapacity": 1 }, "resources": [ { "name": "[variables('WebAppSvcPlanName')]", "type": "Microsoft.Web/serverfarms", "location": "[resourceGroup().location]", "apiVersion": "2022-03-01", "dependsOn": [], "tags": { "displayName": "AppSvcPlan" }, "sku": { "name": "[variables('WebAppSvcPlanSize')]", "tier": "[variables('WebAppSvcPlanSKU')]", "size": "[variables('WebAppSvcPlanSize')]", "capacity": "[variables('WebAppSvcPlanCapacity')]" }, "properties": { "reserved": false } }, { "name": "[parameters('WebAppName')]", "type": "Microsoft.Web/sites", "location": "[resourceGroup().location]", "apiVersion": "2022-03-01", "dependsOn": [ "[concat('Microsoft.Web/serverfarms/', variables('WebAppSvcPlanName'))]" ], "tags": { "[concat('hidden-related:', resourceGroup().id, '/providers/Microsoft.Web/serverfarms/', variables('WebAppSvcPlanName'))]": "Resource", "displayName": "WebApp" }, "properties": { "name": "[parameters('WebAppName')]", "siteConfig": { "metadata": [ { "name": "CURRENT_STACK", "value": "dotnetcore" } ] }, "clientAffinityEnabled": false, "serverFarmId": "[resourceId('Microsoft.Web/serverfarms/', variables('WebAppSvcPlanName'))]" }, "resources": [ { "name": "appsettings", "type": "config", "apiVersion": "2022-03-01", "dependsOn": [ "[resourceId('Microsoft.Web/sites', parameters('WebAppName'))]", "[concat('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]" ], "tags": { "displayName": "WebAppSettings" }, "properties": { "IdP:AzureBlobStorageAccountName": "[toLower(parameters('storageAccountName'))]", "IdP:AzureBlobServiceEndpoint": "[concat('https://',toLower(parameters('storageAccountName')), '.blob.core.windows.net/')]", "IdP:AzureBlobStorageAccessKey": "[listKeys(resourceId('Microsoft.Storage/storageAccounts', toLower(parameters('storageAccountName'))), providers('Microsoft.Storage', 'storageAccounts').apiVersions[0]).keys[0].value]", "IdP:AzureBlobContainerName": "boldbicontainer", "IdP:AzureBlobConnectionType": "https", "IdP:AzureBlobStorageUri": "[concat('https://',toLower(parameters('storageAccountName')), '.blob.core.windows.net/')]", "IdP:StorageType": "AzureBlob", "StorageType": "AzureBlob", "IsAzureApplication": "true", "log4net.Config": "logs\\log4net.config", "WEBSITE_DYNAMIC_CACHE": "0", "WEBSITE_LOAD_USER_PROFILE": "1", "ApplicationUrl": "[concat('https://',parameters('WebAppName'), '.azurewebsites.net')]", "ServiceStartupOrder": "idp_web, idp_api, idp_ums, bi_web, bi_api, bi_jobs, bi_designer, ai_service, reporting_web, reporting_api, reporting_jobs, reporting_viewer, reporting_reportservice, etl_service" } }, { "name": "web", "type": "config", "apiVersion": "2022-03-01", "dependsOn": [ "[resourceId('Microsoft.Web/sites', parameters('WebAppName'))]", "[resourceId('Microsoft.Web/sites/config', parameters('WebAppName'), 'appsettings')]" ], "tags": { "displayName": "WebAppConfig" }, "properties": { "netFrameworkVersion": "v8.0", "use32BitWorkerProcess": false, "webSocketsEnabled": true, "alwaysOn": true, "remoteDebuggingEnabled": false, "virtualApplications": [ { "virtualPath": "/", "physicalPath": "site\\wwwroot\\idp\\web" }, { "virtualPath": "/api", "physicalPath": "site\\wwwroot\\idp\\api" }, { "virtualPath": "/ums", "physicalPath": "site\\wwwroot\\idp\\ums" }, { "virtualPath": "/bi", "physicalPath": "site\\wwwroot\\bi\\web" }, { "virtualPath": "/bi/api", "physicalPath": "site\\wwwroot\\bi\\api" }, { "virtualPath": "/bi/jobs", "physicalPath": "site\\wwwroot\\bi\\jobs" }, { "virtualPath": "/bi/designer", "physicalPath": "site\\wwwroot\\bi\\dataservice" }, { "virtualPath": "/aiservice", "physicalPath": "site\\wwwroot\\ai\\aiservice" }, { "virtualPath": "/reporting", "physicalPath": "site\\wwwroot\\reporting\\web" }, { "virtualPath": "/reporting/api", "physicalPath": "site\\wwwroot\\reporting\\api" }, { "virtualPath": "/reporting/jobs", "physicalPath": "site\\wwwroot\\reporting\\jobs" }, { "virtualPath": "/reporting/viewer", "physicalPath": "site\\wwwroot\\reporting\\viewer" }, { "virtualPath": "/reporting/reportservice", "physicalPath": "site\\wwwroot\\reporting\\reportservice" }, { "virtualPath": "/etlservice", "physicalPath": "site\\wwwroot\\etl\\etlservice" } ], "http20Enabled": true } }, { "name": "web", "type": "sourcecontrols", "apiVersion": "2022-03-01", "dependsOn": [ "[resourceId('Microsoft.Web/sites', parameters('WebAppName'))]", "[resourceId('Microsoft.Web/sites/config', parameters('WebAppName'), 'web')]", "[resourceId('Microsoft.Web/sites/config', parameters('WebAppName'), 'appsettings')]" ], "properties": { "RepoUrl": "https://github.com/boldbi/bi_and_reports_azure-arm-template.git", "branch": "boldbi_v14.2.4_boldreports_v12.2.6", "IsManualIntegration": true } } ] }, { "name": "[toLower(parameters('storageAccountName'))]", "type": "Microsoft.Storage/storageAccounts", "location": "[resourceGroup().location]", "apiVersion": "2022-05-01", "tags": { "displayName": "storageaccount" }, "sku": { "name": "[parameters('storageAccountType')]" }, "properties": {} } ] }