Skip to content

Commit 6774e5f

Browse files
Orchestration Mode
1 parent 388e6a3 commit 6774e5f

File tree

6 files changed

+62
-11
lines changed

6 files changed

+62
-11
lines changed

src/Compute/Compute/Generated/Models/PSVirtualMachineScaleSet.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ public string ResourceGroupName
6565
public PSExtendedLocation ExtendedLocation { get; set; }
6666
public IDictionary<string, string> Tags { get; set; }
6767
public PSVirtualMachineScaleSetVMProfile VirtualMachineProfile { get; set; }
68+
public string OrchestrationMode { get; set; }
6869

6970
}
7071
}

src/Compute/Compute/Generated/VirtualMachineScaleSet/Config/NewAzureRmVmssConfigCommand.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,14 @@ public partial class NewAzureRmVmssConfigCommand : Microsoft.Azure.Commands.Reso
250250
[Parameter(
251251
Mandatory = false,
252252
ValueFromPipelineByPropertyName = true)]
253-
public SwitchParameter EncryptionAtHost { get; set; }
253+
public SwitchParameter EncryptionAtHost { get; set; }
254+
255+
[Parameter(
256+
Mandatory = false,
257+
ValueFromPipelineByPropertyName = true,
258+
HelpMessage = "Specifies the orchestration mode for the virtual machine scale set.")]
259+
[PSArgumentCompleter("Uniform", "Flexible")]
260+
public string OrchestrationMode { get; set; }
254261

255262
protected override void ProcessRecord()
256263
{
@@ -652,7 +659,8 @@ private void Run()
652659
ProximityPlacementGroup = vProximityPlacementGroup,
653660
AdditionalCapabilities = vAdditionalCapabilities,
654661
ScaleInPolicy = vScaleInPolicy,
655-
Identity = vIdentity
662+
Identity = vIdentity,
663+
OrchestrationMode = this.IsParameterBound(c => c.OrchestrationMode) ? this.OrchestrationMode : null
656664
};
657665

658666
WriteObject(vVirtualMachineScaleSet);

src/Compute/Compute/Manual/VirtualMachineScaleSetCreateOrUpdateMethod.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,14 @@ public partial class NewAzureRmVmss : ComputeAutomationBaseCmdlet
188188
HelpMessage = "Fault Domain count for each placement group.")]
189189
public int PlatformFaultDomainCount { get; set; }
190190

191+
[Parameter(
192+
Mandatory = false,
193+
ParameterSetName = SimpleParameterSet,
194+
ValueFromPipelineByPropertyName = true,
195+
HelpMessage = "Specifies the orchestration mode for the virtual machine scale set.")]
196+
[PSArgumentCompleter("Uniform", "Flexible")]
197+
public string OrchestrationMode { get; set; }
198+
191199
const int FirstPortRangeStart = 50000;
192200

193201
sealed class Parameters : IParameters<VirtualMachineScaleSet>
@@ -334,7 +342,8 @@ public async Task<ResourceConfig<VirtualMachineScaleSet>> CreateConfigAsync()
334342
doNotRunExtensionsOnOverprovisionedVMs: _cmdlet.SkipExtensionsOnOverprovisionedVMs.IsPresent,
335343
encryptionAtHost : _cmdlet.EncryptionAtHost.IsPresent,
336344
platformFaultDomainCount: _cmdlet.IsParameterBound(c => c.PlatformFaultDomainCount) ? _cmdlet.PlatformFaultDomainCount : (int?)null,
337-
edgeZone: _cmdlet.EdgeZone
345+
edgeZone: _cmdlet.EdgeZone,
346+
orchestrationMode: _cmdlet.IsParameterBound(c => c.OrchestrationMode) ? _cmdlet.OrchestrationMode : null
338347
);
339348
}
340349
}

src/Compute/Compute/Strategies/ComputeRp/VirtualMachineScaleSetStrategy.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,8 @@ internal static ResourceConfig<VirtualMachineScaleSet> CreateVirtualMachineScale
6363
bool doNotRunExtensionsOnOverprovisionedVMs,
6464
bool encryptionAtHost,
6565
int? platformFaultDomainCount,
66-
string edgeZone
66+
string edgeZone,
67+
string orchestrationMode
6768
)
6869
=> Strategy.CreateResourceConfig(
6970
resourceGroup: resourceGroup,
@@ -139,7 +140,8 @@ string edgeZone
139140
{
140141
Rules = scaleInPolicy
141142
},
142-
DoNotRunExtensionsOnOverprovisionedVMs = doNotRunExtensionsOnOverprovisionedVMs ? true : (bool?)null
143+
DoNotRunExtensionsOnOverprovisionedVMs = doNotRunExtensionsOnOverprovisionedVMs ? true : (bool?)null,
144+
OrchestrationMode = (orchestrationMode == null) ? (OrchestrationMode?)null : (OrchestrationMode)Enum.Parse(typeof(OrchestrationMode), orchestrationMode, false)
143145
});
144146
}
145147
}

