diff --git a/src/Compute/Compute/ChangeLog.md b/src/Compute/Compute/ChangeLog.md index c9aee39449a1..119be156dff6 100644 --- a/src/Compute/Compute/ChangeLog.md +++ b/src/Compute/Compute/ChangeLog.md @@ -20,6 +20,12 @@ --> ## Upcoming Release +* Updated `Set-AzDiskSecurityProfile` cmdlet + - Added new business logic to set the `SecurityType` property to null by default unless the user specifies a value. + - This change affects all parameter sets on the cmdlet. + - Link to API tests for this feature: `{ ENTER LINK HERE }` +* Fixed `New-AzVmss` to correctly work when using `-EdgeZone` by creating the Load Balancer in the correct edge zone. +* Removed references to image aliases in `New-AzVM` and `New-AzVmss` to images that were removed. * Fixed `New-AzVmss` to correctly work when using `-EdgeZone` by creating the Load Balancer in the correct edge zone. * Removed references to image aliases in `New-AzVM` and `New-AzVmss` to images that were removed. diff --git a/src/Compute/Compute/Generated/Disk/Config/SetAzDiskSecurityProfile.cs b/src/Compute/Compute/Generated/Disk/Config/SetAzDiskSecurityProfile.cs index 47e72f79c7d6..49c62b830e3f 100644 --- a/src/Compute/Compute/Generated/Disk/Config/SetAzDiskSecurityProfile.cs +++ b/src/Compute/Compute/Generated/Disk/Config/SetAzDiskSecurityProfile.cs @@ -1,4 +1,4 @@ -// ---------------------------------------------------------------------------------- +// ---------------------------------------------------------------------------------- // // Copyright Microsoft Corporation // Licensed under the Apache License, Version 2.0 (the "License"); @@ -41,7 +41,7 @@ public class SetAzDiskSecurityProfile : Microsoft.Azure.Commands.ResourceManager public PSDisk Disk { get; set; } [Parameter( - Mandatory = true, + Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "Gets or sets the SecurityType property. Possible values include: TrustedLaunch, ConfidentialVM_DiskEncryptedWithCustomerKey, ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey")] [PSArgumentCompleter("Standard", "TrustedLaunch", "ConfidentialVM_DiskEncryptedWithCustomerKey", "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", @@ -64,33 +64,22 @@ protected override void ProcessRecord() private void Run() { - // At this time, it is impossible to set SecurityType to Standard ("") as it is a mandatory property on the backend. - // If Standard is used, then there should be no securityProfile at all for now. - if (SecurityType.ToLower() != ConstantValues.StandardSecurityType) + if (this.Disk.SecurityProfile == null) { - if(this.Disk.SecurityProfile == null) - { - this.Disk.SecurityProfile = new DiskSecurityProfile(); - } - this.Disk.SecurityProfile.SecurityType = SecurityType; + this.Disk.SecurityProfile = new DiskSecurityProfile(); } - // Allow the Standard scenario, which will be nulled out just before the .Net SDK create call for disks. - if (SecurityType.ToLower() == ConstantValues.StandardSecurityType) + if (this.IsParameterBound(c => c.SecurityType)) { - if (this.Disk.SecurityProfile == null) - { - this.Disk.SecurityProfile = new DiskSecurityProfile(); - } this.Disk.SecurityProfile.SecurityType = SecurityType; } + else + { + this.Disk.SecurityProfile.SecurityType = null; + } if (this.IsParameterBound(c => c.SecureVMDiskEncryptionSet)) { - if (this.Disk.SecurityProfile == null) - { - this.Disk.SecurityProfile = new DiskSecurityProfile(); - } this.Disk.SecurityProfile.SecureVMDiskEncryptionSetId = this.SecureVMDiskEncryptionSet; } @@ -98,4 +87,5 @@ private void Run() } } -} \ No newline at end of file +}. + diff --git a/src/Compute/Compute/Generated/Models/PSDisk.cs b/src/Compute/Compute/Generated/Models/PSDisk.cs index d257855adaae..a45f1e778339 100644 --- a/src/Compute/Compute/Generated/Models/PSDisk.cs +++ b/src/Compute/Compute/Generated/Models/PSDisk.cs @@ -1,4 +1,4 @@ -// + // // Copyright (c) Microsoft and contributors. All rights reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); @@ -81,3 +81,4 @@ public string ResourceGroupName public bool? OptimizedForFrequentAttach { get; set; } } } +. \ No newline at end of file