From e7f43b325664479c485dc7a98396ce0b5e7181b7 Mon Sep 17 00:00:00 2001 From: "openapi-bot[bot]" <37845953+openapi-bot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2019 06:27:11 +0000 Subject: [PATCH] [AutoPR Microsoft.Azure.Management.Compute] Add VMScaleSet ScaleIn Policy (#137) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * [AutoPR Microsoft.Azure.Management.HealthcareApis] Move to stable version (#134) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 98f6703f2854ce61a22c8ba99a243a3ecb85ec8c Updated the way we retrieve version parameter * [AutoPR Microsoft.Azure.Management.DataFactory] Chainingtrigger (#163) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 5e1bb35d5c3314d8f4fead76c3d69a2522be026b Update review comments * [AutoPR Microsoft.Azure.Management.EventHub] Eventhub: added NetworkRuleSets list API (#155) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 8bc2a7edfeebb1a6bb30abbbb03d08bf1f8a8dbc update * [AutoPR Microsoft.Azure.Management.Compute] [Compute] Add missing $expand parameter to AvSet list by subscription API (#165) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from ed6acf4e35d75fc3c1c9e617b7131e83b6f59384 Add missing $expand parameter to AvSet list by subscription API * [AutoPR Microsoft.Azure.Management.CognitiveServices] Fix check domain path (#147) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 111d1bc1666fe89cebb960135cf2f5336bbcb35a Removed rogue file * Generated from ba2bfe74bad69d5419a8966d712ebb7fbee44941 (#170) removed pageable * [AutoPR Microsoft.Azure.Management.DataFactory] [Data Factory]Add ORC Dataset/Copy Source/Copy Sink (#143) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 864a2b3827b7237d7cb60d77069b693dcbaf7001 [DataFactory]Add support for ORC dataset * [AutoPR Microsoft.Azure.Management.DataFactory] [Datafactory] Add a new property in Office365 connector (#166) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * [AutoPR Microsoft.Azure.Management.HealthcareApis] Move to stable version (#134) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 98f6703f2854ce61a22c8ba99a243a3ecb85ec8c Updated the way we retrieve version parameter * [AutoPR Microsoft.Azure.Management.DataFactory] Chainingtrigger (#163) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 5e1bb35d5c3314d8f4fead76c3d69a2522be026b Update review comments * [AutoPR Microsoft.Azure.Management.EventHub] Eventhub: added NetworkRuleSets list API (#155) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 8bc2a7edfeebb1a6bb30abbbb03d08bf1f8a8dbc update * Generated from eb6cdadb1aa229489cd5d7108cf02ba799416f40 Resovle comments * [AutoPR Microsoft.Azure.Management.ContainerService] Container Services: add java package 2019 08 01 (#172) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * [AutoPR Microsoft.Azure.Management.HealthcareApis] Move to stable version (#134) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 98f6703f2854ce61a22c8ba99a243a3ecb85ec8c Updated the way we retrieve version parameter * [AutoPR Microsoft.Azure.Management.DataFactory] Chainingtrigger (#163) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 5e1bb35d5c3314d8f4fead76c3d69a2522be026b Update review comments * [AutoPR Microsoft.Azure.Management.EventHub] Eventhub: added NetworkRuleSets list API (#155) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 8bc2a7edfeebb1a6bb30abbbb03d08bf1f8a8dbc update * [AutoPR Microsoft.Azure.Management.Compute] [Compute] Add missing $expand parameter to AvSet list by subscription API (#165) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from ed6acf4e35d75fc3c1c9e617b7131e83b6f59384 Add missing $expand parameter to AvSet list by subscription API * [AutoPR Microsoft.Azure.Management.CognitiveServices] Fix check domain path (#147) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 111d1bc1666fe89cebb960135cf2f5336bbcb35a Removed rogue file * Generated from ba2bfe74bad69d5419a8966d712ebb7fbee44941 (#170) removed pageable * [AutoPR Microsoft.Azure.Management.DataFactory] [Data Factory]Add ORC Dataset/Copy Source/Copy Sink (#143) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 864a2b3827b7237d7cb60d77069b693dcbaf7001 [DataFactory]Add support for ORC dataset * [AutoPR Microsoft.Azure.Management.DataFactory] [Datafactory] Add a new property in Office365 connector (#166) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * [AutoPR Microsoft.Azure.Management.HealthcareApis] Move to stable version (#134) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 98f6703f2854ce61a22c8ba99a243a3ecb85ec8c Updated the way we retrieve version parameter * [AutoPR Microsoft.Azure.Management.DataFactory] Chainingtrigger (#163) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 5e1bb35d5c3314d8f4fead76c3d69a2522be026b Update review comments * [AutoPR Microsoft.Azure.Management.EventHub] Eventhub: added NetworkRuleSets list API (#155) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 8bc2a7edfeebb1a6bb30abbbb03d08bf1f8a8dbc update * Generated from eb6cdadb1aa229489cd5d7108cf02ba799416f40 Resovle comments * Generated from 65a64690d9907f680b0070b16416ed61391f7d90 fix: not to remove 2019-06 tag in multiapi * [AutoPR Microsoft.Azure.Management.IotHub] [Hub Generated] Review request for Microsoft.Devices to add version stable/2019-03-22 (#173) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * [AutoPR Microsoft.Azure.Management.HealthcareApis] Move to stable version (#134) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 98f6703f2854ce61a22c8ba99a243a3ecb85ec8c Updated the way we retrieve version parameter * [AutoPR Microsoft.Azure.Management.DataFactory] Chainingtrigger (#163) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 5e1bb35d5c3314d8f4fead76c3d69a2522be026b Update review comments * [AutoPR Microsoft.Azure.Management.EventHub] Eventhub: added NetworkRuleSets list API (#155) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 8bc2a7edfeebb1a6bb30abbbb03d08bf1f8a8dbc update * [AutoPR Microsoft.Azure.Management.Compute] [Compute] Add missing $expand parameter to AvSet list by subscription API (#165) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from ed6acf4e35d75fc3c1c9e617b7131e83b6f59384 Add missing $expand parameter to AvSet list by subscription API * [AutoPR Microsoft.Azure.Management.CognitiveServices] Fix check domain path (#147) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 111d1bc1666fe89cebb960135cf2f5336bbcb35a Removed rogue file * Generated from ba2bfe74bad69d5419a8966d712ebb7fbee44941 (#170) removed pageable * [AutoPR Microsoft.Azure.Management.DataFactory] [Data Factory]Add ORC Dataset/Copy Source/Copy Sink (#143) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 864a2b3827b7237d7cb60d77069b693dcbaf7001 [DataFactory]Add support for ORC dataset * [AutoPR Microsoft.Azure.Management.DataFactory] [Datafactory] Add a new property in Office365 connector (#166) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * [AutoPR Microsoft.Azure.Management.HealthcareApis] Move to stable version (#134) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 98f6703f2854ce61a22c8ba99a243a3ecb85ec8c Updated the way we retrieve version parameter * [AutoPR Microsoft.Azure.Management.DataFactory] Chainingtrigger (#163) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 5e1bb35d5c3314d8f4fead76c3d69a2522be026b Update review comments * [AutoPR Microsoft.Azure.Management.EventHub] Eventhub: added NetworkRuleSets list API (#155) * Generated from cce264ba7c751076c58518d67e19b9e469832c0c (#136) Update ListLegacyPeerings.json * Generated from 92006e420d65cb70e4b93bc5850af575da4efb78 (#162) Mark "provisioningState" as read-only * Generated from 8bc2a7edfeebb1a6bb30abbbb03d08bf1f8a8dbc update * Generated from eb6cdadb1aa229489cd5d7108cf02ba799416f40 Resovle comments * Generated from f05eef4a3235f304777a2a1489423c6bb11335e9 Update iothub.json * Generated from 0382c5495183ec9676153aca02fa21e186ef98d3 (#108) naming and mismatch * Generated from b9be4bd083f2d38c8153aa00955739f41afc64ff Fix indentation Fix indentation --- .../src/Generated/Models/ScaleInPolicy.cs | 92 +++++++++++++++++++ .../Models/VirtualMachineScaleSet.cs | 14 ++- .../VirtualMachineScaleSetScaleInRules.cs | 23 +++++ .../Models/VirtualMachineScaleSetUpdate.cs | 14 ++- 4 files changed, 141 insertions(+), 2 deletions(-) create mode 100644 sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/ScaleInPolicy.cs create mode 100644 sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetScaleInRules.cs diff --git a/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/ScaleInPolicy.cs b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/ScaleInPolicy.cs new file mode 100644 index 0000000000000..894e661e2ff56 --- /dev/null +++ b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/ScaleInPolicy.cs @@ -0,0 +1,92 @@ +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for +// license information. +// +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. +// + +namespace Microsoft.Azure.Management.Compute.Models +{ + using Newtonsoft.Json; + using System.Collections; + using System.Collections.Generic; + using System.Linq; + + /// + /// Describes a scale-in policy for a virtual machine scale set. + /// + public partial class ScaleInPolicy + { + /// + /// Initializes a new instance of the ScaleInPolicy class. + /// + public ScaleInPolicy() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ScaleInPolicy class. + /// + /// The rules to be followed when scaling-in a + /// virtual machine scale set. <br><br> Possible values + /// are: <br><br> **Default** When a virtual machine scale + /// set is scaled in, the scale set will first be balanced across zones + /// if it is a zonal scale set. Then, it will be balanced across Fault + /// Domains as far as possible. Within each Fault Domain, the virtual + /// machines chosen for removal will be the newest ones that are not + /// protected from scale-in. <br><br> **OldestVM** When a + /// virtual machine scale set is being scaled-in, the oldest virtual + /// machines that are not protected from scale-in will be chosen for + /// removal. For zonal virtual machine scale sets, the scale set will + /// first be balanced across zones. Within each zone, the oldest + /// virtual machines that are not protected will be chosen for removal. + /// <br><br> **NewestVM** When a virtual machine scale set + /// is being scaled-in, the newest virtual machines that are not + /// protected from scale-in will be chosen for removal. For zonal + /// virtual machine scale sets, the scale set will first be balanced + /// across zones. Within each zone, the newest virtual machines that + /// are not protected will be chosen for removal. + /// <br><br> + public ScaleInPolicy(IList rules = default(IList)) + { + Rules = rules; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + /// + /// Gets or sets the rules to be followed when scaling-in a virtual + /// machine scale set. &lt;br&gt;&lt;br&gt; Possible + /// values are: &lt;br&gt;&lt;br&gt; **Default** When a + /// virtual machine scale set is scaled in, the scale set will first be + /// balanced across zones if it is a zonal scale set. Then, it will be + /// balanced across Fault Domains as far as possible. Within each Fault + /// Domain, the virtual machines chosen for removal will be the newest + /// ones that are not protected from scale-in. + /// &lt;br&gt;&lt;br&gt; **OldestVM** When a virtual + /// machine scale set is being scaled-in, the oldest virtual machines + /// that are not protected from scale-in will be chosen for removal. + /// For zonal virtual machine scale sets, the scale set will first be + /// balanced across zones. Within each zone, the oldest virtual + /// machines that are not protected will be chosen for removal. + /// &lt;br&gt;&lt;br&gt; **NewestVM** When a virtual + /// machine scale set is being scaled-in, the newest virtual machines + /// that are not protected from scale-in will be chosen for removal. + /// For zonal virtual machine scale sets, the scale set will first be + /// balanced across zones. Within each zone, the newest virtual + /// machines that are not protected will be chosen for removal. + /// &lt;br&gt;&lt;br&gt; + /// + [JsonProperty(PropertyName = "rules")] + public IList Rules { get; set; } + + } +} diff --git a/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSet.cs b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSet.cs index b72fa2db6acf7..9564720813b18 100644 --- a/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSet.cs +++ b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSet.cs @@ -78,10 +78,13 @@ public VirtualMachineScaleSet() /// Virtual Machine Scale Set. For instance: whether the Virtual /// Machines have the capability to support attaching managed data /// disks with UltraSSD_LRS storage account type. + /// Specifies the scale-in policy that + /// decides which virtual machines are chosen for removal when a + /// Virtual Machine Scale Set is scaled-in. /// The identity of the virtual machine scale /// set, if configured. /// The virtual machine scale set zones. - public VirtualMachineScaleSet(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary), Sku sku = default(Sku), Plan plan = default(Plan), UpgradePolicy upgradePolicy = default(UpgradePolicy), VirtualMachineScaleSetVMProfile virtualMachineProfile = default(VirtualMachineScaleSetVMProfile), string provisioningState = default(string), bool? overprovision = default(bool?), bool? doNotRunExtensionsOnOverprovisionedVMs = default(bool?), string uniqueId = default(string), bool? singlePlacementGroup = default(bool?), bool? zoneBalance = default(bool?), int? platformFaultDomainCount = default(int?), SubResource proximityPlacementGroup = default(SubResource), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity), IList zones = default(IList)) + public VirtualMachineScaleSet(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary tags = default(IDictionary), Sku sku = default(Sku), Plan plan = default(Plan), UpgradePolicy upgradePolicy = default(UpgradePolicy), VirtualMachineScaleSetVMProfile virtualMachineProfile = default(VirtualMachineScaleSetVMProfile), string provisioningState = default(string), bool? overprovision = default(bool?), bool? doNotRunExtensionsOnOverprovisionedVMs = default(bool?), string uniqueId = default(string), bool? singlePlacementGroup = default(bool?), bool? zoneBalance = default(bool?), int? platformFaultDomainCount = default(int?), SubResource proximityPlacementGroup = default(SubResource), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), ScaleInPolicy scaleInPolicy = default(ScaleInPolicy), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity), IList zones = default(IList)) : base(location, id, name, type, tags) { Sku = sku; @@ -97,6 +100,7 @@ public VirtualMachineScaleSet() PlatformFaultDomainCount = platformFaultDomainCount; ProximityPlacementGroup = proximityPlacementGroup; AdditionalCapabilities = additionalCapabilities; + ScaleInPolicy = scaleInPolicy; Identity = identity; Zones = zones; CustomInit(); @@ -205,6 +209,14 @@ public VirtualMachineScaleSet() [JsonProperty(PropertyName = "properties.additionalCapabilities")] public AdditionalCapabilities AdditionalCapabilities { get; set; } + /// + /// Gets or sets specifies the scale-in policy that decides which + /// virtual machines are chosen for removal when a Virtual Machine + /// Scale Set is scaled-in. + /// + [JsonProperty(PropertyName = "properties.scaleInPolicy")] + public ScaleInPolicy ScaleInPolicy { get; set; } + /// /// Gets or sets the identity of the virtual machine scale set, if /// configured. diff --git a/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetScaleInRules.cs b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetScaleInRules.cs new file mode 100644 index 0000000000000..bbe4bf22bc332 --- /dev/null +++ b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetScaleInRules.cs @@ -0,0 +1,23 @@ +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for +// license information. +// +// Code generated by Microsoft (R) AutoRest Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. +// + +namespace Microsoft.Azure.Management.Compute.Models +{ + + /// + /// Defines values for VirtualMachineScaleSetScaleInRules. + /// + public static class VirtualMachineScaleSetScaleInRules + { + public const string Default = "Default"; + public const string OldestVM = "OldestVM"; + public const string NewestVM = "NewestVM"; + } +} diff --git a/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetUpdate.cs b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetUpdate.cs index 0f18654a44616..266834c34d7ba 100644 --- a/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetUpdate.cs +++ b/sdk/compute/Microsoft.Azure.Management.Compute/src/Generated/Models/VirtualMachineScaleSetUpdate.cs @@ -53,9 +53,12 @@ public VirtualMachineScaleSetUpdate() /// Virtual Machine Scale Set. For instance: whether the Virtual /// Machines have the capability to support attaching managed data /// disks with UltraSSD_LRS storage account type. + /// Specifies the scale-in policy that + /// decides which virtual machines are chosen for removal when a + /// Virtual Machine Scale Set is scaled-in. /// The identity of the virtual machine scale /// set, if configured. - public VirtualMachineScaleSetUpdate(IDictionary tags = default(IDictionary), Sku sku = default(Sku), Plan plan = default(Plan), UpgradePolicy upgradePolicy = default(UpgradePolicy), VirtualMachineScaleSetUpdateVMProfile virtualMachineProfile = default(VirtualMachineScaleSetUpdateVMProfile), bool? overprovision = default(bool?), bool? singlePlacementGroup = default(bool?), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity)) + public VirtualMachineScaleSetUpdate(IDictionary tags = default(IDictionary), Sku sku = default(Sku), Plan plan = default(Plan), UpgradePolicy upgradePolicy = default(UpgradePolicy), VirtualMachineScaleSetUpdateVMProfile virtualMachineProfile = default(VirtualMachineScaleSetUpdateVMProfile), bool? overprovision = default(bool?), bool? singlePlacementGroup = default(bool?), AdditionalCapabilities additionalCapabilities = default(AdditionalCapabilities), ScaleInPolicy scaleInPolicy = default(ScaleInPolicy), VirtualMachineScaleSetIdentity identity = default(VirtualMachineScaleSetIdentity)) : base(tags) { Sku = sku; @@ -65,6 +68,7 @@ public VirtualMachineScaleSetUpdate() Overprovision = overprovision; SinglePlacementGroup = singlePlacementGroup; AdditionalCapabilities = additionalCapabilities; + ScaleInPolicy = scaleInPolicy; Identity = identity; CustomInit(); } @@ -123,6 +127,14 @@ public VirtualMachineScaleSetUpdate() [JsonProperty(PropertyName = "properties.additionalCapabilities")] public AdditionalCapabilities AdditionalCapabilities { get; set; } + /// + /// Gets or sets specifies the scale-in policy that decides which + /// virtual machines are chosen for removal when a Virtual Machine + /// Scale Set is scaled-in. + /// + [JsonProperty(PropertyName = "properties.scaleInPolicy")] + public ScaleInPolicy ScaleInPolicy { get; set; } + /// /// Gets or sets the identity of the virtual machine scale set, if /// configured.