From 14f450c4c12f234049a7c18766e519b8d54ba8c8 Mon Sep 17 00:00:00 2001 From: Ram Uday Kumar <95093687+Ramudaykumar@users.noreply.github.com> Date: Mon, 2 Oct 2023 01:57:23 +0530 Subject: [PATCH] Enable Premium SSD V2 for SQL VM SKU recommendation (#2258) The SKU Recommendations include premium v2 disks for SQL VM --- .../Contracts/GetSkuRecommendationsRequest.cs | 6 ++++++ src/Microsoft.SqlTools.Migration/MigrationService.cs | 3 ++- .../Migration/MigrationServiceTests.cs | 3 ++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.SqlTools.Migration/Contracts/GetSkuRecommendationsRequest.cs b/src/Microsoft.SqlTools.Migration/Contracts/GetSkuRecommendationsRequest.cs index a32771cc..5fe35301 100644 --- a/src/Microsoft.SqlTools.Migration/Contracts/GetSkuRecommendationsRequest.cs +++ b/src/Microsoft.SqlTools.Migration/Contracts/GetSkuRecommendationsRequest.cs @@ -67,6 +67,12 @@ namespace Microsoft.SqlTools.Migration.Contracts /// List of databases to consider when generating recommendations /// public List DatabaseAllowList { get; set; } + + /// + /// Whether or not PremiumSSDV2 as a feature is enabled. + /// Defaults to false if not explicitly provided. + /// + public bool IsPremiumSSDV2Enabled { get; set; } = false; } public class GetSkuRecommendationsResult diff --git a/src/Microsoft.SqlTools.Migration/MigrationService.cs b/src/Microsoft.SqlTools.Migration/MigrationService.cs index 0b407210..b3a48681 100644 --- a/src/Microsoft.SqlTools.Migration/MigrationService.cs +++ b/src/Microsoft.SqlTools.Migration/MigrationService.cs @@ -526,7 +526,8 @@ namespace Microsoft.SqlTools.Migration { EligibleSkuCategories = null, // eligible SKU list will be adjusted with each recommendation type ScalingFactor = parameters.ScalingFactor / 100.0, - TargetEnvironment = TargetEnvironmentType.Production + TargetEnvironment = TargetEnvironmentType.Production, + IsPremiumSSDV2Enabled = parameters.IsPremiumSSDV2Enabled, }; // generate SQL DB recommendations, if applicable diff --git a/test/Microsoft.SqlTools.Migration.IntegrationTests/Migration/MigrationServiceTests.cs b/test/Microsoft.SqlTools.Migration.IntegrationTests/Migration/MigrationServiceTests.cs index 09f52d00..5e2b7674 100644 --- a/test/Microsoft.SqlTools.Migration.IntegrationTests/Migration/MigrationServiceTests.cs +++ b/test/Microsoft.SqlTools.Migration.IntegrationTests/Migration/MigrationServiceTests.cs @@ -58,7 +58,8 @@ namespace Microsoft.SqlTools.Migration.IntegrationTests.Migration EndTime = DateTime.UtcNow.ToString("yyyy-MM-dd HH:mm:ss"), PerfQueryIntervalInSec = 30, ScalingFactor = 1, - DatabaseAllowList = new List { "test", "test1" } + DatabaseAllowList = new List { "test", "test1" }, + IsPremiumSSDV2Enabled = true, }; var requestContext = RequestContextMocks.Create(r => result = r).AddErrorHandling(null);