diff --git a/armtemplates/latest/AzureBlobStorage-BoldReports.json b/armtemplates/latest/AzureBlobStorage-BoldReports.json index 4a354aa27..b5bea2fab 100644 --- a/armtemplates/latest/AzureBlobStorage-BoldReports.json +++ b/armtemplates/latest/AzureBlobStorage-BoldReports.json @@ -8,11 +8,24 @@ "description": "App name for Bold Reports Server. The name must be between 3 and 24 characters long, and can contain only numbers and lowercase letters." } }, + "appServicePlanSize": { + "type": "string", + "allowedValues": [ + "P1V3_2Core_8GB_DEV", + "P2V3_4Core_16GB_PROD", + "P3V3_8Core_32GB_PROD" + ], + "defaultValue": "P1V3_2Core_8GB_DEV", + "metadata": { + "description": "The pricing tier size for the App Service Plan." + } + }, "storageAccountName": { "type": "string", "metadata": { "description": "Storage account name for Bold Reports Server. The name must be between 3 to 24 characters long, and can contain only numbers and lowercase letters." - } + }, + "defaultValue": "storageaccountname" }, "storageAccountType": { "type": "string", @@ -25,34 +38,45 @@ "description": "Type of the storage account created" }, "defaultValue": "Standard_LRS" - } + } }, "variables": { + "sizeMapping": { + "P1V3_2Core_8GB_DEV": "P1v3", + "P2V3_4Core_16GB_PROD": "P2v3", + "P3V3_8Core_32GB_PROD": "P3v3" + }, "WebAppSvcPlanWorkerSize": "0", - "WebAppSvcPlanSKU": "Basic", - "WebAppSvcPlanName": "SyncfusionAppSvcPlan" + "WebAppSvcPlanSKU": "PremiumV3", + "WebAppSvcPlanName": "BoldReportsAppSvcPlan", + "WebAppSvcPlanSize": "[variables('sizeMapping')[parameters('appServicePlanSize')]]", + "WebAppSvcPlanCapacity": 1 }, "resources": [ { "name": "[variables('WebAppSvcPlanName')]", "type": "Microsoft.Web/serverfarms", "location": "[resourceGroup().location]", - "apiVersion": "2014-06-01", + "apiVersion": "2022-03-01", "dependsOn": [], "tags": { "displayName": "AppSvcPlan" }, + "sku": { + "name": "[variables('WebAppSvcPlanSize')]", + "tier": "[variables('WebAppSvcPlanSKU')]", + "size": "[variables('WebAppSvcPlanSize')]", + "capacity": "[variables('WebAppSvcPlanCapacity')]" + }, "properties": { - "name": "[variables('WebAppSvcPlanName')]", - "sku": "[variables('WebAppSvcPlanSKU')]", - "workerSize": "[variables('WebAppSvcPlanWorkerSize')]" + "reserved": false } }, { "name": "[parameters('WebAppName')]", "type": "Microsoft.Web/sites", "location": "[resourceGroup().location]", - "apiVersion": "2015-08-01", + "apiVersion": "2022-03-01", "dependsOn": [ "[concat('Microsoft.Web/serverfarms/', variables('WebAppSvcPlanName'))]" ], @@ -62,20 +86,20 @@ }, "properties": { "name": "[parameters('WebAppName')]", - "siteConfig": { - "metadata": [ - { - "name": "CURRENT_STACK", - "value": "dotnet" - } - ] + "siteConfig": { + "metadata": [ + { + "name": "CURRENT_STACK", + "value": "dotnet" + } + ] }, - "clientAffinityEnabled": "false", + "clientAffinityEnabled": false, "serverFarmId": "[resourceId('Microsoft.Web/serverfarms/', variables('WebAppSvcPlanName'))]" }, "resources": [ { - "apiVersion": "2015-08-01", + "apiVersion": "2022-03-01", "name": "web", "type": "config", "dependsOn": [ @@ -115,7 +139,7 @@ "virtualPath": "/reporting/jobs", "physicalPath": "site\\wwwroot\\reporting\\jobs" }, - { + { "virtualPath": "/reporting/viewer", "physicalPath": "site\\wwwroot\\reporting\\viewer" }, @@ -123,16 +147,16 @@ "virtualPath": "/reporting/reportservice", "physicalPath": "site\\wwwroot\\reporting\\reportservice" }, - { + { "virtualPath": "/etlservice", "physicalPath": "site\\wwwroot\\etl\\etlservice" } ], - "http20Enabled": true + "http20Enabled": true } }, { - "apiVersion": "2015-08-01", + "apiVersion": "2022-03-01", "name": "web", "type": "sourcecontrols", "dependsOn": [ @@ -147,7 +171,7 @@ { "name": "appsettings", "type": "config", - "apiVersion": "2015-08-01", + "apiVersion": "2022-03-01", "dependsOn": [ "[concat('Microsoft.Web/sites/', parameters('WebAppName'))]", "web", @@ -158,18 +182,18 @@ }, "properties": { "IdP:AzureBlobStorageAccountName": "[toLower(parameters('storageAccountName'))]", - "IdP:AzureBlobServiceEndpoint": "[concat('https://',toLower(parameters('storageAccountName')), '.blob.core.windows.net/')]", + "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": "boldreportscontainer", "IdP:AzureBlobConnectionType": "https", - "IdP:AzureBlobStorageUri": "[concat('https://',toLower(parameters('storageAccountName')), '.blob.core.windows.net/')]", + "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')]" + "WEBSITE_LOAD_USER_PROFILE": "1", + "ApplicationUrl": "[concat('https://', parameters('WebAppName'), '.azurewebsites.net')]" } } ] @@ -178,14 +202,14 @@ "name": "[toLower(parameters('storageAccountName'))]", "type": "Microsoft.Storage/storageAccounts", "location": "[resourceGroup().location]", - "apiVersion": "2015-06-15", - "dependsOn": [], + "apiVersion": "2022-05-01", "tags": { "displayName": "storageaccount" }, - "properties": { - "accountType": "[parameters('storageAccountType')]" - } + "sku": { + "name": "[parameters('storageAccountType')]" + }, + "properties": {} } ] } diff --git a/armtemplates/latest/BoldReportsAppServiceTemplate.json b/armtemplates/latest/BoldReportsAppServiceTemplate.json index 94c6b7ddb..f5f0eadac 100644 --- a/armtemplates/latest/BoldReportsAppServiceTemplate.json +++ b/armtemplates/latest/BoldReportsAppServiceTemplate.json @@ -10,6 +10,18 @@ "description": "App name for Bold Reports Server. The name must be between 3 and 24 characters long, and can contain only numbers and lowercase letters." } }, + "appServicePlanSize": { + "type": "string", + "allowedValues": [ + "P1V3_2Core_8GB_DEV", + "P2V3_4Core_16GB_PROD", + "P3V3_8Core_32GB_PROD" + ], + "defaultValue": "P1V3_2Core_8GB_DEV", + "metadata": { + "description": "The pricing tier size for the App Service Plan." + } + }, "storageAccountName": { "type": "string", "maxLength": 24, @@ -33,7 +45,7 @@ } }, "variables": { - "templatelink": "https://raw.githubusercontent.com/boldreports/bold-reports-azure/master/armtemplates/v10.1.11/AzureBlobStorage-BoldReports.json" + "templatelink": "https://raw.githubusercontent.com/boldreports/bold-reports-azure/master/armtemplates/latest/AzureBlobStorage-BoldReports.json" }, "resources": [ {