All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.compute.VirtualMachineScaleSet Maven / Gradle / Ivy

There is a newer version: 2.78.0
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azurenative.compute;

import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
import com.pulumi.azurenative.compute.outputs.AdditionalCapabilitiesResponse;
import com.pulumi.azurenative.compute.outputs.AutomaticRepairsPolicyResponse;
import com.pulumi.azurenative.compute.outputs.ExtendedLocationResponse;
import com.pulumi.azurenative.compute.outputs.PlanResponse;
import com.pulumi.azurenative.compute.outputs.PriorityMixPolicyResponse;
import com.pulumi.azurenative.compute.outputs.ScaleInPolicyResponse;
import com.pulumi.azurenative.compute.outputs.SkuResponse;
import com.pulumi.azurenative.compute.outputs.SpotRestorePolicyResponse;
import com.pulumi.azurenative.compute.outputs.SubResourceResponse;
import com.pulumi.azurenative.compute.outputs.UpgradePolicyResponse;
import com.pulumi.azurenative.compute.outputs.VirtualMachineScaleSetIdentityResponse;
import com.pulumi.azurenative.compute.outputs.VirtualMachineScaleSetVMProfileResponse;
import com.pulumi.core.Alias;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * Describes a Virtual Machine Scale Set.
 * Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01.
 * 
 * Other available API versions: 2015-06-15, 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01.
 * 
 * ## Example Usage
 * ### Create a VMSS with an extension that has suppressFailures enabled
 * 
 * 
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.DiagnosticsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BootDiagnosticsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetExtensionProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .diagnosticsProfile(DiagnosticsProfileArgs.builder()
 *                     .bootDiagnostics(BootDiagnosticsArgs.builder()
 *                         .enabled(true)
 *                         .storageUri("http://{existing-storage-account-name}.blob.core.windows.net")
 *                         .build())
 *                     .build())
 *                 .extensionProfile(VirtualMachineScaleSetExtensionProfileArgs.builder()
 *                     .extensions(VirtualMachineScaleSetExtensionArgs.builder()
 *                         .autoUpgradeMinorVersion(false)
 *                         .name("{extension-name}")
 *                         .publisher("{extension-Publisher}")
 *                         .settings()
 *                         .suppressFailures(true)
 *                         .type("{extension-Type}")
 *                         .typeHandlerVersion("{handler-version}")
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a VMSS with an extension with protectedSettingsFromKeyVault * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.DiagnosticsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BootDiagnosticsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetExtensionProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .diagnosticsProfile(DiagnosticsProfileArgs.builder()
 *                     .bootDiagnostics(BootDiagnosticsArgs.builder()
 *                         .enabled(true)
 *                         .storageUri("http://{existing-storage-account-name}.blob.core.windows.net")
 *                         .build())
 *                     .build())
 *                 .extensionProfile(VirtualMachineScaleSetExtensionProfileArgs.builder()
 *                     .extensions(VirtualMachineScaleSetExtensionArgs.builder()
 *                         .autoUpgradeMinorVersion(false)
 *                         .name("{extension-name}")
 *                         .protectedSettingsFromKeyVault(KeyVaultSecretReferenceArgs.builder()
 *                             .secretUrl("https://kvName.vault.azure.net/secrets/secretName/79b88b3a6f5440ffb2e73e44a0db712e")
 *                             .sourceVault(SubResourceArgs.builder()
 *                                 .id("/subscriptions/a53f7094-a16c-47af-abe4-b05c05d0d79a/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/kvName")
 *                                 .build())
 *                             .build())
 *                         .publisher("{extension-Publisher}")
 *                         .settings()
 *                         .type("{extension-Type}")
 *                         .typeHandlerVersion("{handler-version}")
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a custom-image scale set from an unmanaged generalized os image. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualHardDiskArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .image(VirtualHardDiskArgs.builder()
 *                             .uri("http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd")
 *                             .build())
 *                         .name("osDisk")
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a platform-image scale set with unmanaged os disks. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .name("osDisk")
 *                         .vhdContainers(                        
 *                             "http://{existing-storage-account-name-0}.blob.core.windows.net/vhdContainer",
 *                             "http://{existing-storage-account-name-1}.blob.core.windows.net/vhdContainer",
 *                             "http://{existing-storage-account-name-2}.blob.core.windows.net/vhdContainer",
 *                             "http://{existing-storage-account-name-3}.blob.core.windows.net/vhdContainer",
 *                             "http://{existing-storage-account-name-4}.blob.core.windows.net/vhdContainer")
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set from a custom image. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set from a generalized shared image. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set from a specialized shared image. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/mySharedGallery/images/mySharedImage")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set where nic config has DisableTcpStateTracking property * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(                    
 *                         VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                             .disableTcpStateTracking(true)
 *                             .enableAcceleratedNetworking(true)
 *                             .enableIPForwarding(true)
 *                             .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                                 .name("{vmss-name}")
 *                                 .subnet(ApiEntityReferenceArgs.builder()
 *                                     .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                     .build())
 *                                 .build())
 *                             .name("{nicConfig1-name}")
 *                             .primary(true)
 *                             .build(),
 *                         VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                             .disableTcpStateTracking(false)
 *                             .enableAcceleratedNetworking(false)
 *                             .enableIPForwarding(false)
 *                             .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                                 .name("{nicConfig2-name}")
 *                                 .primary(true)
 *                                 .privateIPAddressVersion("IPv4")
 *                                 .subnet(ApiEntityReferenceArgs.builder()
 *                                     .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name2}")
 *                                     .build())
 *                                 .build())
 *                             .name("{nicConfig2-name}")
 *                             .primary(false)
 *                             .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Application Profile * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ApplicationProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .applicationProfile(ApplicationProfileArgs.builder()
 *                     .galleryApplications(                    
 *                         VMGalleryApplicationArgs.builder()
 *                             .configurationReference("https://mystorageaccount.blob.core.windows.net/configurations/settings.config")
 *                             .enableAutomaticUpgrade(false)
 *                             .order(1)
 *                             .packageReferenceId("/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdb/resourceGroups/myresourceGroupName2/providers/Microsoft.Compute/galleries/myGallery1/applications/MyApplication1/versions/1.0")
 *                             .tags("myTag1")
 *                             .treatFailureAsDeploymentFailure(true)
 *                             .build(),
 *                         VMGalleryApplicationArgs.builder()
 *                             .packageReferenceId("/subscriptions/32c17a9e-aa7b-4ba5-a45b-e324116b6fdg/resourceGroups/myresourceGroupName3/providers/Microsoft.Compute/galleries/myGallery2/applications/MyApplication2/versions/1.1")
 *                             .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Disk Controller Type * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetHardwareProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VMSizePropertiesArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .hardwareProfile(VirtualMachineScaleSetHardwareProfileArgs.builder()
 *                     .vmSizeProperties(VMSizePropertiesArgs.builder()
 *                         .vCPUsAvailable(1)
 *                         .vCPUsPerCore(1)
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .diskControllerType("NVMe")
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .userData("RXhhbXBsZSBVc2VyRGF0YQ==")
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with DiskEncryptionSet resource in os disk and data disk. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import com.pulumi.azurenative.compute.inputs.DiskEncryptionSetParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_DS1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .dataDisks(VirtualMachineScaleSetDataDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("Empty")
 *                         .diskSizeGB(1023)
 *                         .lun(0)
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}")
 *                                 .build())
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .diskEncryptionSet(DiskEncryptionSetParametersArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}")
 *                                 .build())
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Fpga Network Interfaces. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(                    
 *                         VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                             .enableIPForwarding(true)
 *                             .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                                 .name("{vmss-name}")
 *                                 .subnet(ApiEntityReferenceArgs.builder()
 *                                     .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                     .build())
 *                                 .build())
 *                             .name("{vmss-name}")
 *                             .primary(true)
 *                             .build(),
 *                         VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                             .enableAcceleratedNetworking(false)
 *                             .enableFpga(true)
 *                             .enableIPForwarding(false)
 *                             .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                                 .name("{fpgaNic-Name}")
 *                                 .primary(true)
 *                                 .privateIPAddressVersion("IPv4")
 *                                 .subnet(ApiEntityReferenceArgs.builder()
 *                                     .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-fpga-subnet-name}")
 *                                     .build())
 *                                 .build())
 *                             .name("{fpgaNic-Name}")
 *                             .primary(false)
 *                             .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Host Encryption using encryptionAtHost property. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.PlanArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.SecurityProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .plan(PlanArgs.builder()
 *                 .name("windows2016")
 *                 .product("windows-data-science-vm")
 *                 .publisher("microsoft-ads")
 *                 .build())
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_DS1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .securityProfile(SecurityProfileArgs.builder()
 *                     .encryptionAtHost(true)
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("windows-data-science-vm")
 *                         .publisher("microsoft-ads")
 *                         .sku("windows2016")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadOnly")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with OS image scheduled events enabled. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ScheduledEventsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.OSImageNotificationProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .scheduledEventsProfile(ScheduledEventsProfileArgs.builder()
 *                     .osImageNotificationProfile(OSImageNotificationProfileArgs.builder()
 *                         .enable(true)
 *                         .notBeforeTimeout("PT15M")
 *                         .build())
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Security Posture Reference * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.AutomaticOSUpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.SecurityPostureReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("eastus2euap")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_A1")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .automaticOSUpgradePolicy(AutomaticOSUpgradePolicyArgs.builder()
 *                     .enableAutomaticOSUpgrade(true)
 *                     .build())
 *                 .mode("Automatic")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .securityPostureReference(SecurityPostureReferenceArgs.builder()
 *                     .id("/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2022-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .name("osDisk")
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with SecurityType as ConfidentialVM * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.SecurityProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.UefiSettingsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import com.pulumi.azurenative.compute.inputs.VMDiskSecurityProfileArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_DC2as_v5")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .securityProfile(SecurityProfileArgs.builder()
 *                     .securityType("ConfidentialVM")
 *                     .uefiSettings(UefiSettingsArgs.builder()
 *                         .secureBootEnabled(true)
 *                         .vTpmEnabled(true)
 *                         .build())
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("2019-datacenter-cvm")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("windows-cvm")
 *                         .version("17763.2183.2109130127")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadOnly")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .securityProfile(VMDiskSecurityProfileArgs.builder()
 *                                 .securityEncryptionType("VMGuestStateOnly")
 *                                 .build())
 *                             .storageAccountType("StandardSSD_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Service Artifact Reference * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.AutomaticOSUpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ServiceArtifactReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("eastus2euap")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_A1")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .automaticOSUpgradePolicy(AutomaticOSUpgradePolicyArgs.builder()
 *                     .enableAutomaticOSUpgrade(true)
 *                     .build())
 *                 .mode("Automatic")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .serviceArtifactReference(ServiceArtifactReferenceArgs.builder()
 *                     .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/serviceArtifacts/serviceArtifactName/vmArtifactsProfiles/vmArtifactsProfilesName")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2022-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .name("osDisk")
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with Uefi Settings of secureBoot and vTPM. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.SecurityProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.UefiSettingsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D2s_v3")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .securityProfile(SecurityProfileArgs.builder()
 *                     .securityType("TrustedLaunch")
 *                     .uefiSettings(UefiSettingsArgs.builder()
 *                         .secureBootEnabled(true)
 *                         .vTpmEnabled(true)
 *                         .build())
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("windowsserver-gen2preview-preview")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("windows10-tvm")
 *                         .version("18363.592.2001092016")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadOnly")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("StandardSSD_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with a marketplace image plan. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.PlanArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .plan(PlanArgs.builder()
 *                 .name("windows2016")
 *                 .product("windows-data-science-vm")
 *                 .publisher("microsoft-ads")
 *                 .build())
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("windows-data-science-vm")
 *                         .publisher("microsoft-ads")
 *                         .sku("windows2016")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with an azure application gateway. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .applicationGatewayBackendAddressPools(SubResourceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/{existing-application-gateway-name}/backendAddressPools/{existing-backend-address-pool-name}")
 *                                 .build())
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with an azure load balancer. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .loadBalancerBackendAddressPools(SubResourceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/backendAddressPools/{existing-backend-address-pool-name}")
 *                                 .build())
 *                             .loadBalancerInboundNatPools(SubResourceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/inboundNatPools/{existing-nat-pool-name}")
 *                                 .build())
 *                             .name("{vmss-name}")
 *                             .publicIPAddressConfiguration(VirtualMachineScaleSetPublicIPAddressConfigurationArgs.builder()
 *                                 .name("{vmss-name}")
 *                                 .publicIPAddressVersion("IPv4")
 *                                 .build())
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with automatic repairs enabled * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.AutomaticRepairsPolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .automaticRepairsPolicy(AutomaticRepairsPolicyArgs.builder()
 *                 .enabled(true)
 *                 .gracePeriod("PT10M")
 *                 .build())
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with boot diagnostics. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.DiagnosticsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BootDiagnosticsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .diagnosticsProfile(DiagnosticsProfileArgs.builder()
 *                     .bootDiagnostics(BootDiagnosticsArgs.builder()
 *                         .enabled(true)
 *                         .storageUri("http://{existing-storage-account-name}.blob.core.windows.net")
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with empty data disks on each vm. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D2_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .dataDisks(                    
 *                         VirtualMachineScaleSetDataDiskArgs.builder()
 *                             .createOption("Empty")
 *                             .diskSizeGB(1023)
 *                             .lun(0)
 *                             .build(),
 *                         VirtualMachineScaleSetDataDiskArgs.builder()
 *                             .createOption("Empty")
 *                             .diskSizeGB(1023)
 *                             .lun(1)
 *                             .build())
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .diskSizeGB(512)
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with ephemeral os disks using placement property. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.PlanArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.DiffDiskSettingsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .plan(PlanArgs.builder()
 *                 .name("windows2016")
 *                 .product("windows-data-science-vm")
 *                 .publisher("microsoft-ads")
 *                 .build())
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_DS1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("windows-data-science-vm")
 *                         .publisher("microsoft-ads")
 *                         .sku("windows2016")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadOnly")
 *                         .createOption("FromImage")
 *                         .diffDiskSettings(DiffDiskSettingsArgs.builder()
 *                             .option("Local")
 *                             .placement("ResourceDisk")
 *                             .build())
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with ephemeral os disks. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.PlanArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.DiffDiskSettingsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .plan(PlanArgs.builder()
 *                 .name("windows2016")
 *                 .product("windows-data-science-vm")
 *                 .publisher("microsoft-ads")
 *                 .build())
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_DS1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("windows-data-science-vm")
 *                         .publisher("microsoft-ads")
 *                         .sku("windows2016")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadOnly")
 *                         .createOption("FromImage")
 *                         .diffDiskSettings(DiffDiskSettingsArgs.builder()
 *                             .option("Local")
 *                             .build())
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with extension time budget. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.DiagnosticsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BootDiagnosticsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetExtensionProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .diagnosticsProfile(DiagnosticsProfileArgs.builder()
 *                     .bootDiagnostics(BootDiagnosticsArgs.builder()
 *                         .enabled(true)
 *                         .storageUri("http://{existing-storage-account-name}.blob.core.windows.net")
 *                         .build())
 *                     .build())
 *                 .extensionProfile(VirtualMachineScaleSetExtensionProfileArgs.builder()
 *                     .extensions(VirtualMachineScaleSetExtensionArgs.builder()
 *                         .autoUpgradeMinorVersion(false)
 *                         .name("{extension-name}")
 *                         .publisher("{extension-Publisher}")
 *                         .settings()
 *                         .type("{extension-Type}")
 *                         .typeHandlerVersion("{handler-version}")
 *                         .build())
 *                     .extensionsTimeBudget("PT1H20M")
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with managed boot diagnostics. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.DiagnosticsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BootDiagnosticsArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .diagnosticsProfile(DiagnosticsProfileArgs.builder()
 *                     .bootDiagnostics(BootDiagnosticsArgs.builder()
 *                         .enabled(true)
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with password authentication. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with premium storage. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Premium_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with priority mix policy * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.PriorityMixPolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BillingProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .orchestrationMode("Flexible")
 *             .priorityMixPolicy(PriorityMixPolicyArgs.builder()
 *                 .baseRegularPriorityCount(4)
 *                 .regularPriorityPercentageAboveBase(50)
 *                 .build())
 *             .resourceGroupName("myResourceGroup")
 *             .singlePlacementGroup(false)
 *             .sku(SkuArgs.builder()
 *                 .capacity(10)
 *                 .name("Standard_A8m_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .billingProfile(BillingProfileArgs.builder()
 *                     .maxPrice(-1)
 *                     .build())
 *                 .evictionPolicy("Deallocate")
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .priority("Spot")
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with scaleInPolicy. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.ScaleInPolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .scaleInPolicy(ScaleInPolicyArgs.builder()
 *                 .forceDeletion(true)
 *                 .rules("OldestVM")
 *                 .build())
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with spot restore policy * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.SpotRestorePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.BillingProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(2)
 *                 .name("Standard_A8m_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .spotRestorePolicy(SpotRestorePolicyArgs.builder()
 *                 .enabled(true)
 *                 .restoreTimeout("PT1H")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .billingProfile(BillingProfileArgs.builder()
 *                     .maxPrice(-1)
 *                     .build())
 *                 .evictionPolicy("Deallocate")
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .priority("Spot")
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with ssh authentication. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.LinuxConfigurationArgs;
 * import com.pulumi.azurenative.compute.inputs.SshConfigurationArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .linuxConfiguration(LinuxConfigurationArgs.builder()
 *                         .disablePasswordAuthentication(true)
 *                         .ssh(SshConfigurationArgs.builder()
 *                             .publicKeys(SshPublicKeyArgs.builder()
 *                                 .keyData("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1")
 *                                 .path("/home/{your-username}/.ssh/authorized_keys")
 *                                 .build())
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with terminate scheduled events enabled. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ScheduledEventsProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.TerminateNotificationProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .scheduledEventsProfile(ScheduledEventsProfileArgs.builder()
 *                     .terminateNotificationProfile(TerminateNotificationProfileArgs.builder()
 *                         .enable(true)
 *                         .notBeforeTimeout("PT5M")
 *                         .build())
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with userData. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .userData("RXhhbXBsZSBVc2VyRGF0YQ==")
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with virtual machines in different zones. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("centralus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(2)
 *                 .name("Standard_A1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Automatic")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .dataDisks(                    
 *                         VirtualMachineScaleSetDataDiskArgs.builder()
 *                             .createOption("Empty")
 *                             .diskSizeGB(1023)
 *                             .lun(0)
 *                             .build(),
 *                         VirtualMachineScaleSetDataDiskArgs.builder()
 *                             .createOption("Empty")
 *                             .diskSizeGB(1023)
 *                             .lun(1)
 *                             .build())
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .diskSizeGB(512)
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .zones(            
 *                 "1",
 *                 "3")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create a scale set with vm size properties * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetHardwareProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VMSizePropertiesArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_D1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .hardwareProfile(VirtualMachineScaleSetHardwareProfileArgs.builder()
 *                     .vmSizeProperties(VMSizePropertiesArgs.builder()
 *                         .vCPUsAvailable(1)
 *                         .vCPUsPerCore(1)
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .userData("RXhhbXBsZSBVc2VyRGF0YQ==")
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### Create or update a scale set with capacity reservation. * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSet;
 * import com.pulumi.azurenative.compute.VirtualMachineScaleSetArgs;
 * import com.pulumi.azurenative.compute.inputs.SkuArgs;
 * import com.pulumi.azurenative.compute.inputs.UpgradePolicyArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetVMProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.CapacityReservationProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.SubResourceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetNetworkProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetStorageProfileArgs;
 * import com.pulumi.azurenative.compute.inputs.ImageReferenceArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetOSDiskArgs;
 * import com.pulumi.azurenative.compute.inputs.VirtualMachineScaleSetManagedDiskParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var virtualMachineScaleSet = new VirtualMachineScaleSet("virtualMachineScaleSet", VirtualMachineScaleSetArgs.builder()
 *             .location("westus")
 *             .overprovision(true)
 *             .resourceGroupName("myResourceGroup")
 *             .sku(SkuArgs.builder()
 *                 .capacity(3)
 *                 .name("Standard_DS1_v2")
 *                 .tier("Standard")
 *                 .build())
 *             .upgradePolicy(UpgradePolicyArgs.builder()
 *                 .mode("Manual")
 *                 .build())
 *             .virtualMachineProfile(VirtualMachineScaleSetVMProfileArgs.builder()
 *                 .capacityReservation(CapacityReservationProfileArgs.builder()
 *                     .capacityReservationGroup(SubResourceArgs.builder()
 *                         .id("subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/CapacityReservationGroups/{crgName}")
 *                         .build())
 *                     .build())
 *                 .networkProfile(VirtualMachineScaleSetNetworkProfileArgs.builder()
 *                     .networkInterfaceConfigurations(VirtualMachineScaleSetNetworkConfigurationArgs.builder()
 *                         .enableIPForwarding(true)
 *                         .ipConfigurations(VirtualMachineScaleSetIPConfigurationArgs.builder()
 *                             .name("{vmss-name}")
 *                             .subnet(ApiEntityReferenceArgs.builder()
 *                                 .id("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}")
 *                                 .build())
 *                             .build())
 *                         .name("{vmss-name}")
 *                         .primary(true)
 *                         .build())
 *                     .build())
 *                 .osProfile(VirtualMachineScaleSetOSProfileArgs.builder()
 *                     .adminPassword("{your-password}")
 *                     .adminUsername("{your-username}")
 *                     .computerNamePrefix("{vmss-name}")
 *                     .build())
 *                 .storageProfile(VirtualMachineScaleSetStorageProfileArgs.builder()
 *                     .imageReference(ImageReferenceArgs.builder()
 *                         .offer("WindowsServer")
 *                         .publisher("MicrosoftWindowsServer")
 *                         .sku("2016-Datacenter")
 *                         .version("latest")
 *                         .build())
 *                     .osDisk(VirtualMachineScaleSetOSDiskArgs.builder()
 *                         .caching("ReadWrite")
 *                         .createOption("FromImage")
 *                         .managedDisk(VirtualMachineScaleSetManagedDiskParametersArgs.builder()
 *                             .storageAccountType("Standard_LRS")
 *                             .build())
 *                         .build())
 *                     .build())
 *                 .build())
 *             .vmScaleSetName("{vmss-name}")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* * ## Import * * An existing resource can be imported using its type token, name, and identifier, e.g. * * ```sh * $ pulumi import azure-native:compute:VirtualMachineScaleSet {vmss-name} /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName} * ``` * */ @ResourceType(type="azure-native:compute:VirtualMachineScaleSet") public class VirtualMachineScaleSet extends com.pulumi.resources.CustomResource { /** * Specifies additional capabilities enabled or disabled on the Virtual Machines in the 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. * */ @Export(name="additionalCapabilities", refs={AdditionalCapabilitiesResponse.class}, tree="[0]") private Output additionalCapabilities; /** * @return Specifies additional capabilities enabled or disabled on the Virtual Machines in the 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. * */ public Output> additionalCapabilities() { return Codegen.optional(this.additionalCapabilities); } /** * Policy for automatic repairs. * */ @Export(name="automaticRepairsPolicy", refs={AutomaticRepairsPolicyResponse.class}, tree="[0]") private Output automaticRepairsPolicy; /** * @return Policy for automatic repairs. * */ public Output> automaticRepairsPolicy() { return Codegen.optional(this.automaticRepairsPolicy); } /** * Optional property which must either be set to True or omitted. * */ @Export(name="constrainedMaximumCapacity", refs={Boolean.class}, tree="[0]") private Output constrainedMaximumCapacity; /** * @return Optional property which must either be set to True or omitted. * */ public Output> constrainedMaximumCapacity() { return Codegen.optional(this.constrainedMaximumCapacity); } /** * When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs. * */ @Export(name="doNotRunExtensionsOnOverprovisionedVMs", refs={Boolean.class}, tree="[0]") private Output doNotRunExtensionsOnOverprovisionedVMs; /** * @return When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs. * */ public Output> doNotRunExtensionsOnOverprovisionedVMs() { return Codegen.optional(this.doNotRunExtensionsOnOverprovisionedVMs); } /** * The extended location of the Virtual Machine Scale Set. * */ @Export(name="extendedLocation", refs={ExtendedLocationResponse.class}, tree="[0]") private Output extendedLocation; /** * @return The extended location of the Virtual Machine Scale Set. * */ public Output> extendedLocation() { return Codegen.optional(this.extendedLocation); } /** * Specifies information about the dedicated host group that the virtual machine scale set resides in. Minimum api-version: 2020-06-01. * */ @Export(name="hostGroup", refs={SubResourceResponse.class}, tree="[0]") private Output hostGroup; /** * @return Specifies information about the dedicated host group that the virtual machine scale set resides in. Minimum api-version: 2020-06-01. * */ public Output> hostGroup() { return Codegen.optional(this.hostGroup); } /** * The identity of the virtual machine scale set, if configured. * */ @Export(name="identity", refs={VirtualMachineScaleSetIdentityResponse.class}, tree="[0]") private Output identity; /** * @return The identity of the virtual machine scale set, if configured. * */ public Output> identity() { return Codegen.optional(this.identity); } /** * Resource location * */ @Export(name="location", refs={String.class}, tree="[0]") private Output location; /** * @return Resource location * */ public Output location() { return this.location; } /** * Resource name * */ @Export(name="name", refs={String.class}, tree="[0]") private Output name; /** * @return Resource name * */ public Output name() { return this.name; } /** * Specifies the orchestration mode for the virtual machine scale set. * */ @Export(name="orchestrationMode", refs={String.class}, tree="[0]") private Output orchestrationMode; /** * @return Specifies the orchestration mode for the virtual machine scale set. * */ public Output> orchestrationMode() { return Codegen.optional(this.orchestrationMode); } /** * Specifies whether the Virtual Machine Scale Set should be overprovisioned. * */ @Export(name="overprovision", refs={Boolean.class}, tree="[0]") private Output overprovision; /** * @return Specifies whether the Virtual Machine Scale Set should be overprovisioned. * */ public Output> overprovision() { return Codegen.optional(this.overprovision); } /** * Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**. * */ @Export(name="plan", refs={PlanResponse.class}, tree="[0]") private Output plan; /** * @return Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**. * */ public Output> plan() { return Codegen.optional(this.plan); } /** * Fault Domain count for each placement group. * */ @Export(name="platformFaultDomainCount", refs={Integer.class}, tree="[0]") private Output platformFaultDomainCount; /** * @return Fault Domain count for each placement group. * */ public Output> platformFaultDomainCount() { return Codegen.optional(this.platformFaultDomainCount); } /** * Specifies the desired targets for mixing Spot and Regular priority VMs within the same VMSS Flex instance. * */ @Export(name="priorityMixPolicy", refs={PriorityMixPolicyResponse.class}, tree="[0]") private Output priorityMixPolicy; /** * @return Specifies the desired targets for mixing Spot and Regular priority VMs within the same VMSS Flex instance. * */ public Output> priorityMixPolicy() { return Codegen.optional(this.priorityMixPolicy); } /** * The provisioning state, which only appears in the response. * */ @Export(name="provisioningState", refs={String.class}, tree="[0]") private Output provisioningState; /** * @return The provisioning state, which only appears in the response. * */ public Output provisioningState() { return this.provisioningState; } /** * Specifies information about the proximity placement group that the virtual machine scale set should be assigned to. Minimum api-version: 2018-04-01. * */ @Export(name="proximityPlacementGroup", refs={SubResourceResponse.class}, tree="[0]") private Output proximityPlacementGroup; /** * @return Specifies information about the proximity placement group that the virtual machine scale set should be assigned to. Minimum api-version: 2018-04-01. * */ public Output> proximityPlacementGroup() { return Codegen.optional(this.proximityPlacementGroup); } /** * Specifies the policies applied when scaling in Virtual Machines in the Virtual Machine Scale Set. * */ @Export(name="scaleInPolicy", refs={ScaleInPolicyResponse.class}, tree="[0]") private Output scaleInPolicy; /** * @return Specifies the policies applied when scaling in Virtual Machines in the Virtual Machine Scale Set. * */ public Output> scaleInPolicy() { return Codegen.optional(this.scaleInPolicy); } /** * When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true. * */ @Export(name="singlePlacementGroup", refs={Boolean.class}, tree="[0]") private Output singlePlacementGroup; /** * @return When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true. * */ public Output> singlePlacementGroup() { return Codegen.optional(this.singlePlacementGroup); } /** * The virtual machine scale set sku. * */ @Export(name="sku", refs={SkuResponse.class}, tree="[0]") private Output sku; /** * @return The virtual machine scale set sku. * */ public Output> sku() { return Codegen.optional(this.sku); } /** * Specifies the Spot Restore properties for the virtual machine scale set. * */ @Export(name="spotRestorePolicy", refs={SpotRestorePolicyResponse.class}, tree="[0]") private Output spotRestorePolicy; /** * @return Specifies the Spot Restore properties for the virtual machine scale set. * */ public Output> spotRestorePolicy() { return Codegen.optional(this.spotRestorePolicy); } /** * Resource tags * */ @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") private Output> tags; /** * @return Resource tags * */ public Output>> tags() { return Codegen.optional(this.tags); } /** * Specifies the time at which the Virtual Machine Scale Set resource was created. Minimum api-version: 2021-11-01. * */ @Export(name="timeCreated", refs={String.class}, tree="[0]") private Output timeCreated; /** * @return Specifies the time at which the Virtual Machine Scale Set resource was created. Minimum api-version: 2021-11-01. * */ public Output timeCreated() { return this.timeCreated; } /** * Resource type * */ @Export(name="type", refs={String.class}, tree="[0]") private Output type; /** * @return Resource type * */ public Output type() { return this.type; } /** * Specifies the ID which uniquely identifies a Virtual Machine Scale Set. * */ @Export(name="uniqueId", refs={String.class}, tree="[0]") private Output uniqueId; /** * @return Specifies the ID which uniquely identifies a Virtual Machine Scale Set. * */ public Output uniqueId() { return this.uniqueId; } /** * The upgrade policy. * */ @Export(name="upgradePolicy", refs={UpgradePolicyResponse.class}, tree="[0]") private Output upgradePolicy; /** * @return The upgrade policy. * */ public Output> upgradePolicy() { return Codegen.optional(this.upgradePolicy); } /** * The virtual machine profile. * */ @Export(name="virtualMachineProfile", refs={VirtualMachineScaleSetVMProfileResponse.class}, tree="[0]") private Output virtualMachineProfile; /** * @return The virtual machine profile. * */ public Output> virtualMachineProfile() { return Codegen.optional(this.virtualMachineProfile); } /** * Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage. zoneBalance property can only be set if the zones property of the scale set contains more than one zone. If there are no zones or only one zone specified, then zoneBalance property should not be set. * */ @Export(name="zoneBalance", refs={Boolean.class}, tree="[0]") private Output zoneBalance; /** * @return Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage. zoneBalance property can only be set if the zones property of the scale set contains more than one zone. If there are no zones or only one zone specified, then zoneBalance property should not be set. * */ public Output> zoneBalance() { return Codegen.optional(this.zoneBalance); } /** * The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set * */ @Export(name="zones", refs={List.class,String.class}, tree="[0,1]") private Output> zones; /** * @return The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set * */ public Output>> zones() { return Codegen.optional(this.zones); } /** * * @param name The _unique_ name of the resulting resource. */ public VirtualMachineScaleSet(java.lang.String name) { this(name, VirtualMachineScaleSetArgs.Empty); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ public VirtualMachineScaleSet(java.lang.String name, VirtualMachineScaleSetArgs args) { this(name, args, null); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. * @param options A bag of options that control this resource's behavior. */ public VirtualMachineScaleSet(java.lang.String name, VirtualMachineScaleSetArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:compute:VirtualMachineScaleSet", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } private VirtualMachineScaleSet(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:compute:VirtualMachineScaleSet", name, null, makeResourceOptions(options, id), false); } private static VirtualMachineScaleSetArgs makeArgs(VirtualMachineScaleSetArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } return args == null ? VirtualMachineScaleSetArgs.Empty : args; } private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() .version(Utilities.getVersion()) .aliases(List.of( Output.of(Alias.builder().type("azure-native:compute/v20150615:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20160330:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20160430preview:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20170330:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20171201:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20180401:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20180601:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20181001:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20190301:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20190701:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20191201:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20200601:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20201201:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20210301:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20210401:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20210701:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20211101:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20220301:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20220801:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20221101:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20230301:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20230701:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20230901:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20240301:VirtualMachineScaleSet").build()), Output.of(Alias.builder().type("azure-native:compute/v20240701:VirtualMachineScaleSet").build()) )) .build(); return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); } /** * Get an existing Host resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param options Optional settings to control the behavior of the CustomResource. */ public static VirtualMachineScaleSet get(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { return new VirtualMachineScaleSet(name, id, options); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy