diff --git a/src/Compute/Compute/ChangeLog.md b/src/Compute/Compute/ChangeLog.md index c9aee39449a1..7d26ba48146b 100644 --- a/src/Compute/Compute/ChangeLog.md +++ b/src/Compute/Compute/ChangeLog.md @@ -20,6 +20,11 @@ --> ## Upcoming Release +* Enhanced `Set-AzDiskSecurityProfile` cmdlet with a new parameter `Shield`. + - The `Shield` parameter is a string type, with possible values of On, Off, Away. The default value is On. + - This change affects all parameter sets on the cmdlet. +* 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..a2365490cdd2 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"); @@ -54,6 +54,13 @@ public class SetAzDiskSecurityProfile : Microsoft.Azure.Commands.ResourceManager HelpMessage = "ResourceId of the disk encryption set to use for enabling encryption at rest.")] public string SecureVMDiskEncryptionSet { get; set; } + [Parameter( + Mandatory = false, + ValueFromPipelineByPropertyName = true, + HelpMessage = "Shield status of the disk. Possible values include: On, Off, Away.")] + [PSArgumentCompleter("On", "Off", "Away")] + public string Shield { get; set; } = "On"; + protected override void ProcessRecord() { if (ShouldProcess("DiskSecurityProfile", "Set")) @@ -94,8 +101,18 @@ private void Run() this.Disk.SecurityProfile.SecureVMDiskEncryptionSetId = this.SecureVMDiskEncryptionSet; } + if (this.IsParameterBound(c => c.Shield)) + { + if (this.Disk.SecurityProfile == null) + { + this.Disk.SecurityProfile = new DiskSecurityProfile(); + } + this.Disk.SecurityProfile.Shield = this.Shield; + } + WriteObject(this.Disk); } } -} \ 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..ab1740798691 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"); @@ -80,4 +80,11 @@ public string ResourceGroupName public double? CompletionPercent { get; set; } public bool? OptimizedForFrequentAttach { get; set; } } + + public partial class DiskSecurityProfile + { + public string SecurityType { get; set; } + public string SecureVMDiskEncryptionSetId { get; set; } + public string Shield { get; set; } + } }