src/Compute/Compute/help/New-AzVmss.md

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ New-AzVmss [[-ResourceGroupName] <String>] [-VMScaleSetName] <String> [-AsJob] [
3333
[-DataDiskSizeInGb <Int32[]>] [-ProximityPlacementGroupId <String>] [-HostGroupId <String>]
3434
[-Priority <String>] [-EvictionPolicy <String>] [-MaxPrice <Double>] [-ScaleInPolicy <String[]>]
3535
[-SkipExtensionsOnOverprovisionedVMs] [-EncryptionAtHost] [-PlatformFaultDomainCount <Int32>]
36-
[-DefaultProfile <IAzureContextContainer>] [-SinglePlacementGroup] [-WhatIf] [-Confirm] [<CommonParameters>]
36+
[-OrchestrationMode <String>] [-DefaultProfile <IAzureContextContainer>] [-SinglePlacementGroup] [-WhatIf]
37+
[-Confirm] [<CommonParameters>]
3738
```
3839

3940
## DESCRIPTION
@@ -470,6 +471,21 @@ Accept pipeline input: False
470471
Accept wildcard characters: False
471472
```
472473
474+
### -OrchestrationMode
475+
Specifies the orchestration mode for the virtual machine scale set. Possible values: Uniform, Flexible
476+
477+
```yaml
478+
Type: System.String
479+
Parameter Sets: SimpleParameterSet
480+
Aliases:
481+
482+
Required: False
483+
Position: Named
484+
Default value: None
485+
Accept pipeline input: True (ByPropertyName)
486+
Accept wildcard characters: False
487+
```
488+
473489
### -PlatformFaultDomainCount
474490
Fault Domain count for each placement group.
475491
@@ -862,4 +878,3 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
862878

863879
[Update-AzVmss](./Update-AzVmss.md)
864880

865-

src/Compute/Compute/help/New-AzVmssConfig.md

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ New-AzVmssConfig [[-Overprovision] <Boolean>] [[-Location] <String>] [-EdgeZone
2727
[-BootDiagnostic <BootDiagnostics>] [-LicenseType <String>] [-Priority <String>] [-EvictionPolicy <String>]
2828
[-MaxPrice <Double>] [-TerminateScheduledEvents] [-TerminateScheduledEventNotBeforeTimeoutInMinutes <Int32>]
2929
[-ProximityPlacementGroupId <String>] [-ScaleInPolicy <String[]>] [-EncryptionAtHost]
30-
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
30+
[-OrchestrationMode <String>] [-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm]
31+
[<CommonParameters>]
3132
```
3233

3334
### ExplicitIdentityParameterSet
@@ -44,8 +45,8 @@ New-AzVmssConfig [[-Overprovision] <Boolean>] [[-Location] <String>] [-EdgeZone
4445
[-BootDiagnostic <BootDiagnostics>] [-LicenseType <String>] [-Priority <String>] [-EvictionPolicy <String>]
4546
[-MaxPrice <Double>] [-TerminateScheduledEvents] [-TerminateScheduledEventNotBeforeTimeoutInMinutes <Int32>]
4647
[-ProximityPlacementGroupId <String>] [-ScaleInPolicy <String[]>] -IdentityType <ResourceIdentityType>
47-
[-IdentityId <String[]>] [-EncryptionAtHost] [-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm]
48-
[<CommonParameters>]
48+
[-IdentityId <String[]>] [-EncryptionAtHost] [-OrchestrationMode <String>]
49+
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
4950
```
5051

5152
## DESCRIPTION
@@ -371,6 +372,21 @@ Accept pipeline input: True (ByPropertyName)
371372
Accept wildcard characters: False
372373
```
373374
375+
### -OrchestrationMode
376+
Specifies the orchestration mode for the virtual machine scale set. Possible values: Uniform, Flexible
377+
378+
```yaml
379+
Type: System.String
380+
Parameter Sets: (All)
381+
Aliases:
382+
383+
Required: False
384+
Position: Named
385+
Default value: None
386+
Accept pipeline input: True (ByPropertyName)
387+
Accept wildcard characters: False
388+
```
389+
374390
### -OsProfile
375391
Specifies the operating system profile object that contains the operating system properties for the VMSS configuration.
376392
You can use the **Set-AzVmssOsProfile** cmdlet to set this object.
@@ -807,4 +823,4 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
807823

808824
[Add-AzVmssExtension](./Add-AzVmssExtension.md)
809825

810-
[New-AzVmss](./New-AzVmss.md)
826+
[New-AzVmss](./New-AzVmss.md)

0 commit comments

Comments
 (0)