diff --git a/sdk/provisioning/Azure.Provisioning.AppConfiguration/assets.json b/sdk/provisioning/Azure.Provisioning.AppConfiguration/assets.json index e3f4df5312cb..2828777cee70 100644 --- a/sdk/provisioning/Azure.Provisioning.AppConfiguration/assets.json +++ b/sdk/provisioning/Azure.Provisioning.AppConfiguration/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/provisioning/Azure.Provisioning.AppConfiguration", - "Tag": "net/provisioning/Azure.Provisioning.AppConfiguration_3c7936e93e" + "Tag": "net/provisioning/Azure.Provisioning.AppConfiguration_55fde9399d" } diff --git a/sdk/provisioning/Azure.Provisioning.KeyVault/assets.json b/sdk/provisioning/Azure.Provisioning.KeyVault/assets.json index fd9293b8fee5..5fe6a9c00d53 100644 --- a/sdk/provisioning/Azure.Provisioning.KeyVault/assets.json +++ b/sdk/provisioning/Azure.Provisioning.KeyVault/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/provisioning/Azure.Provisioning.KeyVault", - "Tag": "net/provisioning/Azure.Provisioning.KeyVault_cb7a21a215" + "Tag": "net/provisioning/Azure.Provisioning.KeyVault_7cbe7ccb75" } \ No newline at end of file diff --git a/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/AddingOutputs/main.bicep b/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/AddingOutputs/main.bicep index c985be0e51db..e68f042d4e2d 100644 --- a/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/AddingOutputs/main.bicep +++ b/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/AddingOutputs/main.bicep @@ -7,11 +7,11 @@ param location string = resourceGroup().location param enableSoftDelete bool = true -resource keyVault_7LloDNJK5 'Microsoft.KeyVault/vaults@2022-07-01' = { +resource keyVault_NEuaN7OeP 'Microsoft.KeyVault/vaults@2022-07-01' = { name: toLower(take('kv${uniqueString(resourceGroup().id)}', 24)) location: location properties: { - tenantId: '00000000-0000-0000-0000-000000000000' + tenantId: tenant().tenantId sku: { family: 'A' name: 'standard' @@ -21,4 +21,4 @@ resource keyVault_7LloDNJK5 'Microsoft.KeyVault/vaults@2022-07-01' = { } } -output VAULT_URI string = keyVault_7LloDNJK5.properties.vaultUri +output VAULT_URI string = keyVault_NEuaN7OeP.properties.vaultUri diff --git a/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/Sample_HelloWorld/main.bicep b/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/Sample_HelloWorld/main.bicep index 7cdc3b22636b..ffc8366edcd9 100644 --- a/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/Sample_HelloWorld/main.bicep +++ b/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/Sample_HelloWorld/main.bicep @@ -4,11 +4,11 @@ targetScope = 'resourceGroup' param location string = resourceGroup().location -resource keyVault_7LloDNJK5 'Microsoft.KeyVault/vaults@2022-07-01' = { +resource keyVault_NEuaN7OeP 'Microsoft.KeyVault/vaults@2022-07-01' = { name: toLower(take('kv${uniqueString(resourceGroup().id)}', 24)) location: location properties: { - tenantId: '00000000-0000-0000-0000-000000000000' + tenantId: tenant().tenantId sku: { family: 'A' name: 'standard' diff --git a/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/UsingParameters/main.bicep b/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/UsingParameters/main.bicep index bf85cff53d60..f61af2bf4dad 100644 --- a/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/UsingParameters/main.bicep +++ b/sdk/provisioning/Azure.Provisioning.KeyVault/tests/Infrastructure/UsingParameters/main.bicep @@ -7,11 +7,11 @@ param location string = resourceGroup().location param enableSoftDelete bool = true -resource keyVault_7LloDNJK5 'Microsoft.KeyVault/vaults@2022-07-01' = { +resource keyVault_NEuaN7OeP 'Microsoft.KeyVault/vaults@2022-07-01' = { name: toLower(take('kv${uniqueString(resourceGroup().id)}', 24)) location: location properties: { - tenantId: '00000000-0000-0000-0000-000000000000' + tenantId: tenant().tenantId sku: { family: 'A' name: 'standard' diff --git a/sdk/provisioning/Azure.Provisioning.Search/assets.json b/sdk/provisioning/Azure.Provisioning.Search/assets.json index f8e83ac2077d..491bc8c899db 100644 --- a/sdk/provisioning/Azure.Provisioning.Search/assets.json +++ b/sdk/provisioning/Azure.Provisioning.Search/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/provisioning/Azure.Provisioning.Search", - "Tag": "net/provisioning/Azure.Provisioning.Search_0f74a99f10" + "Tag": "net/provisioning/Azure.Provisioning.Search_3d009da219" } \ No newline at end of file diff --git a/sdk/provisioning/Azure.Provisioning.SignalR/assets.json b/sdk/provisioning/Azure.Provisioning.SignalR/assets.json index d4ca065f396b..9f46d7ce83e8 100644 --- a/sdk/provisioning/Azure.Provisioning.SignalR/assets.json +++ b/sdk/provisioning/Azure.Provisioning.SignalR/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/provisioning/Azure.Provisioning.SignalR", - "Tag": "" + "Tag": "net/provisioning/Azure.Provisioning.SignalR_a88305db5e" } \ No newline at end of file diff --git a/sdk/provisioning/Azure.Provisioning.Storage/assets.json b/sdk/provisioning/Azure.Provisioning.Storage/assets.json index 65ae1ebda2e0..a41e36aa7f7c 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/assets.json +++ b/sdk/provisioning/Azure.Provisioning.Storage/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/provisioning/Azure.Provisioning.Storage", - "Tag": "net/provisioning/Azure.Provisioning.Storage_bcaeab9180" + "Tag": "net/provisioning/Azure.Provisioning.Storage_13a772dbd6" } \ No newline at end of file diff --git a/sdk/provisioning/Azure.Provisioning/tests/ProvisioningTestBase.cs b/sdk/provisioning/Azure.Provisioning/tests/ProvisioningTestBase.cs index ae44e3ba1e3a..e296db9e6731 100644 --- a/sdk/provisioning/Azure.Provisioning/tests/ProvisioningTestBase.cs +++ b/sdk/provisioning/Azure.Provisioning/tests/ProvisioningTestBase.cs @@ -18,17 +18,24 @@ namespace Azure.Provisioning.Tests [AsyncOnly] public class ProvisioningTestBase : ManagementRecordedTestBase { + private DateTime _testStartTime; + protected override DateTime TestStartTime => _testStartTime; + public ProvisioningTestBase(bool async) : base(async) { + // Ignore the version of the AZ CLI used to generate the ARM template as this will differ based on the environment + JsonPathSanitizers.Add("$.._generator.version"); + JsonPathSanitizers.Add("$.._generator.templateHash"); } - protected async Task ValidateBicepAsync(BinaryData? parameters = null, bool interactiveMode = false) + [SetUp] + public void Setup() { - if (CoreTestEnvironment.GlobalIsRunningInCI) - { - return; - } + _testStartTime = base.TestStartTime; + } + protected async Task ValidateBicepAsync(BinaryData? parameters = null, bool interactiveMode = false) + { var testPath = GetOutputPath(); var client = GetArmClient(); ResourceGroupResource? rg = null; @@ -44,7 +51,7 @@ protected async Task ValidateBicepAsync(BinaryData? parameters = null, bool inte "eng", "scripts", $"Validate-Bicep.ps1 {bicepPath}"); - var processInfo = new ProcessStartInfo("pwsh.exe", args) + var processInfo = new ProcessStartInfo("pwsh", args) { UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, }; @@ -59,6 +66,9 @@ protected async Task ValidateBicepAsync(BinaryData? parameters = null, bool inte } } + // exclude the time taken to validate the bicep file + _testStartTime = DateTime.UtcNow; + ResourceIdentifier scope; if (interactiveMode) { @@ -99,33 +109,6 @@ protected async Task ValidateBicepAsync(BinaryData? parameters = null, bool inte } } - private static string GetGitRoot() - { - ProcessStartInfo startInfo = new ProcessStartInfo - { - FileName = "git", - Arguments = "rev-parse --show-toplevel", - RedirectStandardOutput = true, - UseShellExecute = false, - CreateNoWindow = true - }; - - using (Process process = Process.Start(startInfo)!) - { - process.WaitForExit(); - - if (process.ExitCode == 0) - { - string gitRoot = process.StandardOutput.ReadToEnd().Trim(); - return gitRoot; - } - else - { - throw new Exception("Failed to get the root of the Git repository."); - } - } - } - protected string GetOutputPath() { var output = Path.Combine(CoreTestEnvironment.GetSourcePath(GetType().Assembly), "Infrastructure", diff --git a/sdk/search/Azure.ResourceManager.Search/src/Customization/ArmSearchModelFactory.cs b/sdk/search/Azure.ResourceManager.Search/src/Customization/ArmSearchModelFactory.cs index 58689b403d3f..3e4cb4020038 100644 --- a/sdk/search/Azure.ResourceManager.Search/src/Customization/ArmSearchModelFactory.cs +++ b/sdk/search/Azure.ResourceManager.Search/src/Customization/ArmSearchModelFactory.cs @@ -47,12 +47,14 @@ public static SearchServiceData SearchServiceData(ResourceIdentifier id = null, systemData, tags, location, - skuName.ToString(), + // ternary operator must use a nullable instance of the type to avoid triggering the implicit cast on the null + skuName.HasValue ? new SearchServiceSkuName?(skuName.Value.ToSerialString()) : null, identity, replicaCount, partitionCount, hostingMode, - publicNetworkAccess.ToString(), + // ternary operator must use a nullable instance of the type to avoid triggering the implicit cast on the null + publicNetworkAccess.HasValue ? new SearchServicePublicInternetAccess?(publicNetworkAccess.Value.ToSerialString()) : null, status, statusDetails, provisioningState,