1. Packages
  2. Azure Native
  3. API Docs
  4. batch
  5. Pool
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.33.0 published on Friday, Mar 22, 2024 by Pulumi

azure-native.batch.Pool

Explore with Pulumi AI

azure-native logo
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.33.0 published on Friday, Mar 22, 2024 by Pulumi

    Contains information about a pool. Azure REST API version: 2023-05-01. Prior API version in Azure Native 1.x: 2021-01-01.

    Other available API versions: 2020-05-01, 2023-11-01, 2024-02-01.

    Example Usage

    CreatePool - Custom Image

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Id = "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                    },
                    NodeAgentSkuId = "batch.node.ubuntu 18.04",
                },
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					ImageReference: &batch.ImageReferenceArgs{
    						Id: pulumi.String("/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1"),
    					},
    					NodeAgentSkuId: pulumi.String("batch.node.ubuntu 18.04"),
    				},
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			VmSize:            pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .imageReference(ImageReferenceArgs.builder()
                            .id("/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1")
                            .build())
                        .nodeAgentSkuId("batch.node.ubuntu 18.04")
                        .build())
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                image_reference=azure_native.batch.ImageReferenceArgs(
                    id="/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                ),
                node_agent_sku_id="batch.node.ubuntu 18.04",
            ),
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                imageReference: {
                    id: "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                },
                nodeAgentSkuId: "batch.node.ubuntu 18.04",
            },
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              imageReference:
                id: /subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1
              nodeAgentSkuId: batch.node.ubuntu 18.04
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          vmSize: STANDARD_D4
    

    CreatePool - Full CloudServiceConfiguration

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            ApplicationLicenses = new[]
            {
                "app-license0",
                "app-license1",
            },
            ApplicationPackages = new[]
            {
                new AzureNative.Batch.Inputs.ApplicationPackageReferenceArgs
                {
                    Id = "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234",
                    Version = "asdf",
                },
            },
            Certificates = new[]
            {
                new AzureNative.Batch.Inputs.CertificateReferenceArgs
                {
                    Id = "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567",
                    StoreLocation = AzureNative.Batch.CertificateStoreLocation.LocalMachine,
                    StoreName = "MY",
                    Visibility = new[]
                    {
                        AzureNative.Batch.CertificateVisibility.RemoteUser,
                    },
                },
            },
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                CloudServiceConfiguration = new AzureNative.Batch.Inputs.CloudServiceConfigurationArgs
                {
                    OsFamily = "4",
                    OsVersion = "WA-GUEST-OS-4.45_201708-01",
                },
            },
            DisplayName = "my-pool-name",
            InterNodeCommunication = AzureNative.Batch.InterNodeCommunicationState.Enabled,
            Metadata = new[]
            {
                new AzureNative.Batch.Inputs.MetadataItemArgs
                {
                    Name = "metadata-1",
                    Value = "value-1",
                },
                new AzureNative.Batch.Inputs.MetadataItemArgs
                {
                    Name = "metadata-2",
                    Value = "value-2",
                },
            },
            NetworkConfiguration = new AzureNative.Batch.Inputs.NetworkConfigurationArgs
            {
                PublicIPAddressConfiguration = new AzureNative.Batch.Inputs.PublicIPAddressConfigurationArgs
                {
                    IpAddressIds = new[]
                    {
                        "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135",
                        "/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268",
                    },
                    Provision = AzureNative.Batch.IPAddressProvisioningType.UserManaged,
                },
                SubnetId = "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            ScaleSettings = new AzureNative.Batch.Inputs.ScaleSettingsArgs
            {
                FixedScale = new AzureNative.Batch.Inputs.FixedScaleSettingsArgs
                {
                    NodeDeallocationOption = AzureNative.Batch.ComputeNodeDeallocationOption.TaskCompletion,
                    ResizeTimeout = "PT8M",
                    TargetDedicatedNodes = 6,
                    TargetLowPriorityNodes = 28,
                },
            },
            StartTask = new AzureNative.Batch.Inputs.StartTaskArgs
            {
                CommandLine = "cmd /c SET",
                EnvironmentSettings = new[]
                {
                    new AzureNative.Batch.Inputs.EnvironmentSettingArgs
                    {
                        Name = "MYSET",
                        Value = "1234",
                    },
                },
                MaxTaskRetryCount = 6,
                ResourceFiles = new[]
                {
                    new AzureNative.Batch.Inputs.ResourceFileArgs
                    {
                        FileMode = "777",
                        FilePath = "c:\\temp\\gohere",
                        HttpUrl = "https://testaccount.blob.core.windows.net/example-blob-file",
                    },
                },
                UserIdentity = new AzureNative.Batch.Inputs.UserIdentityArgs
                {
                    AutoUser = new AzureNative.Batch.Inputs.AutoUserSpecificationArgs
                    {
                        ElevationLevel = AzureNative.Batch.ElevationLevel.Admin,
                        Scope = AzureNative.Batch.AutoUserScope.Pool,
                    },
                },
                WaitForSuccess = true,
            },
            TaskSchedulingPolicy = new AzureNative.Batch.Inputs.TaskSchedulingPolicyArgs
            {
                NodeFillType = AzureNative.Batch.ComputeNodeFillType.Pack,
            },
            TaskSlotsPerNode = 13,
            UserAccounts = new[]
            {
                new AzureNative.Batch.Inputs.UserAccountArgs
                {
                    ElevationLevel = AzureNative.Batch.ElevationLevel.Admin,
                    LinuxUserConfiguration = new AzureNative.Batch.Inputs.LinuxUserConfigurationArgs
                    {
                        Gid = 4567,
                        SshPrivateKey = "sshprivatekeyvalue",
                        Uid = 1234,
                    },
                    Name = "username1",
                    Password = "<ExamplePassword>",
                },
            },
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			ApplicationLicenses: pulumi.StringArray{
    				pulumi.String("app-license0"),
    				pulumi.String("app-license1"),
    			},
    			ApplicationPackages: batch.ApplicationPackageReferenceArray{
    				&batch.ApplicationPackageReferenceArgs{
    					Id:      pulumi.String("/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234"),
    					Version: pulumi.String("asdf"),
    				},
    			},
    			Certificates: batch.CertificateReferenceArray{
    				&batch.CertificateReferenceArgs{
    					Id:            pulumi.String("/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567"),
    					StoreLocation: batch.CertificateStoreLocationLocalMachine,
    					StoreName:     pulumi.String("MY"),
    					Visibility: batch.CertificateVisibilityArray{
    						batch.CertificateVisibilityRemoteUser,
    					},
    				},
    			},
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				CloudServiceConfiguration: &batch.CloudServiceConfigurationArgs{
    					OsFamily:  pulumi.String("4"),
    					OsVersion: pulumi.String("WA-GUEST-OS-4.45_201708-01"),
    				},
    			},
    			DisplayName:            pulumi.String("my-pool-name"),
    			InterNodeCommunication: batch.InterNodeCommunicationStateEnabled,
    			Metadata: batch.MetadataItemArray{
    				&batch.MetadataItemArgs{
    					Name:  pulumi.String("metadata-1"),
    					Value: pulumi.String("value-1"),
    				},
    				&batch.MetadataItemArgs{
    					Name:  pulumi.String("metadata-2"),
    					Value: pulumi.String("value-2"),
    				},
    			},
    			NetworkConfiguration: &batch.NetworkConfigurationArgs{
    				PublicIPAddressConfiguration: &batch.PublicIPAddressConfigurationArgs{
    					IpAddressIds: pulumi.StringArray{
    						pulumi.String("/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135"),
    						pulumi.String("/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268"),
    					},
    					Provision: batch.IPAddressProvisioningTypeUserManaged,
    				},
    				SubnetId: pulumi.String("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123"),
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			ScaleSettings: &batch.ScaleSettingsArgs{
    				FixedScale: &batch.FixedScaleSettingsArgs{
    					NodeDeallocationOption: batch.ComputeNodeDeallocationOptionTaskCompletion,
    					ResizeTimeout:          pulumi.String("PT8M"),
    					TargetDedicatedNodes:   pulumi.Int(6),
    					TargetLowPriorityNodes: pulumi.Int(28),
    				},
    			},
    			StartTask: &batch.StartTaskArgs{
    				CommandLine: pulumi.String("cmd /c SET"),
    				EnvironmentSettings: batch.EnvironmentSettingArray{
    					&batch.EnvironmentSettingArgs{
    						Name:  pulumi.String("MYSET"),
    						Value: pulumi.String("1234"),
    					},
    				},
    				MaxTaskRetryCount: pulumi.Int(6),
    				ResourceFiles: batch.ResourceFileArray{
    					&batch.ResourceFileArgs{
    						FileMode: pulumi.String("777"),
    						FilePath: pulumi.String("c:\\temp\\gohere"),
    						HttpUrl:  pulumi.String("https://testaccount.blob.core.windows.net/example-blob-file"),
    					},
    				},
    				UserIdentity: &batch.UserIdentityArgs{
    					AutoUser: &batch.AutoUserSpecificationArgs{
    						ElevationLevel: batch.ElevationLevelAdmin,
    						Scope:          batch.AutoUserScopePool,
    					},
    				},
    				WaitForSuccess: pulumi.Bool(true),
    			},
    			TaskSchedulingPolicy: &batch.TaskSchedulingPolicyArgs{
    				NodeFillType: batch.ComputeNodeFillTypePack,
    			},
    			TaskSlotsPerNode: pulumi.Int(13),
    			UserAccounts: batch.UserAccountArray{
    				&batch.UserAccountArgs{
    					ElevationLevel: batch.ElevationLevelAdmin,
    					LinuxUserConfiguration: &batch.LinuxUserConfigurationArgs{
    						Gid:           pulumi.Int(4567),
    						SshPrivateKey: pulumi.String("sshprivatekeyvalue"),
    						Uid:           pulumi.Int(1234),
    					},
    					Name:     pulumi.String("username1"),
    					Password: pulumi.String("<ExamplePassword>"),
    				},
    			},
    			VmSize: pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.ApplicationPackageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.CertificateReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.CloudServiceConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.MetadataItemArgs;
    import com.pulumi.azurenative.batch.inputs.NetworkConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.PublicIPAddressConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.FixedScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.StartTaskArgs;
    import com.pulumi.azurenative.batch.inputs.UserIdentityArgs;
    import com.pulumi.azurenative.batch.inputs.AutoUserSpecificationArgs;
    import com.pulumi.azurenative.batch.inputs.TaskSchedulingPolicyArgs;
    import com.pulumi.azurenative.batch.inputs.UserAccountArgs;
    import com.pulumi.azurenative.batch.inputs.LinuxUserConfigurationArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .applicationLicenses(            
                    "app-license0",
                    "app-license1")
                .applicationPackages(ApplicationPackageReferenceArgs.builder()
                    .id("/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234")
                    .version("asdf")
                    .build())
                .certificates(CertificateReferenceArgs.builder()
                    .id("/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567")
                    .storeLocation("LocalMachine")
                    .storeName("MY")
                    .visibility("RemoteUser")
                    .build())
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .cloudServiceConfiguration(CloudServiceConfigurationArgs.builder()
                        .osFamily("4")
                        .osVersion("WA-GUEST-OS-4.45_201708-01")
                        .build())
                    .build())
                .displayName("my-pool-name")
                .interNodeCommunication("Enabled")
                .metadata(            
                    MetadataItemArgs.builder()
                        .name("metadata-1")
                        .value("value-1")
                        .build(),
                    MetadataItemArgs.builder()
                        .name("metadata-2")
                        .value("value-2")
                        .build())
                .networkConfiguration(NetworkConfigurationArgs.builder()
                    .publicIPAddressConfiguration(PublicIPAddressConfigurationArgs.builder()
                        .ipAddressIds(                    
                            "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135",
                            "/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268")
                        .provision("UserManaged")
                        .build())
                    .subnetId("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123")
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .scaleSettings(ScaleSettingsArgs.builder()
                    .fixedScale(FixedScaleSettingsArgs.builder()
                        .nodeDeallocationOption("TaskCompletion")
                        .resizeTimeout("PT8M")
                        .targetDedicatedNodes(6)
                        .targetLowPriorityNodes(28)
                        .build())
                    .build())
                .startTask(StartTaskArgs.builder()
                    .commandLine("cmd /c SET")
                    .environmentSettings(EnvironmentSettingArgs.builder()
                        .name("MYSET")
                        .value("1234")
                        .build())
                    .maxTaskRetryCount(6)
                    .resourceFiles(ResourceFileArgs.builder()
                        .fileMode("777")
                        .filePath("c:\\temp\\gohere")
                        .httpUrl("https://testaccount.blob.core.windows.net/example-blob-file")
                        .build())
                    .userIdentity(UserIdentityArgs.builder()
                        .autoUser(AutoUserSpecificationArgs.builder()
                            .elevationLevel("Admin")
                            .scope("Pool")
                            .build())
                        .build())
                    .waitForSuccess(true)
                    .build())
                .taskSchedulingPolicy(TaskSchedulingPolicyArgs.builder()
                    .nodeFillType("Pack")
                    .build())
                .taskSlotsPerNode(13)
                .userAccounts(UserAccountArgs.builder()
                    .elevationLevel("Admin")
                    .linuxUserConfiguration(LinuxUserConfigurationArgs.builder()
                        .gid(4567)
                        .sshPrivateKey("sshprivatekeyvalue")
                        .uid(1234)
                        .build())
                    .name("username1")
                    .password("<ExamplePassword>")
                    .build())
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        application_licenses=[
            "app-license0",
            "app-license1",
        ],
        application_packages=[azure_native.batch.ApplicationPackageReferenceArgs(
            id="/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234",
            version="asdf",
        )],
        certificates=[azure_native.batch.CertificateReferenceArgs(
            id="/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567",
            store_location=azure_native.batch.CertificateStoreLocation.LOCAL_MACHINE,
            store_name="MY",
            visibility=[azure_native.batch.CertificateVisibility.REMOTE_USER],
        )],
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            cloud_service_configuration=azure_native.batch.CloudServiceConfigurationArgs(
                os_family="4",
                os_version="WA-GUEST-OS-4.45_201708-01",
            ),
        ),
        display_name="my-pool-name",
        inter_node_communication=azure_native.batch.InterNodeCommunicationState.ENABLED,
        metadata=[
            azure_native.batch.MetadataItemArgs(
                name="metadata-1",
                value="value-1",
            ),
            azure_native.batch.MetadataItemArgs(
                name="metadata-2",
                value="value-2",
            ),
        ],
        network_configuration=azure_native.batch.NetworkConfigurationArgs(
            public_ip_address_configuration=azure_native.batch.PublicIPAddressConfigurationArgs(
                ip_address_ids=[
                    "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135",
                    "/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268",
                ],
                provision=azure_native.batch.IPAddressProvisioningType.USER_MANAGED,
            ),
            subnet_id="/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        scale_settings=azure_native.batch.ScaleSettingsArgs(
            fixed_scale=azure_native.batch.FixedScaleSettingsArgs(
                node_deallocation_option=azure_native.batch.ComputeNodeDeallocationOption.TASK_COMPLETION,
                resize_timeout="PT8M",
                target_dedicated_nodes=6,
                target_low_priority_nodes=28,
            ),
        ),
        start_task=azure_native.batch.StartTaskArgs(
            command_line="cmd /c SET",
            environment_settings=[azure_native.batch.EnvironmentSettingArgs(
                name="MYSET",
                value="1234",
            )],
            max_task_retry_count=6,
            resource_files=[azure_native.batch.ResourceFileArgs(
                file_mode="777",
                file_path="c:\\temp\\gohere",
                http_url="https://testaccount.blob.core.windows.net/example-blob-file",
            )],
            user_identity=azure_native.batch.UserIdentityArgs(
                auto_user=azure_native.batch.AutoUserSpecificationArgs(
                    elevation_level=azure_native.batch.ElevationLevel.ADMIN,
                    scope=azure_native.batch.AutoUserScope.POOL,
                ),
            ),
            wait_for_success=True,
        ),
        task_scheduling_policy=azure_native.batch.TaskSchedulingPolicyArgs(
            node_fill_type=azure_native.batch.ComputeNodeFillType.PACK,
        ),
        task_slots_per_node=13,
        user_accounts=[azure_native.batch.UserAccountArgs(
            elevation_level=azure_native.batch.ElevationLevel.ADMIN,
            linux_user_configuration=azure_native.batch.LinuxUserConfigurationArgs(
                gid=4567,
                ssh_private_key="sshprivatekeyvalue",
                uid=1234,
            ),
            name="username1",
            password="<ExamplePassword>",
        )],
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        applicationLicenses: [
            "app-license0",
            "app-license1",
        ],
        applicationPackages: [{
            id: "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234",
            version: "asdf",
        }],
        certificates: [{
            id: "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567",
            storeLocation: azure_native.batch.CertificateStoreLocation.LocalMachine,
            storeName: "MY",
            visibility: [azure_native.batch.CertificateVisibility.RemoteUser],
        }],
        deploymentConfiguration: {
            cloudServiceConfiguration: {
                osFamily: "4",
                osVersion: "WA-GUEST-OS-4.45_201708-01",
            },
        },
        displayName: "my-pool-name",
        interNodeCommunication: azure_native.batch.InterNodeCommunicationState.Enabled,
        metadata: [
            {
                name: "metadata-1",
                value: "value-1",
            },
            {
                name: "metadata-2",
                value: "value-2",
            },
        ],
        networkConfiguration: {
            publicIPAddressConfiguration: {
                ipAddressIds: [
                    "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135",
                    "/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268",
                ],
                provision: azure_native.batch.IPAddressProvisioningType.UserManaged,
            },
            subnetId: "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        scaleSettings: {
            fixedScale: {
                nodeDeallocationOption: azure_native.batch.ComputeNodeDeallocationOption.TaskCompletion,
                resizeTimeout: "PT8M",
                targetDedicatedNodes: 6,
                targetLowPriorityNodes: 28,
            },
        },
        startTask: {
            commandLine: "cmd /c SET",
            environmentSettings: [{
                name: "MYSET",
                value: "1234",
            }],
            maxTaskRetryCount: 6,
            resourceFiles: [{
                fileMode: "777",
                filePath: "c:\\temp\\gohere",
                httpUrl: "https://testaccount.blob.core.windows.net/example-blob-file",
            }],
            userIdentity: {
                autoUser: {
                    elevationLevel: azure_native.batch.ElevationLevel.Admin,
                    scope: azure_native.batch.AutoUserScope.Pool,
                },
            },
            waitForSuccess: true,
        },
        taskSchedulingPolicy: {
            nodeFillType: azure_native.batch.ComputeNodeFillType.Pack,
        },
        taskSlotsPerNode: 13,
        userAccounts: [{
            elevationLevel: azure_native.batch.ElevationLevel.Admin,
            linuxUserConfiguration: {
                gid: 4567,
                sshPrivateKey: "sshprivatekeyvalue",
                uid: 1234,
            },
            name: "username1",
            password: "<ExamplePassword>",
        }],
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          applicationLicenses:
            - app-license0
            - app-license1
          applicationPackages:
            - id: /subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234
              version: asdf
          certificates:
            - id: /subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567
              storeLocation: LocalMachine
              storeName: MY
              visibility:
                - RemoteUser
          deploymentConfiguration:
            cloudServiceConfiguration:
              osFamily: '4'
              osVersion: WA-GUEST-OS-4.45_201708-01
          displayName: my-pool-name
          interNodeCommunication: Enabled
          metadata:
            - name: metadata-1
              value: value-1
            - name: metadata-2
              value: value-2
          networkConfiguration:
            publicIPAddressConfiguration:
              ipAddressIds:
                - /subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135
                - /subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268
              provision: UserManaged
            subnetId: /subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          scaleSettings:
            fixedScale:
              nodeDeallocationOption: TaskCompletion
              resizeTimeout: PT8M
              targetDedicatedNodes: 6
              targetLowPriorityNodes: 28
          startTask:
            commandLine: cmd /c SET
            environmentSettings:
              - name: MYSET
                value: '1234'
            maxTaskRetryCount: 6
            resourceFiles:
              - fileMode: '777'
                filePath: c:\temp\gohere
                httpUrl: https://testaccount.blob.core.windows.net/example-blob-file
            userIdentity:
              autoUser:
                elevationLevel: Admin
                scope: Pool
            waitForSuccess: true
          taskSchedulingPolicy:
            nodeFillType: Pack
          taskSlotsPerNode: 13
          userAccounts:
            - elevationLevel: Admin
              linuxUserConfiguration:
                gid: 4567
                sshPrivateKey: sshprivatekeyvalue
                uid: 1234
              name: username1
              password: <ExamplePassword>
          vmSize: STANDARD_D4
    

    CreatePool - Full VirtualMachineConfiguration

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    DataDisks = new[]
                    {
                        new AzureNative.Batch.Inputs.DataDiskArgs
                        {
                            Caching = AzureNative.Batch.CachingType.ReadWrite,
                            DiskSizeGB = 30,
                            Lun = 0,
                            StorageAccountType = AzureNative.Batch.StorageAccountType.Premium_LRS,
                        },
                        new AzureNative.Batch.Inputs.DataDiskArgs
                        {
                            Caching = AzureNative.Batch.CachingType.None,
                            DiskSizeGB = 200,
                            Lun = 1,
                            StorageAccountType = AzureNative.Batch.StorageAccountType.Standard_LRS,
                        },
                    },
                    DiskEncryptionConfiguration = new AzureNative.Batch.Inputs.DiskEncryptionConfigurationArgs
                    {
                        Targets = new[]
                        {
                            AzureNative.Batch.DiskEncryptionTarget.OsDisk,
                            AzureNative.Batch.DiskEncryptionTarget.TemporaryDisk,
                        },
                    },
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Offer = "WindowsServer",
                        Publisher = "MicrosoftWindowsServer",
                        Sku = "2016-Datacenter-SmallDisk",
                        Version = "latest",
                    },
                    LicenseType = "Windows_Server",
                    NodeAgentSkuId = "batch.node.windows amd64",
                    NodePlacementConfiguration = new AzureNative.Batch.Inputs.NodePlacementConfigurationArgs
                    {
                        Policy = AzureNative.Batch.NodePlacementPolicyType.Zonal,
                    },
                    OsDisk = new AzureNative.Batch.Inputs.OSDiskArgs
                    {
                        EphemeralOSDiskSettings = new AzureNative.Batch.Inputs.DiffDiskSettingsArgs
                        {
                            Placement = AzureNative.Batch.DiffDiskPlacement.CacheDisk,
                        },
                    },
                    WindowsConfiguration = new AzureNative.Batch.Inputs.WindowsConfigurationArgs
                    {
                        EnableAutomaticUpdates = false,
                    },
                },
            },
            NetworkConfiguration = new AzureNative.Batch.Inputs.NetworkConfigurationArgs
            {
                EndpointConfiguration = new AzureNative.Batch.Inputs.PoolEndpointConfigurationArgs
                {
                    InboundNatPools = new[]
                    {
                        new AzureNative.Batch.Inputs.InboundNatPoolArgs
                        {
                            BackendPort = 12001,
                            FrontendPortRangeEnd = 15100,
                            FrontendPortRangeStart = 15000,
                            Name = "testnat",
                            NetworkSecurityGroupRules = new[]
                            {
                                new AzureNative.Batch.Inputs.NetworkSecurityGroupRuleArgs
                                {
                                    Access = AzureNative.Batch.NetworkSecurityGroupRuleAccess.Allow,
                                    Priority = 150,
                                    SourceAddressPrefix = "192.100.12.45",
                                    SourcePortRanges = new[]
                                    {
                                        "1",
                                        "2",
                                    },
                                },
                                new AzureNative.Batch.Inputs.NetworkSecurityGroupRuleArgs
                                {
                                    Access = AzureNative.Batch.NetworkSecurityGroupRuleAccess.Deny,
                                    Priority = 3500,
                                    SourceAddressPrefix = "*",
                                    SourcePortRanges = new[]
                                    {
                                        "*",
                                    },
                                },
                            },
                            Protocol = AzureNative.Batch.InboundEndpointProtocol.TCP,
                        },
                    },
                },
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            ScaleSettings = new AzureNative.Batch.Inputs.ScaleSettingsArgs
            {
                AutoScale = new AzureNative.Batch.Inputs.AutoScaleSettingsArgs
                {
                    EvaluationInterval = "PT5M",
                    Formula = "$TargetDedicatedNodes=1",
                },
            },
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					DataDisks: batch.DataDiskArray{
    						&batch.DataDiskArgs{
    							Caching:            batch.CachingTypeReadWrite,
    							DiskSizeGB:         pulumi.Int(30),
    							Lun:                pulumi.Int(0),
    							StorageAccountType: batch.StorageAccountType_Premium_LRS,
    						},
    						&batch.DataDiskArgs{
    							Caching:            batch.CachingTypeNone,
    							DiskSizeGB:         pulumi.Int(200),
    							Lun:                pulumi.Int(1),
    							StorageAccountType: batch.StorageAccountType_Standard_LRS,
    						},
    					},
    					DiskEncryptionConfiguration: &batch.DiskEncryptionConfigurationArgs{
    						Targets: batch.DiskEncryptionTargetArray{
    							batch.DiskEncryptionTargetOsDisk,
    							batch.DiskEncryptionTargetTemporaryDisk,
    						},
    					},
    					ImageReference: &batch.ImageReferenceArgs{
    						Offer:     pulumi.String("WindowsServer"),
    						Publisher: pulumi.String("MicrosoftWindowsServer"),
    						Sku:       pulumi.String("2016-Datacenter-SmallDisk"),
    						Version:   pulumi.String("latest"),
    					},
    					LicenseType:    pulumi.String("Windows_Server"),
    					NodeAgentSkuId: pulumi.String("batch.node.windows amd64"),
    					NodePlacementConfiguration: &batch.NodePlacementConfigurationArgs{
    						Policy: batch.NodePlacementPolicyTypeZonal,
    					},
    					OsDisk: &batch.OSDiskArgs{
    						EphemeralOSDiskSettings: &batch.DiffDiskSettingsArgs{
    							Placement: batch.DiffDiskPlacementCacheDisk,
    						},
    					},
    					WindowsConfiguration: &batch.WindowsConfigurationArgs{
    						EnableAutomaticUpdates: pulumi.Bool(false),
    					},
    				},
    			},
    			NetworkConfiguration: &batch.NetworkConfigurationArgs{
    				EndpointConfiguration: &batch.PoolEndpointConfigurationArgs{
    					InboundNatPools: batch.InboundNatPoolArray{
    						&batch.InboundNatPoolArgs{
    							BackendPort:            pulumi.Int(12001),
    							FrontendPortRangeEnd:   pulumi.Int(15100),
    							FrontendPortRangeStart: pulumi.Int(15000),
    							Name:                   pulumi.String("testnat"),
    							NetworkSecurityGroupRules: batch.NetworkSecurityGroupRuleArray{
    								&batch.NetworkSecurityGroupRuleArgs{
    									Access:              batch.NetworkSecurityGroupRuleAccessAllow,
    									Priority:            pulumi.Int(150),
    									SourceAddressPrefix: pulumi.String("192.100.12.45"),
    									SourcePortRanges: pulumi.StringArray{
    										pulumi.String("1"),
    										pulumi.String("2"),
    									},
    								},
    								&batch.NetworkSecurityGroupRuleArgs{
    									Access:              batch.NetworkSecurityGroupRuleAccessDeny,
    									Priority:            pulumi.Int(3500),
    									SourceAddressPrefix: pulumi.String("*"),
    									SourcePortRanges: pulumi.StringArray{
    										pulumi.String("*"),
    									},
    								},
    							},
    							Protocol: batch.InboundEndpointProtocolTCP,
    						},
    					},
    				},
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			ScaleSettings: &batch.ScaleSettingsArgs{
    				AutoScale: &batch.AutoScaleSettingsArgs{
    					EvaluationInterval: pulumi.String("PT5M"),
    					Formula:            pulumi.String("$TargetDedicatedNodes=1"),
    				},
    			},
    			VmSize: pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.DiskEncryptionConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.NodePlacementConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.OSDiskArgs;
    import com.pulumi.azurenative.batch.inputs.DiffDiskSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.WindowsConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.NetworkConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.PoolEndpointConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.AutoScaleSettingsArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .dataDisks(                    
                            DataDiskArgs.builder()
                                .caching("ReadWrite")
                                .diskSizeGB(30)
                                .lun(0)
                                .storageAccountType("Premium_LRS")
                                .build(),
                            DataDiskArgs.builder()
                                .caching("None")
                                .diskSizeGB(200)
                                .lun(1)
                                .storageAccountType("Standard_LRS")
                                .build())
                        .diskEncryptionConfiguration(DiskEncryptionConfigurationArgs.builder()
                            .targets(                        
                                "OsDisk",
                                "TemporaryDisk")
                            .build())
                        .imageReference(ImageReferenceArgs.builder()
                            .offer("WindowsServer")
                            .publisher("MicrosoftWindowsServer")
                            .sku("2016-Datacenter-SmallDisk")
                            .version("latest")
                            .build())
                        .licenseType("Windows_Server")
                        .nodeAgentSkuId("batch.node.windows amd64")
                        .nodePlacementConfiguration(NodePlacementConfigurationArgs.builder()
                            .policy("Zonal")
                            .build())
                        .osDisk(OSDiskArgs.builder()
                            .ephemeralOSDiskSettings(DiffDiskSettingsArgs.builder()
                                .placement("CacheDisk")
                                .build())
                            .build())
                        .windowsConfiguration(WindowsConfigurationArgs.builder()
                            .enableAutomaticUpdates(false)
                            .build())
                        .build())
                    .build())
                .networkConfiguration(NetworkConfigurationArgs.builder()
                    .endpointConfiguration(PoolEndpointConfigurationArgs.builder()
                        .inboundNatPools(InboundNatPoolArgs.builder()
                            .backendPort(12001)
                            .frontendPortRangeEnd(15100)
                            .frontendPortRangeStart(15000)
                            .name("testnat")
                            .networkSecurityGroupRules(                        
                                NetworkSecurityGroupRuleArgs.builder()
                                    .access("Allow")
                                    .priority(150)
                                    .sourceAddressPrefix("192.100.12.45")
                                    .sourcePortRanges(                                
                                        "1",
                                        "2")
                                    .build(),
                                NetworkSecurityGroupRuleArgs.builder()
                                    .access("Deny")
                                    .priority(3500)
                                    .sourceAddressPrefix("*")
                                    .sourcePortRanges("*")
                                    .build())
                            .protocol("TCP")
                            .build())
                        .build())
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .scaleSettings(ScaleSettingsArgs.builder()
                    .autoScale(AutoScaleSettingsArgs.builder()
                        .evaluationInterval("PT5M")
                        .formula("$TargetDedicatedNodes=1")
                        .build())
                    .build())
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                data_disks=[
                    azure_native.batch.DataDiskArgs(
                        caching=azure_native.batch.CachingType.READ_WRITE,
                        disk_size_gb=30,
                        lun=0,
                        storage_account_type=azure_native.batch.StorageAccountType.PREMIUM_LRS,
                    ),
                    azure_native.batch.DataDiskArgs(
                        caching=azure_native.batch.CachingType.NONE,
                        disk_size_gb=200,
                        lun=1,
                        storage_account_type=azure_native.batch.StorageAccountType.STANDARD_LRS,
                    ),
                ],
                disk_encryption_configuration=azure_native.batch.DiskEncryptionConfigurationArgs(
                    targets=[
                        azure_native.batch.DiskEncryptionTarget.OS_DISK,
                        azure_native.batch.DiskEncryptionTarget.TEMPORARY_DISK,
                    ],
                ),
                image_reference=azure_native.batch.ImageReferenceArgs(
                    offer="WindowsServer",
                    publisher="MicrosoftWindowsServer",
                    sku="2016-Datacenter-SmallDisk",
                    version="latest",
                ),
                license_type="Windows_Server",
                node_agent_sku_id="batch.node.windows amd64",
                node_placement_configuration=azure_native.batch.NodePlacementConfigurationArgs(
                    policy=azure_native.batch.NodePlacementPolicyType.ZONAL,
                ),
                os_disk=azure_native.batch.OSDiskArgs(
                    ephemeral_os_disk_settings=azure_native.batch.DiffDiskSettingsArgs(
                        placement=azure_native.batch.DiffDiskPlacement.CACHE_DISK,
                    ),
                ),
                windows_configuration=azure_native.batch.WindowsConfigurationArgs(
                    enable_automatic_updates=False,
                ),
            ),
        ),
        network_configuration=azure_native.batch.NetworkConfigurationArgs(
            endpoint_configuration=azure_native.batch.PoolEndpointConfigurationArgs(
                inbound_nat_pools=[azure_native.batch.InboundNatPoolArgs(
                    backend_port=12001,
                    frontend_port_range_end=15100,
                    frontend_port_range_start=15000,
                    name="testnat",
                    network_security_group_rules=[
                        azure_native.batch.NetworkSecurityGroupRuleArgs(
                            access=azure_native.batch.NetworkSecurityGroupRuleAccess.ALLOW,
                            priority=150,
                            source_address_prefix="192.100.12.45",
                            source_port_ranges=[
                                "1",
                                "2",
                            ],
                        ),
                        azure_native.batch.NetworkSecurityGroupRuleArgs(
                            access=azure_native.batch.NetworkSecurityGroupRuleAccess.DENY,
                            priority=3500,
                            source_address_prefix="*",
                            source_port_ranges=["*"],
                        ),
                    ],
                    protocol=azure_native.batch.InboundEndpointProtocol.TCP,
                )],
            ),
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        scale_settings=azure_native.batch.ScaleSettingsArgs(
            auto_scale=azure_native.batch.AutoScaleSettingsArgs(
                evaluation_interval="PT5M",
                formula="$TargetDedicatedNodes=1",
            ),
        ),
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                dataDisks: [
                    {
                        caching: azure_native.batch.CachingType.ReadWrite,
                        diskSizeGB: 30,
                        lun: 0,
                        storageAccountType: azure_native.batch.StorageAccountType.Premium_LRS,
                    },
                    {
                        caching: azure_native.batch.CachingType.None,
                        diskSizeGB: 200,
                        lun: 1,
                        storageAccountType: azure_native.batch.StorageAccountType.Standard_LRS,
                    },
                ],
                diskEncryptionConfiguration: {
                    targets: [
                        azure_native.batch.DiskEncryptionTarget.OsDisk,
                        azure_native.batch.DiskEncryptionTarget.TemporaryDisk,
                    ],
                },
                imageReference: {
                    offer: "WindowsServer",
                    publisher: "MicrosoftWindowsServer",
                    sku: "2016-Datacenter-SmallDisk",
                    version: "latest",
                },
                licenseType: "Windows_Server",
                nodeAgentSkuId: "batch.node.windows amd64",
                nodePlacementConfiguration: {
                    policy: azure_native.batch.NodePlacementPolicyType.Zonal,
                },
                osDisk: {
                    ephemeralOSDiskSettings: {
                        placement: azure_native.batch.DiffDiskPlacement.CacheDisk,
                    },
                },
                windowsConfiguration: {
                    enableAutomaticUpdates: false,
                },
            },
        },
        networkConfiguration: {
            endpointConfiguration: {
                inboundNatPools: [{
                    backendPort: 12001,
                    frontendPortRangeEnd: 15100,
                    frontendPortRangeStart: 15000,
                    name: "testnat",
                    networkSecurityGroupRules: [
                        {
                            access: azure_native.batch.NetworkSecurityGroupRuleAccess.Allow,
                            priority: 150,
                            sourceAddressPrefix: "192.100.12.45",
                            sourcePortRanges: [
                                "1",
                                "2",
                            ],
                        },
                        {
                            access: azure_native.batch.NetworkSecurityGroupRuleAccess.Deny,
                            priority: 3500,
                            sourceAddressPrefix: "*",
                            sourcePortRanges: ["*"],
                        },
                    ],
                    protocol: azure_native.batch.InboundEndpointProtocol.TCP,
                }],
            },
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        scaleSettings: {
            autoScale: {
                evaluationInterval: "PT5M",
                formula: "$TargetDedicatedNodes=1",
            },
        },
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              dataDisks:
                - caching: ReadWrite
                  diskSizeGB: 30
                  lun: 0
                  storageAccountType: Premium_LRS
                - caching: None
                  diskSizeGB: 200
                  lun: 1
                  storageAccountType: Standard_LRS
              diskEncryptionConfiguration:
                targets:
                  - OsDisk
                  - TemporaryDisk
              imageReference:
                offer: WindowsServer
                publisher: MicrosoftWindowsServer
                sku: 2016-Datacenter-SmallDisk
                version: latest
              licenseType: Windows_Server
              nodeAgentSkuId: batch.node.windows amd64
              nodePlacementConfiguration:
                policy: Zonal
              osDisk:
                ephemeralOSDiskSettings:
                  placement: CacheDisk
              windowsConfiguration:
                enableAutomaticUpdates: false
          networkConfiguration:
            endpointConfiguration:
              inboundNatPools:
                - backendPort: 12001
                  frontendPortRangeEnd: 15100
                  frontendPortRangeStart: 15000
                  name: testnat
                  networkSecurityGroupRules:
                    - access: Allow
                      priority: 150
                      sourceAddressPrefix: 192.100.12.45
                      sourcePortRanges:
                        - '1'
                        - '2'
                    - access: Deny
                      priority: 3500
                      sourceAddressPrefix: '*'
                      sourcePortRanges:
                        - '*'
                  protocol: TCP
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          scaleSettings:
            autoScale:
              evaluationInterval: PT5M
              formula: $TargetDedicatedNodes=1
          vmSize: STANDARD_D4
    

    CreatePool - Minimal CloudServiceConfiguration

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                CloudServiceConfiguration = new AzureNative.Batch.Inputs.CloudServiceConfigurationArgs
                {
                    OsFamily = "5",
                },
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            ScaleSettings = new AzureNative.Batch.Inputs.ScaleSettingsArgs
            {
                FixedScale = new AzureNative.Batch.Inputs.FixedScaleSettingsArgs
                {
                    TargetDedicatedNodes = 3,
                },
            },
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				CloudServiceConfiguration: &batch.CloudServiceConfigurationArgs{
    					OsFamily: pulumi.String("5"),
    				},
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			ScaleSettings: &batch.ScaleSettingsArgs{
    				FixedScale: &batch.FixedScaleSettingsArgs{
    					TargetDedicatedNodes: pulumi.Int(3),
    				},
    			},
    			VmSize: pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.CloudServiceConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.FixedScaleSettingsArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .cloudServiceConfiguration(CloudServiceConfigurationArgs.builder()
                        .osFamily("5")
                        .build())
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .scaleSettings(ScaleSettingsArgs.builder()
                    .fixedScale(FixedScaleSettingsArgs.builder()
                        .targetDedicatedNodes(3)
                        .build())
                    .build())
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            cloud_service_configuration=azure_native.batch.CloudServiceConfigurationArgs(
                os_family="5",
            ),
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        scale_settings=azure_native.batch.ScaleSettingsArgs(
            fixed_scale=azure_native.batch.FixedScaleSettingsArgs(
                target_dedicated_nodes=3,
            ),
        ),
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            cloudServiceConfiguration: {
                osFamily: "5",
            },
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        scaleSettings: {
            fixedScale: {
                targetDedicatedNodes: 3,
            },
        },
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            cloudServiceConfiguration:
              osFamily: '5'
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          scaleSettings:
            fixedScale:
              targetDedicatedNodes: 3
          vmSize: STANDARD_D4
    

    CreatePool - Minimal VirtualMachineConfiguration

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Offer = "UbuntuServer",
                        Publisher = "Canonical",
                        Sku = "18.04-LTS",
                        Version = "latest",
                    },
                    NodeAgentSkuId = "batch.node.ubuntu 18.04",
                },
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            ScaleSettings = new AzureNative.Batch.Inputs.ScaleSettingsArgs
            {
                AutoScale = new AzureNative.Batch.Inputs.AutoScaleSettingsArgs
                {
                    EvaluationInterval = "PT5M",
                    Formula = "$TargetDedicatedNodes=1",
                },
            },
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					ImageReference: &batch.ImageReferenceArgs{
    						Offer:     pulumi.String("UbuntuServer"),
    						Publisher: pulumi.String("Canonical"),
    						Sku:       pulumi.String("18.04-LTS"),
    						Version:   pulumi.String("latest"),
    					},
    					NodeAgentSkuId: pulumi.String("batch.node.ubuntu 18.04"),
    				},
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			ScaleSettings: &batch.ScaleSettingsArgs{
    				AutoScale: &batch.AutoScaleSettingsArgs{
    					EvaluationInterval: pulumi.String("PT5M"),
    					Formula:            pulumi.String("$TargetDedicatedNodes=1"),
    				},
    			},
    			VmSize: pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.ScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.AutoScaleSettingsArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .imageReference(ImageReferenceArgs.builder()
                            .offer("UbuntuServer")
                            .publisher("Canonical")
                            .sku("18.04-LTS")
                            .version("latest")
                            .build())
                        .nodeAgentSkuId("batch.node.ubuntu 18.04")
                        .build())
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .scaleSettings(ScaleSettingsArgs.builder()
                    .autoScale(AutoScaleSettingsArgs.builder()
                        .evaluationInterval("PT5M")
                        .formula("$TargetDedicatedNodes=1")
                        .build())
                    .build())
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                image_reference=azure_native.batch.ImageReferenceArgs(
                    offer="UbuntuServer",
                    publisher="Canonical",
                    sku="18.04-LTS",
                    version="latest",
                ),
                node_agent_sku_id="batch.node.ubuntu 18.04",
            ),
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        scale_settings=azure_native.batch.ScaleSettingsArgs(
            auto_scale=azure_native.batch.AutoScaleSettingsArgs(
                evaluation_interval="PT5M",
                formula="$TargetDedicatedNodes=1",
            ),
        ),
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                imageReference: {
                    offer: "UbuntuServer",
                    publisher: "Canonical",
                    sku: "18.04-LTS",
                    version: "latest",
                },
                nodeAgentSkuId: "batch.node.ubuntu 18.04",
            },
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        scaleSettings: {
            autoScale: {
                evaluationInterval: "PT5M",
                formula: "$TargetDedicatedNodes=1",
            },
        },
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              imageReference:
                offer: UbuntuServer
                publisher: Canonical
                sku: 18.04-LTS
                version: latest
              nodeAgentSkuId: batch.node.ubuntu 18.04
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          scaleSettings:
            autoScale:
              evaluationInterval: PT5M
              formula: $TargetDedicatedNodes=1
          vmSize: STANDARD_D4
    

    CreatePool - No public IP

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Id = "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                    },
                    NodeAgentSkuId = "batch.node.ubuntu 18.04",
                },
            },
            NetworkConfiguration = new AzureNative.Batch.Inputs.NetworkConfigurationArgs
            {
                PublicIPAddressConfiguration = new AzureNative.Batch.Inputs.PublicIPAddressConfigurationArgs
                {
                    Provision = AzureNative.Batch.IPAddressProvisioningType.NoPublicIPAddresses,
                },
                SubnetId = "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					ImageReference: &batch.ImageReferenceArgs{
    						Id: pulumi.String("/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1"),
    					},
    					NodeAgentSkuId: pulumi.String("batch.node.ubuntu 18.04"),
    				},
    			},
    			NetworkConfiguration: &batch.NetworkConfigurationArgs{
    				PublicIPAddressConfiguration: &batch.PublicIPAddressConfigurationArgs{
    					Provision: batch.IPAddressProvisioningTypeNoPublicIPAddresses,
    				},
    				SubnetId: pulumi.String("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123"),
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			VmSize:            pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.NetworkConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.PublicIPAddressConfigurationArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .imageReference(ImageReferenceArgs.builder()
                            .id("/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1")
                            .build())
                        .nodeAgentSkuId("batch.node.ubuntu 18.04")
                        .build())
                    .build())
                .networkConfiguration(NetworkConfigurationArgs.builder()
                    .publicIPAddressConfiguration(PublicIPAddressConfigurationArgs.builder()
                        .provision("NoPublicIPAddresses")
                        .build())
                    .subnetId("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123")
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                image_reference=azure_native.batch.ImageReferenceArgs(
                    id="/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                ),
                node_agent_sku_id="batch.node.ubuntu 18.04",
            ),
        ),
        network_configuration=azure_native.batch.NetworkConfigurationArgs(
            public_ip_address_configuration=azure_native.batch.PublicIPAddressConfigurationArgs(
                provision=azure_native.batch.IPAddressProvisioningType.NO_PUBLIC_IP_ADDRESSES,
            ),
            subnet_id="/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                imageReference: {
                    id: "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                },
                nodeAgentSkuId: "batch.node.ubuntu 18.04",
            },
        },
        networkConfiguration: {
            publicIPAddressConfiguration: {
                provision: azure_native.batch.IPAddressProvisioningType.NoPublicIPAddresses,
            },
            subnetId: "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              imageReference:
                id: /subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1
              nodeAgentSkuId: batch.node.ubuntu 18.04
          networkConfiguration:
            publicIPAddressConfiguration:
              provision: NoPublicIPAddresses
            subnetId: /subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          vmSize: STANDARD_D4
    

    CreatePool - Public IPs

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Id = "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                    },
                    NodeAgentSkuId = "batch.node.ubuntu 18.04",
                },
            },
            NetworkConfiguration = new AzureNative.Batch.Inputs.NetworkConfigurationArgs
            {
                PublicIPAddressConfiguration = new AzureNative.Batch.Inputs.PublicIPAddressConfigurationArgs
                {
                    IpAddressIds = new[]
                    {
                        "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135",
                    },
                    Provision = AzureNative.Batch.IPAddressProvisioningType.UserManaged,
                },
                SubnetId = "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					ImageReference: &batch.ImageReferenceArgs{
    						Id: pulumi.String("/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1"),
    					},
    					NodeAgentSkuId: pulumi.String("batch.node.ubuntu 18.04"),
    				},
    			},
    			NetworkConfiguration: &batch.NetworkConfigurationArgs{
    				PublicIPAddressConfiguration: &batch.PublicIPAddressConfigurationArgs{
    					IpAddressIds: pulumi.StringArray{
    						pulumi.String("/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135"),
    					},
    					Provision: batch.IPAddressProvisioningTypeUserManaged,
    				},
    				SubnetId: pulumi.String("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123"),
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			VmSize:            pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.NetworkConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.PublicIPAddressConfigurationArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .imageReference(ImageReferenceArgs.builder()
                            .id("/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1")
                            .build())
                        .nodeAgentSkuId("batch.node.ubuntu 18.04")
                        .build())
                    .build())
                .networkConfiguration(NetworkConfigurationArgs.builder()
                    .publicIPAddressConfiguration(PublicIPAddressConfigurationArgs.builder()
                        .ipAddressIds("/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135")
                        .provision("UserManaged")
                        .build())
                    .subnetId("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123")
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                image_reference=azure_native.batch.ImageReferenceArgs(
                    id="/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                ),
                node_agent_sku_id="batch.node.ubuntu 18.04",
            ),
        ),
        network_configuration=azure_native.batch.NetworkConfigurationArgs(
            public_ip_address_configuration=azure_native.batch.PublicIPAddressConfigurationArgs(
                ip_address_ids=["/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135"],
                provision=azure_native.batch.IPAddressProvisioningType.USER_MANAGED,
            ),
            subnet_id="/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                imageReference: {
                    id: "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1",
                },
                nodeAgentSkuId: "batch.node.ubuntu 18.04",
            },
        },
        networkConfiguration: {
            publicIPAddressConfiguration: {
                ipAddressIds: ["/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135"],
                provision: azure_native.batch.IPAddressProvisioningType.UserManaged,
            },
            subnetId: "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              imageReference:
                id: /subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/galleries/testgallery/images/testimagedef/versions/0.0.1
              nodeAgentSkuId: batch.node.ubuntu 18.04
          networkConfiguration:
            publicIPAddressConfiguration:
              ipAddressIds:
                - /subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135
              provision: UserManaged
            subnetId: /subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          vmSize: STANDARD_D4
    

    CreatePool - VirtualMachineConfiguration Extensions

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    Extensions = new[]
                    {
                        new AzureNative.Batch.Inputs.VMExtensionArgs
                        {
                            AutoUpgradeMinorVersion = true,
                            EnableAutomaticUpgrade = true,
                            Name = "batchextension1",
                            Publisher = "Microsoft.Azure.KeyVault",
                            Settings = 
                            {
                                { "authenticationSettingsKey", "authenticationSettingsValue" },
                                { "secretsManagementSettingsKey", "secretsManagementSettingsValue" },
                            },
                            Type = "KeyVaultForLinux",
                            TypeHandlerVersion = "2.0",
                        },
                    },
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Offer = "0001-com-ubuntu-server-focal",
                        Publisher = "Canonical",
                        Sku = "20_04-lts",
                    },
                    NodeAgentSkuId = "batch.node.ubuntu 20.04",
                },
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            ScaleSettings = new AzureNative.Batch.Inputs.ScaleSettingsArgs
            {
                AutoScale = new AzureNative.Batch.Inputs.AutoScaleSettingsArgs
                {
                    EvaluationInterval = "PT5M",
                    Formula = "$TargetDedicatedNodes=1",
                },
            },
            TargetNodeCommunicationMode = AzureNative.Batch.NodeCommunicationMode.Default,
            VmSize = "STANDARD_D4",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					Extensions: batch.VMExtensionArray{
    						&batch.VMExtensionArgs{
    							AutoUpgradeMinorVersion: pulumi.Bool(true),
    							EnableAutomaticUpgrade:  pulumi.Bool(true),
    							Name:                    pulumi.String("batchextension1"),
    							Publisher:               pulumi.String("Microsoft.Azure.KeyVault"),
    							Settings: pulumi.Any{
    								AuthenticationSettingsKey:    "authenticationSettingsValue",
    								SecretsManagementSettingsKey: "secretsManagementSettingsValue",
    							},
    							Type:               pulumi.String("KeyVaultForLinux"),
    							TypeHandlerVersion: pulumi.String("2.0"),
    						},
    					},
    					ImageReference: &batch.ImageReferenceArgs{
    						Offer:     pulumi.String("0001-com-ubuntu-server-focal"),
    						Publisher: pulumi.String("Canonical"),
    						Sku:       pulumi.String("20_04-lts"),
    					},
    					NodeAgentSkuId: pulumi.String("batch.node.ubuntu 20.04"),
    				},
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			ScaleSettings: &batch.ScaleSettingsArgs{
    				AutoScale: &batch.AutoScaleSettingsArgs{
    					EvaluationInterval: pulumi.String("PT5M"),
    					Formula:            pulumi.String("$TargetDedicatedNodes=1"),
    				},
    			},
    			TargetNodeCommunicationMode: batch.NodeCommunicationModeDefault,
    			VmSize:                      pulumi.String("STANDARD_D4"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.ScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.AutoScaleSettingsArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .extensions(VMExtensionArgs.builder()
                            .autoUpgradeMinorVersion(true)
                            .enableAutomaticUpgrade(true)
                            .name("batchextension1")
                            .publisher("Microsoft.Azure.KeyVault")
                            .settings(Map.ofEntries(
                                Map.entry("authenticationSettingsKey", "authenticationSettingsValue"),
                                Map.entry("secretsManagementSettingsKey", "secretsManagementSettingsValue")
                            ))
                            .type("KeyVaultForLinux")
                            .typeHandlerVersion("2.0")
                            .build())
                        .imageReference(ImageReferenceArgs.builder()
                            .offer("0001-com-ubuntu-server-focal")
                            .publisher("Canonical")
                            .sku("20_04-lts")
                            .build())
                        .nodeAgentSkuId("batch.node.ubuntu 20.04")
                        .build())
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .scaleSettings(ScaleSettingsArgs.builder()
                    .autoScale(AutoScaleSettingsArgs.builder()
                        .evaluationInterval("PT5M")
                        .formula("$TargetDedicatedNodes=1")
                        .build())
                    .build())
                .targetNodeCommunicationMode("Default")
                .vmSize("STANDARD_D4")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                extensions=[azure_native.batch.VMExtensionArgs(
                    auto_upgrade_minor_version=True,
                    enable_automatic_upgrade=True,
                    name="batchextension1",
                    publisher="Microsoft.Azure.KeyVault",
                    settings={
                        "authenticationSettingsKey": "authenticationSettingsValue",
                        "secretsManagementSettingsKey": "secretsManagementSettingsValue",
                    },
                    type="KeyVaultForLinux",
                    type_handler_version="2.0",
                )],
                image_reference=azure_native.batch.ImageReferenceArgs(
                    offer="0001-com-ubuntu-server-focal",
                    publisher="Canonical",
                    sku="20_04-lts",
                ),
                node_agent_sku_id="batch.node.ubuntu 20.04",
            ),
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        scale_settings=azure_native.batch.ScaleSettingsArgs(
            auto_scale=azure_native.batch.AutoScaleSettingsArgs(
                evaluation_interval="PT5M",
                formula="$TargetDedicatedNodes=1",
            ),
        ),
        target_node_communication_mode=azure_native.batch.NodeCommunicationMode.DEFAULT,
        vm_size="STANDARD_D4")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                extensions: [{
                    autoUpgradeMinorVersion: true,
                    enableAutomaticUpgrade: true,
                    name: "batchextension1",
                    publisher: "Microsoft.Azure.KeyVault",
                    settings: {
                        authenticationSettingsKey: "authenticationSettingsValue",
                        secretsManagementSettingsKey: "secretsManagementSettingsValue",
                    },
                    type: "KeyVaultForLinux",
                    typeHandlerVersion: "2.0",
                }],
                imageReference: {
                    offer: "0001-com-ubuntu-server-focal",
                    publisher: "Canonical",
                    sku: "20_04-lts",
                },
                nodeAgentSkuId: "batch.node.ubuntu 20.04",
            },
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        scaleSettings: {
            autoScale: {
                evaluationInterval: "PT5M",
                formula: "$TargetDedicatedNodes=1",
            },
        },
        targetNodeCommunicationMode: azure_native.batch.NodeCommunicationMode.Default,
        vmSize: "STANDARD_D4",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              extensions:
                - autoUpgradeMinorVersion: true
                  enableAutomaticUpgrade: true
                  name: batchextension1
                  publisher: Microsoft.Azure.KeyVault
                  settings:
                    authenticationSettingsKey: authenticationSettingsValue
                    secretsManagementSettingsKey: secretsManagementSettingsValue
                  type: KeyVaultForLinux
                  typeHandlerVersion: '2.0'
              imageReference:
                offer: 0001-com-ubuntu-server-focal
                publisher: Canonical
                sku: 20_04-lts
              nodeAgentSkuId: batch.node.ubuntu 20.04
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          scaleSettings:
            autoScale:
              evaluationInterval: PT5M
              formula: $TargetDedicatedNodes=1
          targetNodeCommunicationMode: Default
          vmSize: STANDARD_D4
    

    CreatePool - accelerated networking

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var pool = new AzureNative.Batch.Pool("pool", new()
        {
            AccountName = "sampleacct",
            DeploymentConfiguration = new AzureNative.Batch.Inputs.DeploymentConfigurationArgs
            {
                VirtualMachineConfiguration = new AzureNative.Batch.Inputs.VirtualMachineConfigurationArgs
                {
                    ImageReference = new AzureNative.Batch.Inputs.ImageReferenceArgs
                    {
                        Offer = "WindowsServer",
                        Publisher = "MicrosoftWindowsServer",
                        Sku = "2016-datacenter-smalldisk",
                        Version = "latest",
                    },
                    NodeAgentSkuId = "batch.node.windows amd64",
                },
            },
            NetworkConfiguration = new AzureNative.Batch.Inputs.NetworkConfigurationArgs
            {
                EnableAcceleratedNetworking = true,
                SubnetId = "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
            },
            PoolName = "testpool",
            ResourceGroupName = "default-azurebatch-japaneast",
            ScaleSettings = new AzureNative.Batch.Inputs.ScaleSettingsArgs
            {
                FixedScale = new AzureNative.Batch.Inputs.FixedScaleSettingsArgs
                {
                    TargetDedicatedNodes = 1,
                    TargetLowPriorityNodes = 0,
                },
            },
            VmSize = "STANDARD_D1_V2",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/batch/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := batch.NewPool(ctx, "pool", &batch.PoolArgs{
    			AccountName: pulumi.String("sampleacct"),
    			DeploymentConfiguration: &batch.DeploymentConfigurationArgs{
    				VirtualMachineConfiguration: &batch.VirtualMachineConfigurationArgs{
    					ImageReference: &batch.ImageReferenceArgs{
    						Offer:     pulumi.String("WindowsServer"),
    						Publisher: pulumi.String("MicrosoftWindowsServer"),
    						Sku:       pulumi.String("2016-datacenter-smalldisk"),
    						Version:   pulumi.String("latest"),
    					},
    					NodeAgentSkuId: pulumi.String("batch.node.windows amd64"),
    				},
    			},
    			NetworkConfiguration: &batch.NetworkConfigurationArgs{
    				EnableAcceleratedNetworking: pulumi.Bool(true),
    				SubnetId:                    pulumi.String("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123"),
    			},
    			PoolName:          pulumi.String("testpool"),
    			ResourceGroupName: pulumi.String("default-azurebatch-japaneast"),
    			ScaleSettings: &batch.ScaleSettingsArgs{
    				FixedScale: &batch.FixedScaleSettingsArgs{
    					TargetDedicatedNodes:   pulumi.Int(1),
    					TargetLowPriorityNodes: pulumi.Int(0),
    				},
    			},
    			VmSize: pulumi.String("STANDARD_D1_V2"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azurenative.batch.Pool;
    import com.pulumi.azurenative.batch.PoolArgs;
    import com.pulumi.azurenative.batch.inputs.DeploymentConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.VirtualMachineConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ImageReferenceArgs;
    import com.pulumi.azurenative.batch.inputs.NetworkConfigurationArgs;
    import com.pulumi.azurenative.batch.inputs.ScaleSettingsArgs;
    import com.pulumi.azurenative.batch.inputs.FixedScaleSettingsArgs;
    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 pool = new Pool("pool", PoolArgs.builder()        
                .accountName("sampleacct")
                .deploymentConfiguration(DeploymentConfigurationArgs.builder()
                    .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                        .imageReference(ImageReferenceArgs.builder()
                            .offer("WindowsServer")
                            .publisher("MicrosoftWindowsServer")
                            .sku("2016-datacenter-smalldisk")
                            .version("latest")
                            .build())
                        .nodeAgentSkuId("batch.node.windows amd64")
                        .build())
                    .build())
                .networkConfiguration(NetworkConfigurationArgs.builder()
                    .enableAcceleratedNetworking(true)
                    .subnetId("/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123")
                    .build())
                .poolName("testpool")
                .resourceGroupName("default-azurebatch-japaneast")
                .scaleSettings(ScaleSettingsArgs.builder()
                    .fixedScale(FixedScaleSettingsArgs.builder()
                        .targetDedicatedNodes(1)
                        .targetLowPriorityNodes(0)
                        .build())
                    .build())
                .vmSize("STANDARD_D1_V2")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    pool = azure_native.batch.Pool("pool",
        account_name="sampleacct",
        deployment_configuration=azure_native.batch.DeploymentConfigurationArgs(
            virtual_machine_configuration=azure_native.batch.VirtualMachineConfigurationArgs(
                image_reference=azure_native.batch.ImageReferenceArgs(
                    offer="WindowsServer",
                    publisher="MicrosoftWindowsServer",
                    sku="2016-datacenter-smalldisk",
                    version="latest",
                ),
                node_agent_sku_id="batch.node.windows amd64",
            ),
        ),
        network_configuration=azure_native.batch.NetworkConfigurationArgs(
            enable_accelerated_networking=True,
            subnet_id="/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        ),
        pool_name="testpool",
        resource_group_name="default-azurebatch-japaneast",
        scale_settings=azure_native.batch.ScaleSettingsArgs(
            fixed_scale=azure_native.batch.FixedScaleSettingsArgs(
                target_dedicated_nodes=1,
                target_low_priority_nodes=0,
            ),
        ),
        vm_size="STANDARD_D1_V2")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const pool = new azure_native.batch.Pool("pool", {
        accountName: "sampleacct",
        deploymentConfiguration: {
            virtualMachineConfiguration: {
                imageReference: {
                    offer: "WindowsServer",
                    publisher: "MicrosoftWindowsServer",
                    sku: "2016-datacenter-smalldisk",
                    version: "latest",
                },
                nodeAgentSkuId: "batch.node.windows amd64",
            },
        },
        networkConfiguration: {
            enableAcceleratedNetworking: true,
            subnetId: "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123",
        },
        poolName: "testpool",
        resourceGroupName: "default-azurebatch-japaneast",
        scaleSettings: {
            fixedScale: {
                targetDedicatedNodes: 1,
                targetLowPriorityNodes: 0,
            },
        },
        vmSize: "STANDARD_D1_V2",
    });
    
    resources:
      pool:
        type: azure-native:batch:Pool
        properties:
          accountName: sampleacct
          deploymentConfiguration:
            virtualMachineConfiguration:
              imageReference:
                offer: WindowsServer
                publisher: MicrosoftWindowsServer
                sku: 2016-datacenter-smalldisk
                version: latest
              nodeAgentSkuId: batch.node.windows amd64
          networkConfiguration:
            enableAcceleratedNetworking: true
            subnetId: /subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123
          poolName: testpool
          resourceGroupName: default-azurebatch-japaneast
          scaleSettings:
            fixedScale:
              targetDedicatedNodes: 1
              targetLowPriorityNodes: 0
          vmSize: STANDARD_D1_V2
    

    Create Pool Resource

    new Pool(name: string, args: PoolArgs, opts?: CustomResourceOptions);
    @overload
    def Pool(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             account_name: Optional[str] = None,
             application_licenses: Optional[Sequence[str]] = None,
             application_packages: Optional[Sequence[ApplicationPackageReferenceArgs]] = None,
             certificates: Optional[Sequence[CertificateReferenceArgs]] = None,
             deployment_configuration: Optional[DeploymentConfigurationArgs] = None,
             display_name: Optional[str] = None,
             identity: Optional[BatchPoolIdentityArgs] = None,
             inter_node_communication: Optional[InterNodeCommunicationState] = None,
             metadata: Optional[Sequence[MetadataItemArgs]] = None,
             mount_configuration: Optional[Sequence[MountConfigurationArgs]] = None,
             network_configuration: Optional[NetworkConfigurationArgs] = None,
             pool_name: Optional[str] = None,
             resource_group_name: Optional[str] = None,
             scale_settings: Optional[ScaleSettingsArgs] = None,
             start_task: Optional[StartTaskArgs] = None,
             target_node_communication_mode: Optional[NodeCommunicationMode] = None,
             task_scheduling_policy: Optional[TaskSchedulingPolicyArgs] = None,
             task_slots_per_node: Optional[int] = None,
             user_accounts: Optional[Sequence[UserAccountArgs]] = None,
             vm_size: Optional[str] = None)
    @overload
    def Pool(resource_name: str,
             args: PoolArgs,
             opts: Optional[ResourceOptions] = None)
    func NewPool(ctx *Context, name string, args PoolArgs, opts ...ResourceOption) (*Pool, error)
    public Pool(string name, PoolArgs args, CustomResourceOptions? opts = null)
    public Pool(String name, PoolArgs args)
    public Pool(String name, PoolArgs args, CustomResourceOptions options)
    
    type: azure-native:batch:Pool
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args PoolArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args PoolArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args PoolArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args PoolArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args PoolArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Pool Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Pool resource accepts the following input properties:

    AccountName string
    The name of the Batch account.
    ResourceGroupName string
    The name of the resource group that contains the Batch account.
    ApplicationLicenses List<string>
    The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.
    ApplicationPackages List<Pulumi.AzureNative.Batch.Inputs.ApplicationPackageReference>
    Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.
    Certificates List<Pulumi.AzureNative.Batch.Inputs.CertificateReference>

    For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.

    Warning: This property is deprecated and will be removed after February, 2024. Please use the Azure KeyVault Extension instead.

    DeploymentConfiguration Pulumi.AzureNative.Batch.Inputs.DeploymentConfiguration
    Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).
    DisplayName string
    The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.
    Identity Pulumi.AzureNative.Batch.Inputs.BatchPoolIdentity
    The type of identity used for the Batch Pool.
    InterNodeCommunication Pulumi.AzureNative.Batch.InterNodeCommunicationState
    This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.
    Metadata List<Pulumi.AzureNative.Batch.Inputs.MetadataItem>
    The Batch service does not assign any meaning to metadata; it is solely for the use of user code.
    MountConfiguration List<Pulumi.AzureNative.Batch.Inputs.MountConfiguration>
    This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.
    NetworkConfiguration Pulumi.AzureNative.Batch.Inputs.NetworkConfiguration
    The network configuration for a pool.
    PoolName string
    The pool name. This must be unique within the account.
    ScaleSettings Pulumi.AzureNative.Batch.Inputs.ScaleSettings
    Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
    StartTask Pulumi.AzureNative.Batch.Inputs.StartTask
    In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.
    TargetNodeCommunicationMode Pulumi.AzureNative.Batch.NodeCommunicationMode
    If omitted, the default value is Default.
    TaskSchedulingPolicy Pulumi.AzureNative.Batch.Inputs.TaskSchedulingPolicy
    If not specified, the default is spread.
    TaskSlotsPerNode int
    The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.
    UserAccounts List<Pulumi.AzureNative.Batch.Inputs.UserAccount>
    VmSize string
    For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).
    AccountName string
    The name of the Batch account.
    ResourceGroupName string
    The name of the resource group that contains the Batch account.
    ApplicationLicenses []string
    The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.
    ApplicationPackages []ApplicationPackageReferenceArgs
    Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.
    Certificates []CertificateReferenceArgs

    For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.

    Warning: This property is deprecated and will be removed after February, 2024. Please use the Azure KeyVault Extension instead.

    DeploymentConfiguration DeploymentConfigurationArgs
    Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).
    DisplayName string
    The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.
    Identity BatchPoolIdentityArgs
    The type of identity used for the Batch Pool.
    InterNodeCommunication InterNodeCommunicationState
    This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.
    Metadata []MetadataItemArgs
    The Batch service does not assign any meaning to metadata; it is solely for the use of user code.
    MountConfiguration []MountConfigurationArgs
    This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.
    NetworkConfiguration NetworkConfigurationArgs
    The network configuration for a pool.
    PoolName string
    The pool name. This must be unique within the account.
    ScaleSettings ScaleSettingsArgs
    Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
    StartTask StartTaskArgs
    In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.
    TargetNodeCommunicationMode NodeCommunicationMode
    If omitted, the default value is Default.
    TaskSchedulingPolicy TaskSchedulingPolicyArgs
    If not specified, the default is spread.
    TaskSlotsPerNode int
    The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.
    UserAccounts []UserAccountArgs
    VmSize string
    For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).
    accountName String
    The name of the Batch account.
    resourceGroupName String
    The name of the resource group that contains the Batch account.
    applicationLicenses List<String>
    The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.
    applicationPackages List<ApplicationPackageReference>
    Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.
    certificates List<CertificateReference>

    For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.

    Warning: This property is deprecated and will be removed after February, 2024. Please use the Azure KeyVault Extension instead.

    deploymentConfiguration DeploymentConfiguration
    Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).
    displayName String
    The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.
    identity BatchPoolIdentity
    The type of identity used for the Batch Pool.
    interNodeCommunication InterNodeCommunicationState
    This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.
    metadata List<MetadataItem>
    The Batch service does not assign any meaning to metadata; it is solely for the use of user code.
    mountConfiguration List<MountConfiguration>
    This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.
    networkConfiguration NetworkConfiguration
    The network configuration for a pool.
    poolName String
    The pool name. This must be unique within the account.
    scaleSettings ScaleSettings
    Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
    startTask StartTask
    In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.
    targetNodeCommunicationMode NodeCommunicationMode
    If omitted, the default value is Default.
    taskSchedulingPolicy TaskSchedulingPolicy
    If not specified, the default is spread.
    taskSlotsPerNode Integer
    The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.
    userAccounts List<UserAccount>
    vmSize String
    For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).
    accountName string
    The name of the Batch account.
    resourceGroupName string
    The name of the resource group that contains the Batch account.
    applicationLicenses string[]
    The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.
    applicationPackages ApplicationPackageReference[]
    Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.
    certificates CertificateReference[]

    For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.

    Warning: This property is deprecated and will be removed after February, 2024. Please use the Azure KeyVault Extension instead.

    deploymentConfiguration DeploymentConfiguration
    Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).
    displayName string
    The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.
    identity BatchPoolIdentity
    The type of identity used for the Batch Pool.
    interNodeCommunication InterNodeCommunicationState
    This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.
    metadata MetadataItem[]
    The Batch service does not assign any meaning to metadata; it is solely for the use of user code.
    mountConfiguration MountConfiguration[]
    This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.
    networkConfiguration NetworkConfiguration
    The network configuration for a pool.
    poolName string
    The pool name. This must be unique within the account.
    scaleSettings ScaleSettings
    Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
    startTask StartTask
    In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.
    targetNodeCommunicationMode NodeCommunicationMode
    If omitted, the default value is Default.
    taskSchedulingPolicy TaskSchedulingPolicy
    If not specified, the default is spread.
    taskSlotsPerNode number
    The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.
    userAccounts UserAccount[]
    vmSize string
    For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).
    account_name str
    The name of the Batch account.
    resource_group_name str
    The name of the resource group that contains the Batch account.
    application_licenses Sequence[str]
    The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.
    application_packages Sequence[ApplicationPackageReferenceArgs]
    Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.
    certificates Sequence[CertificateReferenceArgs]

    For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.

    Warning: This property is deprecated and will be removed after February, 2024. Please use the Azure KeyVault Extension instead.

    deployment_configuration DeploymentConfigurationArgs
    Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).
    display_name str
    The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.
    identity BatchPoolIdentityArgs
    The type of identity used for the Batch Pool.
    inter_node_communication InterNodeCommunicationState
    This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.
    metadata Sequence[MetadataItemArgs]
    The Batch service does not assign any meaning to metadata; it is solely for the use of user code.
    mount_configuration Sequence[MountConfigurationArgs]
    This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.
    network_configuration NetworkConfigurationArgs
    The network configuration for a pool.
    pool_name str
    The pool name. This must be unique within the account.
    scale_settings ScaleSettingsArgs
    Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
    start_task StartTaskArgs
    In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.
    target_node_communication_mode NodeCommunicationMode
    If omitted, the default value is Default.
    task_scheduling_policy TaskSchedulingPolicyArgs
    If not specified, the default is spread.
    task_slots_per_node int
    The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.
    user_accounts Sequence[UserAccountArgs]
    vm_size str
    For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).
    accountName String
    The name of the Batch account.
    resourceGroupName String
    The name of the resource group that contains the Batch account.
    applicationLicenses List<String>
    The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.
    applicationPackages List<Property Map>
    Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.
    certificates List<Property Map>

    For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.

    Warning: This property is deprecated and will be removed after February, 2024. Please use the Azure KeyVault Extension instead.

    deploymentConfiguration Property Map
    Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).
    displayName String
    The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.
    identity Property Map
    The type of identity used for the Batch Pool.
    interNodeCommunication "Enabled" | "Disabled"
    This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.
    metadata List<Property Map>
    The Batch service does not assign any meaning to metadata; it is solely for the use of user code.
    mountConfiguration List<Property Map>
    This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.
    networkConfiguration Property Map
    The network configuration for a pool.
    poolName String
    The pool name. This must be unique within the account.
    scaleSettings Property Map
    Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.
    startTask Property Map
    In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.
    targetNodeCommunicationMode "Default" | "Classic" | "Simplified"
    If omitted, the default value is Default.
    taskSchedulingPolicy Property Map
    If not specified, the default is spread.
    taskSlotsPerNode Number
    The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.
    userAccounts List<Property Map>
    vmSize String
    For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Pool resource produces the following output properties:

    AllocationState string
    AllocationStateTransitionTime string
    AutoScaleRun Pulumi.AzureNative.Batch.Outputs.AutoScaleRunResponse
    This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.
    CreationTime string
    CurrentDedicatedNodes int
    CurrentLowPriorityNodes int
    CurrentNodeCommunicationMode string
    Etag string
    The ETag of the resource, used for concurrency statements.
    Id string
    The provider-assigned unique ID for this managed resource.
    LastModified string
    This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.
    Name string
    The name of the resource.
    ProvisioningState string
    ProvisioningStateTransitionTime string
    ResizeOperationStatus Pulumi.AzureNative.Batch.Outputs.ResizeOperationStatusResponse
    Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).
    Type string
    The type of the resource.
    AllocationState string
    AllocationStateTransitionTime string
    AutoScaleRun AutoScaleRunResponse
    This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.
    CreationTime string
    CurrentDedicatedNodes int
    CurrentLowPriorityNodes int
    CurrentNodeCommunicationMode string
    Etag string
    The ETag of the resource, used for concurrency statements.
    Id string
    The provider-assigned unique ID for this managed resource.
    LastModified string
    This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.
    Name string
    The name of the resource.
    ProvisioningState string
    ProvisioningStateTransitionTime string
    ResizeOperationStatus ResizeOperationStatusResponse
    Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).
    Type string
    The type of the resource.
    allocationState String
    allocationStateTransitionTime String
    autoScaleRun AutoScaleRunResponse
    This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.
    creationTime String
    currentDedicatedNodes Integer
    currentLowPriorityNodes Integer
    currentNodeCommunicationMode String
    etag String
    The ETag of the resource, used for concurrency statements.
    id String
    The provider-assigned unique ID for this managed resource.
    lastModified String
    This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.
    name String
    The name of the resource.
    provisioningState String
    provisioningStateTransitionTime String
    resizeOperationStatus ResizeOperationStatusResponse
    Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).
    type String
    The type of the resource.
    allocationState string
    allocationStateTransitionTime string
    autoScaleRun AutoScaleRunResponse
    This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.
    creationTime string
    currentDedicatedNodes number
    currentLowPriorityNodes number
    currentNodeCommunicationMode string
    etag string
    The ETag of the resource, used for concurrency statements.
    id string
    The provider-assigned unique ID for this managed resource.
    lastModified string
    This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.
    name string
    The name of the resource.
    provisioningState string
    provisioningStateTransitionTime string
    resizeOperationStatus ResizeOperationStatusResponse
    Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).
    type string
    The type of the resource.
    allocation_state str
    allocation_state_transition_time str
    auto_scale_run AutoScaleRunResponse
    This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.
    creation_time str
    current_dedicated_nodes int
    current_low_priority_nodes int
    current_node_communication_mode str
    etag str
    The ETag of the resource, used for concurrency statements.
    id str
    The provider-assigned unique ID for this managed resource.
    last_modified str
    This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.
    name str
    The name of the resource.
    provisioning_state str
    provisioning_state_transition_time str
    resize_operation_status ResizeOperationStatusResponse
    Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).
    type str
    The type of the resource.
    allocationState String
    allocationStateTransitionTime String
    autoScaleRun Property Map
    This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.
    creationTime String
    currentDedicatedNodes Number
    currentLowPriorityNodes Number
    currentNodeCommunicationMode String
    etag String
    The ETag of the resource, used for concurrency statements.
    id String
    The provider-assigned unique ID for this managed resource.
    lastModified String
    This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.
    name String
    The name of the resource.
    provisioningState String
    provisioningStateTransitionTime String
    resizeOperationStatus Property Map
    Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).
    type String
    The type of the resource.

    Supporting Types

    ApplicationPackageReference, ApplicationPackageReferenceArgs

    Id string
    Version string
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    Id string
    Version string
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id String
    version String
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id string
    version string
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id str
    version str
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id String
    version String
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.

    ApplicationPackageReferenceResponse, ApplicationPackageReferenceResponseArgs

    Id string
    Version string
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    Id string
    Version string
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id String
    version String
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id string
    version string
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id str
    version str
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.
    id String
    version String
    If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409.

    AutoScaleRunErrorResponse, AutoScaleRunErrorResponseArgs

    Code string
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    Message string
    A message describing the error, intended to be suitable for display in a user interface.
    Details List<Pulumi.AzureNative.Batch.Inputs.AutoScaleRunErrorResponse>
    Code string
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    Message string
    A message describing the error, intended to be suitable for display in a user interface.
    Details []AutoScaleRunErrorResponse
    code String
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message String
    A message describing the error, intended to be suitable for display in a user interface.
    details List<AutoScaleRunErrorResponse>
    code string
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message string
    A message describing the error, intended to be suitable for display in a user interface.
    details AutoScaleRunErrorResponse[]
    code str
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message str
    A message describing the error, intended to be suitable for display in a user interface.
    details Sequence[AutoScaleRunErrorResponse]
    code String
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message String
    A message describing the error, intended to be suitable for display in a user interface.
    details List<Property Map>

    AutoScaleRunResponse, AutoScaleRunResponseArgs

    EvaluationTime string
    Error Pulumi.AzureNative.Batch.Inputs.AutoScaleRunErrorResponse
    Results string
    Each variable value is returned in the form $variable=value, and variables are separated by semicolons.
    EvaluationTime string
    Error AutoScaleRunErrorResponse
    Results string
    Each variable value is returned in the form $variable=value, and variables are separated by semicolons.
    evaluationTime String
    error AutoScaleRunErrorResponse
    results String
    Each variable value is returned in the form $variable=value, and variables are separated by semicolons.
    evaluationTime string
    error AutoScaleRunErrorResponse
    results string
    Each variable value is returned in the form $variable=value, and variables are separated by semicolons.
    evaluation_time str
    error AutoScaleRunErrorResponse
    results str
    Each variable value is returned in the form $variable=value, and variables are separated by semicolons.
    evaluationTime String
    error Property Map
    results String
    Each variable value is returned in the form $variable=value, and variables are separated by semicolons.

    AutoScaleSettings, AutoScaleSettingsArgs

    Formula string
    EvaluationInterval string
    If omitted, the default value is 15 minutes (PT15M).
    Formula string
    EvaluationInterval string
    If omitted, the default value is 15 minutes (PT15M).
    formula String
    evaluationInterval String
    If omitted, the default value is 15 minutes (PT15M).
    formula string
    evaluationInterval string
    If omitted, the default value is 15 minutes (PT15M).
    formula str
    evaluation_interval str
    If omitted, the default value is 15 minutes (PT15M).
    formula String
    evaluationInterval String
    If omitted, the default value is 15 minutes (PT15M).

    AutoScaleSettingsResponse, AutoScaleSettingsResponseArgs

    Formula string
    EvaluationInterval string
    If omitted, the default value is 15 minutes (PT15M).
    Formula string
    EvaluationInterval string
    If omitted, the default value is 15 minutes (PT15M).
    formula String
    evaluationInterval String
    If omitted, the default value is 15 minutes (PT15M).
    formula string
    evaluationInterval string
    If omitted, the default value is 15 minutes (PT15M).
    formula str
    evaluation_interval str
    If omitted, the default value is 15 minutes (PT15M).
    formula String
    evaluationInterval String
    If omitted, the default value is 15 minutes (PT15M).

    AutoUserScope, AutoUserScopeArgs

    Task
    TaskSpecifies that the service should create a new user for the task.
    Pool
    PoolSpecifies that the task runs as the common auto user account which is created on every node in a pool.
    AutoUserScopeTask
    TaskSpecifies that the service should create a new user for the task.
    AutoUserScopePool
    PoolSpecifies that the task runs as the common auto user account which is created on every node in a pool.
    Task
    TaskSpecifies that the service should create a new user for the task.
    Pool
    PoolSpecifies that the task runs as the common auto user account which is created on every node in a pool.
    Task
    TaskSpecifies that the service should create a new user for the task.
    Pool
    PoolSpecifies that the task runs as the common auto user account which is created on every node in a pool.
    TASK
    TaskSpecifies that the service should create a new user for the task.
    POOL
    PoolSpecifies that the task runs as the common auto user account which is created on every node in a pool.
    "Task"
    TaskSpecifies that the service should create a new user for the task.
    "Pool"
    PoolSpecifies that the task runs as the common auto user account which is created on every node in a pool.

    AutoUserSpecification, AutoUserSpecificationArgs

    ElevationLevel Pulumi.AzureNative.Batch.ElevationLevel
    The default value is nonAdmin.
    Scope Pulumi.AzureNative.Batch.AutoUserScope
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    ElevationLevel ElevationLevel
    The default value is nonAdmin.
    Scope AutoUserScope
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevationLevel ElevationLevel
    The default value is nonAdmin.
    scope AutoUserScope
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevationLevel ElevationLevel
    The default value is nonAdmin.
    scope AutoUserScope
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevation_level ElevationLevel
    The default value is nonAdmin.
    scope AutoUserScope
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevationLevel "NonAdmin" | "Admin"
    The default value is nonAdmin.
    scope "Task" | "Pool"
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.

    AutoUserSpecificationResponse, AutoUserSpecificationResponseArgs

    ElevationLevel string
    The default value is nonAdmin.
    Scope string
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    ElevationLevel string
    The default value is nonAdmin.
    Scope string
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevationLevel String
    The default value is nonAdmin.
    scope String
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevationLevel string
    The default value is nonAdmin.
    scope string
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevation_level str
    The default value is nonAdmin.
    scope str
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.
    elevationLevel String
    The default value is nonAdmin.
    scope String
    The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.

    AzureBlobFileSystemConfiguration, AzureBlobFileSystemConfigurationArgs

    AccountName string
    ContainerName string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    AccountKey string
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    BlobfuseOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    IdentityReference Pulumi.AzureNative.Batch.Inputs.ComputeNodeIdentityReference
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    SasKey string
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    AccountName string
    ContainerName string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    AccountKey string
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    BlobfuseOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    IdentityReference ComputeNodeIdentityReference
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    SasKey string
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    accountName String
    containerName String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    accountKey String
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuseOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    identityReference ComputeNodeIdentityReference
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sasKey String
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    accountName string
    containerName string
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    accountKey string
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuseOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    identityReference ComputeNodeIdentityReference
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sasKey string
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    account_name str
    container_name str
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    account_key str
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuse_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    identity_reference ComputeNodeIdentityReference
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sas_key str
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    accountName String
    containerName String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    accountKey String
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuseOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    identityReference Property Map
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sasKey String
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.

    AzureBlobFileSystemConfigurationResponse, AzureBlobFileSystemConfigurationResponseArgs

    AccountName string
    ContainerName string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    AccountKey string
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    BlobfuseOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    IdentityReference Pulumi.AzureNative.Batch.Inputs.ComputeNodeIdentityReferenceResponse
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    SasKey string
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    AccountName string
    ContainerName string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    AccountKey string
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    BlobfuseOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    IdentityReference ComputeNodeIdentityReferenceResponse
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    SasKey string
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    accountName String
    containerName String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    accountKey String
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuseOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    identityReference ComputeNodeIdentityReferenceResponse
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sasKey String
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    accountName string
    containerName string
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    accountKey string
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuseOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    identityReference ComputeNodeIdentityReferenceResponse
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sasKey string
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    account_name str
    container_name str
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    account_key str
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuse_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    identity_reference ComputeNodeIdentityReferenceResponse
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sas_key str
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.
    accountName String
    containerName String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    accountKey String
    This property is mutually exclusive with both sasKey and identity; exactly one must be specified.
    blobfuseOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    identityReference Property Map
    This property is mutually exclusive with both accountKey and sasKey; exactly one must be specified.
    sasKey String
    This property is mutually exclusive with both accountKey and identity; exactly one must be specified.

    AzureFileShareConfiguration, AzureFileShareConfigurationArgs

    AccountKey string
    AccountName string
    AzureFileUrl string
    This is of the form 'https://{account}.file.core.windows.net/'.
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    AccountKey string
    AccountName string
    AzureFileUrl string
    This is of the form 'https://{account}.file.core.windows.net/'.
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    accountKey String
    accountName String
    azureFileUrl String
    This is of the form 'https://{account}.file.core.windows.net/'.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    accountKey string
    accountName string
    azureFileUrl string
    This is of the form 'https://{account}.file.core.windows.net/'.
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    account_key str
    account_name str
    azure_file_url str
    This is of the form 'https://{account}.file.core.windows.net/'.
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mount_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    accountKey String
    accountName String
    azureFileUrl String
    This is of the form 'https://{account}.file.core.windows.net/'.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.

    AzureFileShareConfigurationResponse, AzureFileShareConfigurationResponseArgs

    AccountKey string
    AccountName string
    AzureFileUrl string
    This is of the form 'https://{account}.file.core.windows.net/'.
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    AccountKey string
    AccountName string
    AzureFileUrl string
    This is of the form 'https://{account}.file.core.windows.net/'.
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    accountKey String
    accountName String
    azureFileUrl String
    This is of the form 'https://{account}.file.core.windows.net/'.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    accountKey string
    accountName string
    azureFileUrl string
    This is of the form 'https://{account}.file.core.windows.net/'.
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    account_key str
    account_name str
    azure_file_url str
    This is of the form 'https://{account}.file.core.windows.net/'.
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mount_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    accountKey String
    accountName String
    azureFileUrl String
    This is of the form 'https://{account}.file.core.windows.net/'.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.

    BatchPoolIdentity, BatchPoolIdentityArgs

    Type Pulumi.AzureNative.Batch.PoolIdentityType
    The type of identity used for the Batch Pool.
    UserAssignedIdentities List<string>
    The list of user identities associated with the Batch pool.
    Type PoolIdentityType
    The type of identity used for the Batch Pool.
    UserAssignedIdentities []string
    The list of user identities associated with the Batch pool.
    type PoolIdentityType
    The type of identity used for the Batch Pool.
    userAssignedIdentities List<String>
    The list of user identities associated with the Batch pool.
    type PoolIdentityType
    The type of identity used for the Batch Pool.
    userAssignedIdentities string[]
    The list of user identities associated with the Batch pool.
    type PoolIdentityType
    The type of identity used for the Batch Pool.
    user_assigned_identities Sequence[str]
    The list of user identities associated with the Batch pool.
    type "UserAssigned" | "None"
    The type of identity used for the Batch Pool.
    userAssignedIdentities List<String>
    The list of user identities associated with the Batch pool.

    BatchPoolIdentityResponse, BatchPoolIdentityResponseArgs

    Type string
    The type of identity used for the Batch Pool.
    UserAssignedIdentities Dictionary<string, Pulumi.AzureNative.Batch.Inputs.UserAssignedIdentitiesResponse>
    The list of user identities associated with the Batch pool.
    Type string
    The type of identity used for the Batch Pool.
    UserAssignedIdentities map[string]UserAssignedIdentitiesResponse
    The list of user identities associated with the Batch pool.
    type String
    The type of identity used for the Batch Pool.
    userAssignedIdentities Map<String,UserAssignedIdentitiesResponse>
    The list of user identities associated with the Batch pool.
    type string
    The type of identity used for the Batch Pool.
    userAssignedIdentities {[key: string]: UserAssignedIdentitiesResponse}
    The list of user identities associated with the Batch pool.
    type str
    The type of identity used for the Batch Pool.
    user_assigned_identities Mapping[str, UserAssignedIdentitiesResponse]
    The list of user identities associated with the Batch pool.
    type String
    The type of identity used for the Batch Pool.
    userAssignedIdentities Map<Property Map>
    The list of user identities associated with the Batch pool.

    CIFSMountConfiguration, CIFSMountConfigurationArgs

    Password string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    UserName string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    Password string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    UserName string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    password String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    userName String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    password string
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source string
    userName string
    mountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    password str
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source str
    user_name str
    mount_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    password String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    userName String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.

    CIFSMountConfigurationResponse, CIFSMountConfigurationResponseArgs

    Password string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    UserName string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    Password string
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    UserName string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    password String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    userName String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    password string
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source string
    userName string
    mountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    password str
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source str
    user_name str
    mount_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    password String
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    userName String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.

    CachingType, CachingTypeArgs

    None
    NoneThe caching mode for the disk is not enabled.
    ReadOnly
    ReadOnlyThe caching mode for the disk is read only.
    ReadWrite
    ReadWriteThe caching mode for the disk is read and write.
    CachingTypeNone
    NoneThe caching mode for the disk is not enabled.
    CachingTypeReadOnly
    ReadOnlyThe caching mode for the disk is read only.
    CachingTypeReadWrite
    ReadWriteThe caching mode for the disk is read and write.
    None
    NoneThe caching mode for the disk is not enabled.
    ReadOnly
    ReadOnlyThe caching mode for the disk is read only.
    ReadWrite
    ReadWriteThe caching mode for the disk is read and write.
    None
    NoneThe caching mode for the disk is not enabled.
    ReadOnly
    ReadOnlyThe caching mode for the disk is read only.
    ReadWrite
    ReadWriteThe caching mode for the disk is read and write.
    NONE
    NoneThe caching mode for the disk is not enabled.
    READ_ONLY
    ReadOnlyThe caching mode for the disk is read only.
    READ_WRITE
    ReadWriteThe caching mode for the disk is read and write.
    "None"
    NoneThe caching mode for the disk is not enabled.
    "ReadOnly"
    ReadOnlyThe caching mode for the disk is read only.
    "ReadWrite"
    ReadWriteThe caching mode for the disk is read and write.

    CertificateReference, CertificateReferenceArgs

    Id string
    StoreLocation Pulumi.AzureNative.Batch.CertificateStoreLocation
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    StoreName string
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    Visibility List<Pulumi.AzureNative.Batch.CertificateVisibility>
    Id string
    StoreLocation CertificateStoreLocation
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    StoreName string
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    Visibility []CertificateVisibility
    id String
    storeLocation CertificateStoreLocation
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    storeName String
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility List<CertificateVisibility>
    id string
    storeLocation CertificateStoreLocation
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    storeName string
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility CertificateVisibility[]
    id str
    store_location CertificateStoreLocation
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    store_name str
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility Sequence[CertificateVisibility]
    id String
    storeLocation "CurrentUser" | "LocalMachine"
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    storeName String
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility List<"StartTask" | "Task" | "RemoteUser">

    CertificateReferenceResponse, CertificateReferenceResponseArgs

    Id string
    StoreLocation string
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    StoreName string
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    Visibility List<string>
    Id string
    StoreLocation string
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    StoreName string
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    Visibility []string
    id String
    storeLocation String
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    storeName String
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility List<String>
    id string
    storeLocation string
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    storeName string
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility string[]
    id str
    store_location str
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    store_name str
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility Sequence[str]
    id String
    storeLocation String
    The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.
    storeName String
    This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My.
    visibility List<String>

    CertificateStoreLocation, CertificateStoreLocationArgs

    CurrentUser
    CurrentUserCertificates should be installed to the CurrentUser certificate store.
    LocalMachine
    LocalMachineCertificates should be installed to the LocalMachine certificate store.
    CertificateStoreLocationCurrentUser
    CurrentUserCertificates should be installed to the CurrentUser certificate store.
    CertificateStoreLocationLocalMachine
    LocalMachineCertificates should be installed to the LocalMachine certificate store.
    CurrentUser
    CurrentUserCertificates should be installed to the CurrentUser certificate store.
    LocalMachine
    LocalMachineCertificates should be installed to the LocalMachine certificate store.
    CurrentUser
    CurrentUserCertificates should be installed to the CurrentUser certificate store.
    LocalMachine
    LocalMachineCertificates should be installed to the LocalMachine certificate store.
    CURRENT_USER
    CurrentUserCertificates should be installed to the CurrentUser certificate store.
    LOCAL_MACHINE
    LocalMachineCertificates should be installed to the LocalMachine certificate store.
    "CurrentUser"
    CurrentUserCertificates should be installed to the CurrentUser certificate store.
    "LocalMachine"
    LocalMachineCertificates should be installed to the LocalMachine certificate store.

    CertificateVisibility, CertificateVisibilityArgs

    StartTask
    StartTaskThe certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.
    Task
    TaskThe certificate should be visible to the user accounts under which job tasks are run.
    RemoteUser
    RemoteUserThe certificate should be visible to the user accounts under which users remotely access the node.
    CertificateVisibilityStartTask
    StartTaskThe certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.
    CertificateVisibilityTask
    TaskThe certificate should be visible to the user accounts under which job tasks are run.
    CertificateVisibilityRemoteUser
    RemoteUserThe certificate should be visible to the user accounts under which users remotely access the node.
    StartTask
    StartTaskThe certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.
    Task
    TaskThe certificate should be visible to the user accounts under which job tasks are run.
    RemoteUser
    RemoteUserThe certificate should be visible to the user accounts under which users remotely access the node.
    StartTask
    StartTaskThe certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.
    Task
    TaskThe certificate should be visible to the user accounts under which job tasks are run.
    RemoteUser
    RemoteUserThe certificate should be visible to the user accounts under which users remotely access the node.
    START_TASK
    StartTaskThe certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.
    TASK
    TaskThe certificate should be visible to the user accounts under which job tasks are run.
    REMOTE_USER
    RemoteUserThe certificate should be visible to the user accounts under which users remotely access the node.
    "StartTask"
    StartTaskThe certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.
    "Task"
    TaskThe certificate should be visible to the user accounts under which job tasks are run.
    "RemoteUser"
    RemoteUserThe certificate should be visible to the user accounts under which users remotely access the node.

    CloudServiceConfiguration, CloudServiceConfigurationArgs

    OsFamily string
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    OsVersion string
    The default value is * which specifies the latest operating system version for the specified OS family.
    OsFamily string
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    OsVersion string
    The default value is * which specifies the latest operating system version for the specified OS family.
    osFamily String
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    osVersion String
    The default value is * which specifies the latest operating system version for the specified OS family.
    osFamily string
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    osVersion string
    The default value is * which specifies the latest operating system version for the specified OS family.
    os_family str
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    os_version str
    The default value is * which specifies the latest operating system version for the specified OS family.
    osFamily String
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    osVersion String
    The default value is * which specifies the latest operating system version for the specified OS family.

    CloudServiceConfigurationResponse, CloudServiceConfigurationResponseArgs

    OsFamily string
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    OsVersion string
    The default value is * which specifies the latest operating system version for the specified OS family.
    OsFamily string
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    OsVersion string
    The default value is * which specifies the latest operating system version for the specified OS family.
    osFamily String
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    osVersion String
    The default value is * which specifies the latest operating system version for the specified OS family.
    osFamily string
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    osVersion string
    The default value is * which specifies the latest operating system version for the specified OS family.
    os_family str
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    os_version str
    The default value is * which specifies the latest operating system version for the specified OS family.
    osFamily String
    Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases).
    osVersion String
    The default value is * which specifies the latest operating system version for the specified OS family.

    ComputeNodeDeallocationOption, ComputeNodeDeallocationOptionArgs

    Requeue
    RequeueTerminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated.
    Terminate
    TerminateTerminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated.
    TaskCompletion
    TaskCompletionAllow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed.
    RetainedData
    RetainedDataAllow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired.
    ComputeNodeDeallocationOptionRequeue
    RequeueTerminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated.
    ComputeNodeDeallocationOptionTerminate
    TerminateTerminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated.
    ComputeNodeDeallocationOptionTaskCompletion
    TaskCompletionAllow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed.
    ComputeNodeDeallocationOptionRetainedData
    RetainedDataAllow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired.
    Requeue
    RequeueTerminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated.
    Terminate
    TerminateTerminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated.
    TaskCompletion
    TaskCompletionAllow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed.
    RetainedData
    RetainedDataAllow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired.
    Requeue
    RequeueTerminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated.
    Terminate
    TerminateTerminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated.
    TaskCompletion
    TaskCompletionAllow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed.
    RetainedData
    RetainedDataAllow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired.
    REQUEUE
    RequeueTerminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated.
    TERMINATE
    TerminateTerminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated.
    TASK_COMPLETION
    TaskCompletionAllow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed.
    RETAINED_DATA
    RetainedDataAllow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired.
    "Requeue"
    RequeueTerminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated.
    "Terminate"
    TerminateTerminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated.
    "TaskCompletion"
    TaskCompletionAllow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed.
    "RetainedData"
    RetainedDataAllow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired.

    ComputeNodeFillType, ComputeNodeFillTypeArgs

    Spread
    SpreadTasks should be assigned evenly across all nodes in the pool.
    Pack
    PackAs many tasks as possible (taskSlotsPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool.
    ComputeNodeFillTypeSpread
    SpreadTasks should be assigned evenly across all nodes in the pool.
    ComputeNodeFillTypePack
    PackAs many tasks as possible (taskSlotsPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool.
    Spread
    SpreadTasks should be assigned evenly across all nodes in the pool.
    Pack
    PackAs many tasks as possible (taskSlotsPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool.
    Spread
    SpreadTasks should be assigned evenly across all nodes in the pool.
    Pack
    PackAs many tasks as possible (taskSlotsPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool.
    SPREAD
    SpreadTasks should be assigned evenly across all nodes in the pool.
    PACK
    PackAs many tasks as possible (taskSlotsPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool.
    "Spread"
    SpreadTasks should be assigned evenly across all nodes in the pool.
    "Pack"
    PackAs many tasks as possible (taskSlotsPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool.

    ComputeNodeIdentityReference, ComputeNodeIdentityReferenceArgs

    ResourceId string
    The ARM resource id of the user assigned identity.
    ResourceId string
    The ARM resource id of the user assigned identity.
    resourceId String
    The ARM resource id of the user assigned identity.
    resourceId string
    The ARM resource id of the user assigned identity.
    resource_id str
    The ARM resource id of the user assigned identity.
    resourceId String
    The ARM resource id of the user assigned identity.

    ComputeNodeIdentityReferenceResponse, ComputeNodeIdentityReferenceResponseArgs

    ResourceId string
    The ARM resource id of the user assigned identity.
    ResourceId string
    The ARM resource id of the user assigned identity.
    resourceId String
    The ARM resource id of the user assigned identity.
    resourceId string
    The ARM resource id of the user assigned identity.
    resource_id str
    The ARM resource id of the user assigned identity.
    resourceId String
    The ARM resource id of the user assigned identity.

    ContainerConfiguration, ContainerConfigurationArgs

    Type string | Pulumi.AzureNative.Batch.ContainerType
    ContainerImageNames List<string>
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    ContainerRegistries List<Pulumi.AzureNative.Batch.Inputs.ContainerRegistry>
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    Type string | ContainerType
    ContainerImageNames []string
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    ContainerRegistries []ContainerRegistry
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type String | ContainerType
    containerImageNames List<String>
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    containerRegistries List<ContainerRegistry>
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type string | ContainerType
    containerImageNames string[]
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    containerRegistries ContainerRegistry[]
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type str | ContainerType
    container_image_names Sequence[str]
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    container_registries Sequence[ContainerRegistry]
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type String | "DockerCompatible" | "CriCompatible"
    containerImageNames List<String>
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    containerRegistries List<Property Map>
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.

    ContainerConfigurationResponse, ContainerConfigurationResponseArgs

    Type string
    ContainerImageNames List<string>
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    ContainerRegistries List<Pulumi.AzureNative.Batch.Inputs.ContainerRegistryResponse>
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    Type string
    ContainerImageNames []string
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    ContainerRegistries []ContainerRegistryResponse
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type String
    containerImageNames List<String>
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    containerRegistries List<ContainerRegistryResponse>
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type string
    containerImageNames string[]
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    containerRegistries ContainerRegistryResponse[]
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type str
    container_image_names Sequence[str]
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    container_registries Sequence[ContainerRegistryResponse]
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.
    type String
    containerImageNames List<String>
    This is the full image reference, as would be specified to "docker pull". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry.
    containerRegistries List<Property Map>
    If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here.

    ContainerRegistry, ContainerRegistryArgs

    IdentityReference Pulumi.AzureNative.Batch.Inputs.ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    Password string
    RegistryServer string
    If omitted, the default is "docker.io".
    UserName string
    IdentityReference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    Password string
    RegistryServer string
    If omitted, the default is "docker.io".
    UserName string
    identityReference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password String
    registryServer String
    If omitted, the default is "docker.io".
    userName String
    identityReference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password string
    registryServer string
    If omitted, the default is "docker.io".
    userName string
    identity_reference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password str
    registry_server str
    If omitted, the default is "docker.io".
    user_name str
    identityReference Property Map
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password String
    registryServer String
    If omitted, the default is "docker.io".
    userName String

    ContainerRegistryResponse, ContainerRegistryResponseArgs

    IdentityReference Pulumi.AzureNative.Batch.Inputs.ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    Password string
    RegistryServer string
    If omitted, the default is "docker.io".
    UserName string
    IdentityReference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    Password string
    RegistryServer string
    If omitted, the default is "docker.io".
    UserName string
    identityReference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password String
    registryServer String
    If omitted, the default is "docker.io".
    userName String
    identityReference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password string
    registryServer string
    If omitted, the default is "docker.io".
    userName string
    identity_reference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password str
    registry_server str
    If omitted, the default is "docker.io".
    user_name str
    identityReference Property Map
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    password String
    registryServer String
    If omitted, the default is "docker.io".
    userName String

    ContainerType, ContainerTypeArgs

    DockerCompatible
    DockerCompatibleA Docker compatible container technology will be used to launch the containers.
    CriCompatible
    CriCompatibleA CRI based technology will be used to launch the containers.
    ContainerTypeDockerCompatible
    DockerCompatibleA Docker compatible container technology will be used to launch the containers.
    ContainerTypeCriCompatible
    CriCompatibleA CRI based technology will be used to launch the containers.
    DockerCompatible
    DockerCompatibleA Docker compatible container technology will be used to launch the containers.
    CriCompatible
    CriCompatibleA CRI based technology will be used to launch the containers.
    DockerCompatible
    DockerCompatibleA Docker compatible container technology will be used to launch the containers.
    CriCompatible
    CriCompatibleA CRI based technology will be used to launch the containers.
    DOCKER_COMPATIBLE
    DockerCompatibleA Docker compatible container technology will be used to launch the containers.
    CRI_COMPATIBLE
    CriCompatibleA CRI based technology will be used to launch the containers.
    "DockerCompatible"
    DockerCompatibleA Docker compatible container technology will be used to launch the containers.
    "CriCompatible"
    CriCompatibleA CRI based technology will be used to launch the containers.

    ContainerWorkingDirectory, ContainerWorkingDirectoryArgs

    TaskWorkingDirectory
    TaskWorkingDirectoryUse the standard Batch service task working directory, which will contain the Task resource files populated by Batch.
    ContainerImageDefault
    ContainerImageDefaultUsing container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch.
    ContainerWorkingDirectoryTaskWorkingDirectory
    TaskWorkingDirectoryUse the standard Batch service task working directory, which will contain the Task resource files populated by Batch.
    ContainerWorkingDirectoryContainerImageDefault
    ContainerImageDefaultUsing container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch.
    TaskWorkingDirectory
    TaskWorkingDirectoryUse the standard Batch service task working directory, which will contain the Task resource files populated by Batch.
    ContainerImageDefault
    ContainerImageDefaultUsing container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch.
    TaskWorkingDirectory
    TaskWorkingDirectoryUse the standard Batch service task working directory, which will contain the Task resource files populated by Batch.
    ContainerImageDefault
    ContainerImageDefaultUsing container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch.
    TASK_WORKING_DIRECTORY
    TaskWorkingDirectoryUse the standard Batch service task working directory, which will contain the Task resource files populated by Batch.
    CONTAINER_IMAGE_DEFAULT
    ContainerImageDefaultUsing container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch.
    "TaskWorkingDirectory"
    TaskWorkingDirectoryUse the standard Batch service task working directory, which will contain the Task resource files populated by Batch.
    "ContainerImageDefault"
    ContainerImageDefaultUsing container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch.

    DataDisk, DataDiskArgs

    DiskSizeGB int
    Lun int
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    Caching Pulumi.AzureNative.Batch.CachingType

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    StorageAccountType Pulumi.AzureNative.Batch.StorageAccountType

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    DiskSizeGB int
    Lun int
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    Caching CachingType

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    StorageAccountType StorageAccountType

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    diskSizeGB Integer
    lun Integer
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching CachingType

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storageAccountType StorageAccountType

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    diskSizeGB number
    lun number
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching CachingType

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storageAccountType StorageAccountType

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    disk_size_gb int
    lun int
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching CachingType

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storage_account_type StorageAccountType

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    diskSizeGB Number
    lun Number
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching "None" | "ReadOnly" | "ReadWrite"

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storageAccountType "Standard_LRS" | "Premium_LRS"

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    DataDiskResponse, DataDiskResponseArgs

    DiskSizeGB int
    Lun int
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    Caching string

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    StorageAccountType string

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    DiskSizeGB int
    Lun int
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    Caching string

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    StorageAccountType string

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    diskSizeGB Integer
    lun Integer
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching String

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storageAccountType String

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    diskSizeGB number
    lun number
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching string

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storageAccountType string

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    disk_size_gb int
    lun int
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching str

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storage_account_type str

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    diskSizeGB Number
    lun Number
    The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive.
    caching String

    Values are:

    none - The caching mode for the disk is not enabled. readOnly - The caching mode for the disk is read only. readWrite - The caching mode for the disk is read and write.

    The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.

    storageAccountType String

    If omitted, the default is "Standard_LRS". Values are:

    Standard_LRS - The data disk should use standard locally redundant storage. Premium_LRS - The data disk should use premium locally redundant storage.

    DeploymentConfiguration, DeploymentConfigurationArgs

    CloudServiceConfiguration Pulumi.AzureNative.Batch.Inputs.CloudServiceConfiguration
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    VirtualMachineConfiguration Pulumi.AzureNative.Batch.Inputs.VirtualMachineConfiguration
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    CloudServiceConfiguration CloudServiceConfiguration
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    VirtualMachineConfiguration VirtualMachineConfiguration
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloudServiceConfiguration CloudServiceConfiguration
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtualMachineConfiguration VirtualMachineConfiguration
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloudServiceConfiguration CloudServiceConfiguration
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtualMachineConfiguration VirtualMachineConfiguration
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloud_service_configuration CloudServiceConfiguration
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtual_machine_configuration VirtualMachineConfiguration
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloudServiceConfiguration Property Map
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtualMachineConfiguration Property Map
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.

    DeploymentConfigurationResponse, DeploymentConfigurationResponseArgs

    CloudServiceConfiguration Pulumi.AzureNative.Batch.Inputs.CloudServiceConfigurationResponse
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    VirtualMachineConfiguration Pulumi.AzureNative.Batch.Inputs.VirtualMachineConfigurationResponse
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    CloudServiceConfiguration CloudServiceConfigurationResponse
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    VirtualMachineConfiguration VirtualMachineConfigurationResponse
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloudServiceConfiguration CloudServiceConfigurationResponse
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloudServiceConfiguration CloudServiceConfigurationResponse
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloud_service_configuration CloudServiceConfigurationResponse
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtual_machine_configuration VirtualMachineConfigurationResponse
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.
    cloudServiceConfiguration Property Map
    This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.
    virtualMachineConfiguration Property Map
    This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified.

    DiffDiskPlacement, DiffDiskPlacementArgs

    CacheDisk
    CacheDiskThe Ephemeral OS Disk is stored on the VM cache.
    DiffDiskPlacementCacheDisk
    CacheDiskThe Ephemeral OS Disk is stored on the VM cache.
    CacheDisk
    CacheDiskThe Ephemeral OS Disk is stored on the VM cache.
    CacheDisk
    CacheDiskThe Ephemeral OS Disk is stored on the VM cache.
    CACHE_DISK
    CacheDiskThe Ephemeral OS Disk is stored on the VM cache.
    "CacheDisk"
    CacheDiskThe Ephemeral OS Disk is stored on the VM cache.

    DiffDiskSettings, DiffDiskSettingsArgs

    Placement Pulumi.AzureNative.Batch.DiffDiskPlacement
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    Placement DiffDiskPlacement
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement DiffDiskPlacement
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement DiffDiskPlacement
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement DiffDiskPlacement
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement "CacheDisk"
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.

    DiffDiskSettingsResponse, DiffDiskSettingsResponseArgs

    Placement string
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    Placement string
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement String
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement string
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement str
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
    placement String
    This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.

    DiskEncryptionConfiguration, DiskEncryptionConfigurationArgs

    Targets List<Pulumi.AzureNative.Batch.DiskEncryptionTarget>
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    Targets []DiskEncryptionTarget
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets List<DiskEncryptionTarget>
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets DiskEncryptionTarget[]
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets Sequence[DiskEncryptionTarget]
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets List<"OsDisk" | "TemporaryDisk">
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.

    DiskEncryptionConfigurationResponse, DiskEncryptionConfigurationResponseArgs

    Targets List<string>
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    Targets []string
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets List<String>
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets string[]
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets Sequence[str]
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.
    targets List<String>
    On Linux pool, only "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified.

    DiskEncryptionTarget, DiskEncryptionTargetArgs

    OsDisk
    OsDiskThe OS Disk on the compute node is encrypted.
    TemporaryDisk
    TemporaryDiskThe temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.
    DiskEncryptionTargetOsDisk
    OsDiskThe OS Disk on the compute node is encrypted.
    DiskEncryptionTargetTemporaryDisk
    TemporaryDiskThe temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.
    OsDisk
    OsDiskThe OS Disk on the compute node is encrypted.
    TemporaryDisk
    TemporaryDiskThe temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.
    OsDisk
    OsDiskThe OS Disk on the compute node is encrypted.
    TemporaryDisk
    TemporaryDiskThe temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.
    OS_DISK
    OsDiskThe OS Disk on the compute node is encrypted.
    TEMPORARY_DISK
    TemporaryDiskThe temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.
    "OsDisk"
    OsDiskThe OS Disk on the compute node is encrypted.
    "TemporaryDisk"
    TemporaryDiskThe temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.

    DynamicVNetAssignmentScope, DynamicVNetAssignmentScopeArgs

    None
    noneNo dynamic VNet assignment is enabled.
    Job
    jobDynamic VNet assignment is done per-job. If this value is set, the network configuration subnet ID must also be set. This feature requires approval before use, please contact support
    DynamicVNetAssignmentScopeNone
    noneNo dynamic VNet assignment is enabled.
    DynamicVNetAssignmentScopeJob
    jobDynamic VNet assignment is done per-job. If this value is set, the network configuration subnet ID must also be set. This feature requires approval before use, please contact support
    None
    noneNo dynamic VNet assignment is enabled.
    Job
    jobDynamic VNet assignment is done per-job. If this value is set, the network configuration subnet ID must also be set. This feature requires approval before use, please contact support
    None
    noneNo dynamic VNet assignment is enabled.
    Job
    jobDynamic VNet assignment is done per-job. If this value is set, the network configuration subnet ID must also be set. This feature requires approval before use, please contact support
    NONE
    noneNo dynamic VNet assignment is enabled.
    JOB
    jobDynamic VNet assignment is done per-job. If this value is set, the network configuration subnet ID must also be set. This feature requires approval before use, please contact support
    "none"
    noneNo dynamic VNet assignment is enabled.
    "job"
    jobDynamic VNet assignment is done per-job. If this value is set, the network configuration subnet ID must also be set. This feature requires approval before use, please contact support

    ElevationLevel, ElevationLevelArgs

    NonAdmin
    NonAdminThe user is a standard user without elevated access.
    Admin
    AdminThe user is a user with elevated access and operates with full Administrator permissions.
    ElevationLevelNonAdmin
    NonAdminThe user is a standard user without elevated access.
    ElevationLevelAdmin
    AdminThe user is a user with elevated access and operates with full Administrator permissions.
    NonAdmin
    NonAdminThe user is a standard user without elevated access.
    Admin
    AdminThe user is a user with elevated access and operates with full Administrator permissions.
    NonAdmin
    NonAdminThe user is a standard user without elevated access.
    Admin
    AdminThe user is a user with elevated access and operates with full Administrator permissions.
    NON_ADMIN
    NonAdminThe user is a standard user without elevated access.
    ADMIN
    AdminThe user is a user with elevated access and operates with full Administrator permissions.
    "NonAdmin"
    NonAdminThe user is a standard user without elevated access.
    "Admin"
    AdminThe user is a user with elevated access and operates with full Administrator permissions.

    EnvironmentSetting, EnvironmentSettingArgs

    Name string
    Value string
    Name string
    Value string
    name String
    value String
    name string
    value string
    name str
    value str
    name String
    value String

    EnvironmentSettingResponse, EnvironmentSettingResponseArgs

    Name string
    Value string
    Name string
    Value string
    name String
    value String
    name string
    value string
    name str
    value str
    name String
    value String

    FixedScaleSettings, FixedScaleSettingsArgs

    NodeDeallocationOption Pulumi.AzureNative.Batch.ComputeNodeDeallocationOption
    If omitted, the default value is Requeue.
    ResizeTimeout string
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    TargetDedicatedNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    TargetLowPriorityNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    NodeDeallocationOption ComputeNodeDeallocationOption
    If omitted, the default value is Requeue.
    ResizeTimeout string
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    TargetDedicatedNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    TargetLowPriorityNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    nodeDeallocationOption ComputeNodeDeallocationOption
    If omitted, the default value is Requeue.
    resizeTimeout String
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    targetDedicatedNodes Integer
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    targetLowPriorityNodes Integer
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    nodeDeallocationOption ComputeNodeDeallocationOption
    If omitted, the default value is Requeue.
    resizeTimeout string
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    targetDedicatedNodes number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    targetLowPriorityNodes number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    node_deallocation_option ComputeNodeDeallocationOption
    If omitted, the default value is Requeue.
    resize_timeout str
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    target_dedicated_nodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    target_low_priority_nodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    nodeDeallocationOption "Requeue" | "Terminate" | "TaskCompletion" | "RetainedData"
    If omitted, the default value is Requeue.
    resizeTimeout String
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    targetDedicatedNodes Number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    targetLowPriorityNodes Number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.

    FixedScaleSettingsResponse, FixedScaleSettingsResponseArgs

    ResizeTimeout string
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    TargetDedicatedNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    TargetLowPriorityNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    ResizeTimeout string
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    TargetDedicatedNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    TargetLowPriorityNodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    resizeTimeout String
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    targetDedicatedNodes Integer
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    targetLowPriorityNodes Integer
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    resizeTimeout string
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    targetDedicatedNodes number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    targetLowPriorityNodes number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    resize_timeout str
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    target_dedicated_nodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    target_low_priority_nodes int
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    resizeTimeout String
    The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    targetDedicatedNodes Number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.
    targetLowPriorityNodes Number
    At least one of targetDedicatedNodes, targetLowPriorityNodes must be set.

    IPAddressProvisioningType, IPAddressProvisioningTypeArgs

    BatchManaged
    BatchManagedA public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.
    UserManaged
    UserManagedPublic IPs are provided by the user and will be used to provision the Compute Nodes.
    NoPublicIPAddresses
    NoPublicIPAddressesNo public IP Address will be created for the Compute Nodes in the Pool.
    IPAddressProvisioningTypeBatchManaged
    BatchManagedA public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.
    IPAddressProvisioningTypeUserManaged
    UserManagedPublic IPs are provided by the user and will be used to provision the Compute Nodes.
    IPAddressProvisioningTypeNoPublicIPAddresses
    NoPublicIPAddressesNo public IP Address will be created for the Compute Nodes in the Pool.
    BatchManaged
    BatchManagedA public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.
    UserManaged
    UserManagedPublic IPs are provided by the user and will be used to provision the Compute Nodes.
    NoPublicIPAddresses
    NoPublicIPAddressesNo public IP Address will be created for the Compute Nodes in the Pool.
    BatchManaged
    BatchManagedA public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.
    UserManaged
    UserManagedPublic IPs are provided by the user and will be used to provision the Compute Nodes.
    NoPublicIPAddresses
    NoPublicIPAddressesNo public IP Address will be created for the Compute Nodes in the Pool.
    BATCH_MANAGED
    BatchManagedA public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.
    USER_MANAGED
    UserManagedPublic IPs are provided by the user and will be used to provision the Compute Nodes.
    NO_PUBLIC_IP_ADDRESSES
    NoPublicIPAddressesNo public IP Address will be created for the Compute Nodes in the Pool.
    "BatchManaged"
    BatchManagedA public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.
    "UserManaged"
    UserManagedPublic IPs are provided by the user and will be used to provision the Compute Nodes.
    "NoPublicIPAddresses"
    NoPublicIPAddressesNo public IP Address will be created for the Compute Nodes in the Pool.

    ImageReference, ImageReferenceArgs

    Id string
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    Offer string
    For example, UbuntuServer or WindowsServer.
    Publisher string
    For example, Canonical or MicrosoftWindowsServer.
    Sku string
    For example, 18.04-LTS or 2022-datacenter.
    Version string
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    Id string
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    Offer string
    For example, UbuntuServer or WindowsServer.
    Publisher string
    For example, Canonical or MicrosoftWindowsServer.
    Sku string
    For example, 18.04-LTS or 2022-datacenter.
    Version string
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id String
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer String
    For example, UbuntuServer or WindowsServer.
    publisher String
    For example, Canonical or MicrosoftWindowsServer.
    sku String
    For example, 18.04-LTS or 2022-datacenter.
    version String
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id string
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer string
    For example, UbuntuServer or WindowsServer.
    publisher string
    For example, Canonical or MicrosoftWindowsServer.
    sku string
    For example, 18.04-LTS or 2022-datacenter.
    version string
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id str
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer str
    For example, UbuntuServer or WindowsServer.
    publisher str
    For example, Canonical or MicrosoftWindowsServer.
    sku str
    For example, 18.04-LTS or 2022-datacenter.
    version str
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id String
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer String
    For example, UbuntuServer or WindowsServer.
    publisher String
    For example, Canonical or MicrosoftWindowsServer.
    sku String
    For example, 18.04-LTS or 2022-datacenter.
    version String
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.

    ImageReferenceResponse, ImageReferenceResponseArgs

    Id string
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    Offer string
    For example, UbuntuServer or WindowsServer.
    Publisher string
    For example, Canonical or MicrosoftWindowsServer.
    Sku string
    For example, 18.04-LTS or 2022-datacenter.
    Version string
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    Id string
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    Offer string
    For example, UbuntuServer or WindowsServer.
    Publisher string
    For example, Canonical or MicrosoftWindowsServer.
    Sku string
    For example, 18.04-LTS or 2022-datacenter.
    Version string
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id String
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer String
    For example, UbuntuServer or WindowsServer.
    publisher String
    For example, Canonical or MicrosoftWindowsServer.
    sku String
    For example, 18.04-LTS or 2022-datacenter.
    version String
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id string
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer string
    For example, UbuntuServer or WindowsServer.
    publisher string
    For example, Canonical or MicrosoftWindowsServer.
    sku string
    For example, 18.04-LTS or 2022-datacenter.
    version string
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id str
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer str
    For example, UbuntuServer or WindowsServer.
    publisher str
    For example, Canonical or MicrosoftWindowsServer.
    sku str
    For example, 18.04-LTS or 2022-datacenter.
    version str
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.
    id String
    This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
    offer String
    For example, UbuntuServer or WindowsServer.
    publisher String
    For example, Canonical or MicrosoftWindowsServer.
    sku String
    For example, 18.04-LTS or 2022-datacenter.
    version String
    A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'.

    InboundEndpointProtocol, InboundEndpointProtocolArgs

    TCP
    TCPUse TCP for the endpoint.
    UDP
    UDPUse UDP for the endpoint.
    InboundEndpointProtocolTCP
    TCPUse TCP for the endpoint.
    InboundEndpointProtocolUDP
    UDPUse UDP for the endpoint.
    TCP
    TCPUse TCP for the endpoint.
    UDP
    UDPUse UDP for the endpoint.
    TCP
    TCPUse TCP for the endpoint.
    UDP
    UDPUse UDP for the endpoint.
    TCP
    TCPUse TCP for the endpoint.
    UDP
    UDPUse UDP for the endpoint.
    "TCP"
    TCPUse TCP for the endpoint.
    "UDP"
    UDPUse UDP for the endpoint.

    InboundNatPool, InboundNatPoolArgs

    BackendPort int
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    FrontendPortRangeEnd int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    FrontendPortRangeStart int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    Name string
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    Protocol Pulumi.AzureNative.Batch.InboundEndpointProtocol
    NetworkSecurityGroupRules List<Pulumi.AzureNative.Batch.Inputs.NetworkSecurityGroupRule>
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    BackendPort int
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    FrontendPortRangeEnd int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    FrontendPortRangeStart int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    Name string
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    Protocol InboundEndpointProtocol
    NetworkSecurityGroupRules []NetworkSecurityGroupRule
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backendPort Integer
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontendPortRangeEnd Integer
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontendPortRangeStart Integer
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name String
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol InboundEndpointProtocol
    networkSecurityGroupRules List<NetworkSecurityGroupRule>
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backendPort number
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontendPortRangeEnd number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontendPortRangeStart number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name string
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol InboundEndpointProtocol
    networkSecurityGroupRules NetworkSecurityGroupRule[]
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backend_port int
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontend_port_range_end int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontend_port_range_start int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name str
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol InboundEndpointProtocol
    network_security_group_rules Sequence[NetworkSecurityGroupRule]
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backendPort Number
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontendPortRangeEnd Number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontendPortRangeStart Number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name String
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol "TCP" | "UDP"
    networkSecurityGroupRules List<Property Map>
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.

    InboundNatPoolResponse, InboundNatPoolResponseArgs

    BackendPort int
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    FrontendPortRangeEnd int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    FrontendPortRangeStart int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    Name string
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    Protocol string
    NetworkSecurityGroupRules List<Pulumi.AzureNative.Batch.Inputs.NetworkSecurityGroupRuleResponse>
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    BackendPort int
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    FrontendPortRangeEnd int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    FrontendPortRangeStart int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    Name string
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    Protocol string
    NetworkSecurityGroupRules []NetworkSecurityGroupRuleResponse
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backendPort Integer
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontendPortRangeEnd Integer
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontendPortRangeStart Integer
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name String
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol String
    networkSecurityGroupRules List<NetworkSecurityGroupRuleResponse>
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backendPort number
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontendPortRangeEnd number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontendPortRangeStart number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name string
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol string
    networkSecurityGroupRules NetworkSecurityGroupRuleResponse[]
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backend_port int
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontend_port_range_end int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontend_port_range_start int
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name str
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol str
    network_security_group_rules Sequence[NetworkSecurityGroupRuleResponse]
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.
    backendPort Number
    This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400.
    frontendPortRangeEnd Number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    frontendPortRangeStart Number
    Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400.
    name String
    The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400.
    protocol String
    networkSecurityGroupRules List<Property Map>
    The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.

    InterNodeCommunicationState, InterNodeCommunicationStateArgs

    Enabled
    EnabledEnable network communication between virtual machines.
    Disabled
    DisabledDisable network communication between virtual machines.
    InterNodeCommunicationStateEnabled
    EnabledEnable network communication between virtual machines.
    InterNodeCommunicationStateDisabled
    DisabledDisable network communication between virtual machines.
    Enabled
    EnabledEnable network communication between virtual machines.
    Disabled
    DisabledDisable network communication between virtual machines.
    Enabled
    EnabledEnable network communication between virtual machines.
    Disabled
    DisabledDisable network communication between virtual machines.
    ENABLED
    EnabledEnable network communication between virtual machines.
    DISABLED
    DisabledDisable network communication between virtual machines.
    "Enabled"
    EnabledEnable network communication between virtual machines.
    "Disabled"
    DisabledDisable network communication between virtual machines.

    LinuxUserConfiguration, LinuxUserConfigurationArgs

    Gid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    SshPrivateKey string
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    Uid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    Gid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    SshPrivateKey string
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    Uid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid Integer
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    sshPrivateKey String
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid Integer
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    sshPrivateKey string
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    ssh_private_key str
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid Number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    sshPrivateKey String
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid Number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.

    LinuxUserConfigurationResponse, LinuxUserConfigurationResponseArgs

    Gid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    SshPrivateKey string
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    Uid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    Gid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    SshPrivateKey string
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    Uid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid Integer
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    sshPrivateKey String
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid Integer
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    sshPrivateKey string
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    ssh_private_key str
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid int
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.
    gid Number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid.
    sshPrivateKey String
    The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done).
    uid Number
    The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid.

    LoginMode, LoginModeArgs

    Batch
    BatchThe LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes.
    Interactive
    InteractiveThe LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended.
    LoginModeBatch
    BatchThe LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes.
    LoginModeInteractive
    InteractiveThe LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended.
    Batch
    BatchThe LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes.
    Interactive
    InteractiveThe LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended.
    Batch
    BatchThe LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes.
    Interactive
    InteractiveThe LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended.
    BATCH
    BatchThe LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes.
    INTERACTIVE
    InteractiveThe LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended.
    "Batch"
    BatchThe LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes.
    "Interactive"
    InteractiveThe LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended.

    MetadataItem, MetadataItemArgs

    Name string
    Value string
    Name string
    Value string
    name String
    value String
    name string
    value string
    name str
    value str
    name String
    value String

    MetadataItemResponse, MetadataItemResponseArgs

    Name string
    Value string
    Name string
    Value string
    name String
    value String
    name string
    value string
    name str
    value str
    name String
    value String

    MountConfiguration, MountConfigurationArgs

    AzureBlobFileSystemConfiguration Pulumi.AzureNative.Batch.Inputs.AzureBlobFileSystemConfiguration
    This property is mutually exclusive with all other properties.
    AzureFileShareConfiguration Pulumi.AzureNative.Batch.Inputs.AzureFileShareConfiguration
    This property is mutually exclusive with all other properties.
    CifsMountConfiguration Pulumi.AzureNative.Batch.Inputs.CIFSMountConfiguration
    This property is mutually exclusive with all other properties.
    NfsMountConfiguration Pulumi.AzureNative.Batch.Inputs.NFSMountConfiguration
    This property is mutually exclusive with all other properties.
    AzureBlobFileSystemConfiguration AzureBlobFileSystemConfiguration
    This property is mutually exclusive with all other properties.
    AzureFileShareConfiguration AzureFileShareConfiguration
    This property is mutually exclusive with all other properties.
    CifsMountConfiguration CIFSMountConfiguration
    This property is mutually exclusive with all other properties.
    NfsMountConfiguration NFSMountConfiguration
    This property is mutually exclusive with all other properties.
    azureBlobFileSystemConfiguration AzureBlobFileSystemConfiguration
    This property is mutually exclusive with all other properties.
    azureFileShareConfiguration AzureFileShareConfiguration
    This property is mutually exclusive with all other properties.
    cifsMountConfiguration CIFSMountConfiguration
    This property is mutually exclusive with all other properties.
    nfsMountConfiguration NFSMountConfiguration
    This property is mutually exclusive with all other properties.
    azureBlobFileSystemConfiguration AzureBlobFileSystemConfiguration
    This property is mutually exclusive with all other properties.
    azureFileShareConfiguration AzureFileShareConfiguration
    This property is mutually exclusive with all other properties.
    cifsMountConfiguration CIFSMountConfiguration
    This property is mutually exclusive with all other properties.
    nfsMountConfiguration NFSMountConfiguration
    This property is mutually exclusive with all other properties.
    azure_blob_file_system_configuration AzureBlobFileSystemConfiguration
    This property is mutually exclusive with all other properties.
    azure_file_share_configuration AzureFileShareConfiguration
    This property is mutually exclusive with all other properties.
    cifs_mount_configuration CIFSMountConfiguration
    This property is mutually exclusive with all other properties.
    nfs_mount_configuration NFSMountConfiguration
    This property is mutually exclusive with all other properties.
    azureBlobFileSystemConfiguration Property Map
    This property is mutually exclusive with all other properties.
    azureFileShareConfiguration Property Map
    This property is mutually exclusive with all other properties.
    cifsMountConfiguration Property Map
    This property is mutually exclusive with all other properties.
    nfsMountConfiguration Property Map
    This property is mutually exclusive with all other properties.

    MountConfigurationResponse, MountConfigurationResponseArgs

    AzureBlobFileSystemConfiguration Pulumi.AzureNative.Batch.Inputs.AzureBlobFileSystemConfigurationResponse
    This property is mutually exclusive with all other properties.
    AzureFileShareConfiguration Pulumi.AzureNative.Batch.Inputs.AzureFileShareConfigurationResponse
    This property is mutually exclusive with all other properties.
    CifsMountConfiguration Pulumi.AzureNative.Batch.Inputs.CIFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    NfsMountConfiguration Pulumi.AzureNative.Batch.Inputs.NFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    AzureBlobFileSystemConfiguration AzureBlobFileSystemConfigurationResponse
    This property is mutually exclusive with all other properties.
    AzureFileShareConfiguration AzureFileShareConfigurationResponse
    This property is mutually exclusive with all other properties.
    CifsMountConfiguration CIFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    NfsMountConfiguration NFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    azureBlobFileSystemConfiguration AzureBlobFileSystemConfigurationResponse
    This property is mutually exclusive with all other properties.
    azureFileShareConfiguration AzureFileShareConfigurationResponse
    This property is mutually exclusive with all other properties.
    cifsMountConfiguration CIFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    nfsMountConfiguration NFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    azureBlobFileSystemConfiguration AzureBlobFileSystemConfigurationResponse
    This property is mutually exclusive with all other properties.
    azureFileShareConfiguration AzureFileShareConfigurationResponse
    This property is mutually exclusive with all other properties.
    cifsMountConfiguration CIFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    nfsMountConfiguration NFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    azure_blob_file_system_configuration AzureBlobFileSystemConfigurationResponse
    This property is mutually exclusive with all other properties.
    azure_file_share_configuration AzureFileShareConfigurationResponse
    This property is mutually exclusive with all other properties.
    cifs_mount_configuration CIFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    nfs_mount_configuration NFSMountConfigurationResponse
    This property is mutually exclusive with all other properties.
    azureBlobFileSystemConfiguration Property Map
    This property is mutually exclusive with all other properties.
    azureFileShareConfiguration Property Map
    This property is mutually exclusive with all other properties.
    cifsMountConfiguration Property Map
    This property is mutually exclusive with all other properties.
    nfsMountConfiguration Property Map
    This property is mutually exclusive with all other properties.

    NFSMountConfiguration, NFSMountConfigurationArgs

    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source string
    mountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source str
    mount_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.

    NFSMountConfigurationResponse, NFSMountConfigurationResponseArgs

    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    RelativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    Source string
    MountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.
    relativeMountPath string
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source string
    mountOptions string
    These are 'net use' options in Windows and 'mount' options in Linux.
    relative_mount_path str
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source str
    mount_options str
    These are 'net use' options in Windows and 'mount' options in Linux.
    relativeMountPath String
    All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable.
    source String
    mountOptions String
    These are 'net use' options in Windows and 'mount' options in Linux.

    NetworkConfiguration, NetworkConfigurationArgs

    DynamicVnetAssignmentScope Pulumi.AzureNative.Batch.DynamicVNetAssignmentScope
    EnableAcceleratedNetworking bool
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    EndpointConfiguration Pulumi.AzureNative.Batch.Inputs.PoolEndpointConfiguration
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    PublicIPAddressConfiguration Pulumi.AzureNative.Batch.Inputs.PublicIPAddressConfiguration
    This property is only supported on Pools with the virtualMachineConfiguration property.
    SubnetId string
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    DynamicVnetAssignmentScope DynamicVNetAssignmentScope
    EnableAcceleratedNetworking bool
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    EndpointConfiguration PoolEndpointConfiguration
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    PublicIPAddressConfiguration PublicIPAddressConfiguration
    This property is only supported on Pools with the virtualMachineConfiguration property.
    SubnetId string
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamicVnetAssignmentScope DynamicVNetAssignmentScope
    enableAcceleratedNetworking Boolean
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpointConfiguration PoolEndpointConfiguration
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    publicIPAddressConfiguration PublicIPAddressConfiguration
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnetId String
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamicVnetAssignmentScope DynamicVNetAssignmentScope
    enableAcceleratedNetworking boolean
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpointConfiguration PoolEndpointConfiguration
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    publicIPAddressConfiguration PublicIPAddressConfiguration
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnetId string
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamic_vnet_assignment_scope DynamicVNetAssignmentScope
    enable_accelerated_networking bool
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpoint_configuration PoolEndpointConfiguration
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    public_ip_address_configuration PublicIPAddressConfiguration
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnet_id str
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamicVnetAssignmentScope "none" | "job"
    enableAcceleratedNetworking Boolean
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpointConfiguration Property Map
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    publicIPAddressConfiguration Property Map
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnetId String
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration

    NetworkConfigurationResponse, NetworkConfigurationResponseArgs

    DynamicVnetAssignmentScope string
    EnableAcceleratedNetworking bool
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    EndpointConfiguration Pulumi.AzureNative.Batch.Inputs.PoolEndpointConfigurationResponse
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    PublicIPAddressConfiguration Pulumi.AzureNative.Batch.Inputs.PublicIPAddressConfigurationResponse
    This property is only supported on Pools with the virtualMachineConfiguration property.
    SubnetId string
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    DynamicVnetAssignmentScope string
    EnableAcceleratedNetworking bool
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    EndpointConfiguration PoolEndpointConfigurationResponse
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    PublicIPAddressConfiguration PublicIPAddressConfigurationResponse
    This property is only supported on Pools with the virtualMachineConfiguration property.
    SubnetId string
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamicVnetAssignmentScope String
    enableAcceleratedNetworking Boolean
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpointConfiguration PoolEndpointConfigurationResponse
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    publicIPAddressConfiguration PublicIPAddressConfigurationResponse
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnetId String
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamicVnetAssignmentScope string
    enableAcceleratedNetworking boolean
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpointConfiguration PoolEndpointConfigurationResponse
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    publicIPAddressConfiguration PublicIPAddressConfigurationResponse
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnetId string
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamic_vnet_assignment_scope str
    enable_accelerated_networking bool
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpoint_configuration PoolEndpointConfigurationResponse
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    public_ip_address_configuration PublicIPAddressConfigurationResponse
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnet_id str
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration
    dynamicVnetAssignmentScope String
    enableAcceleratedNetworking Boolean
    Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
    endpointConfiguration Property Map
    Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property.
    publicIPAddressConfiguration Property Map
    This property is only supported on Pools with the virtualMachineConfiguration property.
    subnetId String
    The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration

    NetworkSecurityGroupRule, NetworkSecurityGroupRuleArgs

    Access Pulumi.AzureNative.Batch.NetworkSecurityGroupRuleAccess
    Priority int
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    SourceAddressPrefix string
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    SourcePortRanges List<string>
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    Access NetworkSecurityGroupRuleAccess
    Priority int
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    SourceAddressPrefix string
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    SourcePortRanges []string
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access NetworkSecurityGroupRuleAccess
    priority Integer
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    sourceAddressPrefix String
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    sourcePortRanges List<String>
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access NetworkSecurityGroupRuleAccess
    priority number
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    sourceAddressPrefix string
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    sourcePortRanges string[]
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access NetworkSecurityGroupRuleAccess
    priority int
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    source_address_prefix str
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    source_port_ranges Sequence[str]
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access "Allow" | "Deny"
    priority Number
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    sourceAddressPrefix String
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    sourcePortRanges List<String>
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.

    NetworkSecurityGroupRuleAccess, NetworkSecurityGroupRuleAccessArgs

    Allow
    AllowAllow access.
    Deny
    DenyDeny access.
    NetworkSecurityGroupRuleAccessAllow
    AllowAllow access.
    NetworkSecurityGroupRuleAccessDeny
    DenyDeny access.
    Allow
    AllowAllow access.
    Deny
    DenyDeny access.
    Allow
    AllowAllow access.
    Deny
    DenyDeny access.
    ALLOW
    AllowAllow access.
    DENY
    DenyDeny access.
    "Allow"
    AllowAllow access.
    "Deny"
    DenyDeny access.

    NetworkSecurityGroupRuleResponse, NetworkSecurityGroupRuleResponseArgs

    Access string
    Priority int
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    SourceAddressPrefix string
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    SourcePortRanges List<string>
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    Access string
    Priority int
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    SourceAddressPrefix string
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    SourcePortRanges []string
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access String
    priority Integer
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    sourceAddressPrefix String
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    sourcePortRanges List<String>
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access string
    priority number
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    sourceAddressPrefix string
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    sourcePortRanges string[]
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access str
    priority int
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    source_address_prefix str
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    source_port_ranges Sequence[str]
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.
    access String
    priority Number
    Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400.
    sourceAddressPrefix String
    Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400.
    sourcePortRanges List<String>
    Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *.

    NodeCommunicationMode, NodeCommunicationModeArgs

    Default
    DefaultThe node communication mode is automatically set by the Batch service.
    Classic
    ClassicNodes using the Classic communication mode require inbound TCP communication on ports 29876 and 29877 from the "BatchNodeManagement.{region}" service tag and outbound TCP communication on port 443 to the "Storage.region" and "BatchNodeManagement.{region}" service tags.
    Simplified
    SimplifiedNodes using the Simplified communication mode require outbound TCP communication on port 443 to the "BatchNodeManagement.{region}" service tag. No open inbound ports are required.
    NodeCommunicationModeDefault
    DefaultThe node communication mode is automatically set by the Batch service.
    NodeCommunicationModeClassic
    ClassicNodes using the Classic communication mode require inbound TCP communication on ports 29876 and 29877 from the "BatchNodeManagement.{region}" service tag and outbound TCP communication on port 443 to the "Storage.region" and "BatchNodeManagement.{region}" service tags.
    NodeCommunicationModeSimplified
    SimplifiedNodes using the Simplified communication mode require outbound TCP communication on port 443 to the "BatchNodeManagement.{region}" service tag. No open inbound ports are required.
    Default
    DefaultThe node communication mode is automatically set by the Batch service.
    Classic
    ClassicNodes using the Classic communication mode require inbound TCP communication on ports 29876 and 29877 from the "BatchNodeManagement.{region}" service tag and outbound TCP communication on port 443 to the "Storage.region" and "BatchNodeManagement.{region}" service tags.
    Simplified
    SimplifiedNodes using the Simplified communication mode require outbound TCP communication on port 443 to the "BatchNodeManagement.{region}" service tag. No open inbound ports are required.
    Default
    DefaultThe node communication mode is automatically set by the Batch service.
    Classic
    ClassicNodes using the Classic communication mode require inbound TCP communication on ports 29876 and 29877 from the "BatchNodeManagement.{region}" service tag and outbound TCP communication on port 443 to the "Storage.region" and "BatchNodeManagement.{region}" service tags.
    Simplified
    SimplifiedNodes using the Simplified communication mode require outbound TCP communication on port 443 to the "BatchNodeManagement.{region}" service tag. No open inbound ports are required.
    DEFAULT
    DefaultThe node communication mode is automatically set by the Batch service.
    CLASSIC
    ClassicNodes using the Classic communication mode require inbound TCP communication on ports 29876 and 29877 from the "BatchNodeManagement.{region}" service tag and outbound TCP communication on port 443 to the "Storage.region" and "BatchNodeManagement.{region}" service tags.
    SIMPLIFIED
    SimplifiedNodes using the Simplified communication mode require outbound TCP communication on port 443 to the "BatchNodeManagement.{region}" service tag. No open inbound ports are required.
    "Default"
    DefaultThe node communication mode is automatically set by the Batch service.
    "Classic"
    ClassicNodes using the Classic communication mode require inbound TCP communication on ports 29876 and 29877 from the "BatchNodeManagement.{region}" service tag and outbound TCP communication on port 443 to the "Storage.region" and "BatchNodeManagement.{region}" service tags.
    "Simplified"
    SimplifiedNodes using the Simplified communication mode require outbound TCP communication on port 443 to the "BatchNodeManagement.{region}" service tag. No open inbound ports are required.

    NodePlacementConfiguration, NodePlacementConfigurationArgs

    Policy Pulumi.AzureNative.Batch.NodePlacementPolicyType
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    Policy NodePlacementPolicyType
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy NodePlacementPolicyType
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy NodePlacementPolicyType
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy NodePlacementPolicyType
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy "Regional" | "Zonal"
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.

    NodePlacementConfigurationResponse, NodePlacementConfigurationResponseArgs

    Policy string
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    Policy string
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy String
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy string
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy str
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
    policy String
    Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.

    NodePlacementPolicyType, NodePlacementPolicyTypeArgs

    Regional
    RegionalAll nodes in the pool will be allocated in the same region.
    Zonal
    ZonalNodes in the pool will be spread across different zones with best effort balancing.
    NodePlacementPolicyTypeRegional
    RegionalAll nodes in the pool will be allocated in the same region.
    NodePlacementPolicyTypeZonal
    ZonalNodes in the pool will be spread across different zones with best effort balancing.
    Regional
    RegionalAll nodes in the pool will be allocated in the same region.
    Zonal
    ZonalNodes in the pool will be spread across different zones with best effort balancing.
    Regional
    RegionalAll nodes in the pool will be allocated in the same region.
    Zonal
    ZonalNodes in the pool will be spread across different zones with best effort balancing.
    REGIONAL
    RegionalAll nodes in the pool will be allocated in the same region.
    ZONAL
    ZonalNodes in the pool will be spread across different zones with best effort balancing.
    "Regional"
    RegionalAll nodes in the pool will be allocated in the same region.
    "Zonal"
    ZonalNodes in the pool will be spread across different zones with best effort balancing.

    OSDisk, OSDiskArgs

    OSDiskResponse, OSDiskResponseArgs

    PoolEndpointConfiguration, PoolEndpointConfigurationArgs

    InboundNatPools List<Pulumi.AzureNative.Batch.Inputs.InboundNatPool>
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    InboundNatPools []InboundNatPool
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inboundNatPools List<InboundNatPool>
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inboundNatPools InboundNatPool[]
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inbound_nat_pools Sequence[InboundNatPool]
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inboundNatPools List<Property Map>
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.

    PoolEndpointConfigurationResponse, PoolEndpointConfigurationResponseArgs

    InboundNatPools List<Pulumi.AzureNative.Batch.Inputs.InboundNatPoolResponse>
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    InboundNatPools []InboundNatPoolResponse
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inboundNatPools List<InboundNatPoolResponse>
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inboundNatPools InboundNatPoolResponse[]
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inbound_nat_pools Sequence[InboundNatPoolResponse]
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.
    inboundNatPools List<Property Map>
    The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses.

    PoolIdentityType, PoolIdentityTypeArgs

    UserAssigned
    UserAssignedBatch pool has user assigned identities with it.
    None
    NoneBatch pool has no identity associated with it. Setting None in update pool will remove existing identities.
    PoolIdentityTypeUserAssigned
    UserAssignedBatch pool has user assigned identities with it.
    PoolIdentityTypeNone
    NoneBatch pool has no identity associated with it. Setting None in update pool will remove existing identities.
    UserAssigned
    UserAssignedBatch pool has user assigned identities with it.
    None
    NoneBatch pool has no identity associated with it. Setting None in update pool will remove existing identities.
    UserAssigned
    UserAssignedBatch pool has user assigned identities with it.
    None
    NoneBatch pool has no identity associated with it. Setting None in update pool will remove existing identities.
    USER_ASSIGNED
    UserAssignedBatch pool has user assigned identities with it.
    NONE
    NoneBatch pool has no identity associated with it. Setting None in update pool will remove existing identities.
    "UserAssigned"
    UserAssignedBatch pool has user assigned identities with it.
    "None"
    NoneBatch pool has no identity associated with it. Setting None in update pool will remove existing identities.

    PublicIPAddressConfiguration, PublicIPAddressConfigurationArgs

    IpAddressIds List<string>
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    Provision Pulumi.AzureNative.Batch.IPAddressProvisioningType
    The default value is BatchManaged
    IpAddressIds []string
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    Provision IPAddressProvisioningType
    The default value is BatchManaged
    ipAddressIds List<String>
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision IPAddressProvisioningType
    The default value is BatchManaged
    ipAddressIds string[]
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision IPAddressProvisioningType
    The default value is BatchManaged
    ip_address_ids Sequence[str]
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision IPAddressProvisioningType
    The default value is BatchManaged
    ipAddressIds List<String>
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision "BatchManaged" | "UserManaged" | "NoPublicIPAddresses"
    The default value is BatchManaged

    PublicIPAddressConfigurationResponse, PublicIPAddressConfigurationResponseArgs

    IpAddressIds List<string>
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    Provision string
    The default value is BatchManaged
    IpAddressIds []string
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    Provision string
    The default value is BatchManaged
    ipAddressIds List<String>
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision String
    The default value is BatchManaged
    ipAddressIds string[]
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision string
    The default value is BatchManaged
    ip_address_ids Sequence[str]
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision str
    The default value is BatchManaged
    ipAddressIds List<String>
    The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}.
    provision String
    The default value is BatchManaged

    ResizeErrorResponse, ResizeErrorResponseArgs

    Code string
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    Message string
    A message describing the error, intended to be suitable for display in a user interface.
    Details List<Pulumi.AzureNative.Batch.Inputs.ResizeErrorResponse>
    Code string
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    Message string
    A message describing the error, intended to be suitable for display in a user interface.
    Details []ResizeErrorResponse
    code String
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message String
    A message describing the error, intended to be suitable for display in a user interface.
    details List<ResizeErrorResponse>
    code string
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message string
    A message describing the error, intended to be suitable for display in a user interface.
    details ResizeErrorResponse[]
    code str
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message str
    A message describing the error, intended to be suitable for display in a user interface.
    details Sequence[ResizeErrorResponse]
    code String
    An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
    message String
    A message describing the error, intended to be suitable for display in a user interface.
    details List<Property Map>

    ResizeOperationStatusResponse, ResizeOperationStatusResponseArgs

    Errors List<Pulumi.AzureNative.Batch.Inputs.ResizeErrorResponse>
    This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady.
    NodeDeallocationOption string
    The default value is requeue.
    ResizeTimeout string
    The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    StartTime string
    TargetDedicatedNodes int
    TargetLowPriorityNodes int
    Errors []ResizeErrorResponse
    This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady.
    NodeDeallocationOption string
    The default value is requeue.
    ResizeTimeout string
    The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    StartTime string
    TargetDedicatedNodes int
    TargetLowPriorityNodes int
    errors List<ResizeErrorResponse>
    This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady.
    nodeDeallocationOption String
    The default value is requeue.
    resizeTimeout String
    The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    startTime String
    targetDedicatedNodes Integer
    targetLowPriorityNodes Integer
    errors ResizeErrorResponse[]
    This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady.
    nodeDeallocationOption string
    The default value is requeue.
    resizeTimeout string
    The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    startTime string
    targetDedicatedNodes number
    targetLowPriorityNodes number
    errors Sequence[ResizeErrorResponse]
    This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady.
    node_deallocation_option str
    The default value is requeue.
    resize_timeout str
    The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    start_time str
    target_dedicated_nodes int
    target_low_priority_nodes int
    errors List<Property Map>
    This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady.
    nodeDeallocationOption String
    The default value is requeue.
    resizeTimeout String
    The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).
    startTime String
    targetDedicatedNodes Number
    targetLowPriorityNodes Number

    ResourceFile, ResourceFileArgs

    AutoStorageContainerName string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    BlobPrefix string
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    FileMode string
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    FilePath string
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    HttpUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    IdentityReference Pulumi.AzureNative.Batch.Inputs.ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    StorageContainerUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    AutoStorageContainerName string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    BlobPrefix string
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    FileMode string
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    FilePath string
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    HttpUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    IdentityReference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    StorageContainerUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    autoStorageContainerName String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blobPrefix String
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    fileMode String
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    filePath String
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    httpUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identityReference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storageContainerUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    autoStorageContainerName string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blobPrefix string
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    fileMode string
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    filePath string
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    httpUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identityReference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storageContainerUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    auto_storage_container_name str
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blob_prefix str
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    file_mode str
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    file_path str
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    http_url str
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identity_reference ComputeNodeIdentityReference
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storage_container_url str
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    autoStorageContainerName String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blobPrefix String
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    fileMode String
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    filePath String
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    httpUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identityReference Property Map
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storageContainerUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.

    ResourceFileResponse, ResourceFileResponseArgs

    AutoStorageContainerName string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    BlobPrefix string
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    FileMode string
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    FilePath string
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    HttpUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    IdentityReference Pulumi.AzureNative.Batch.Inputs.ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    StorageContainerUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    AutoStorageContainerName string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    BlobPrefix string
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    FileMode string
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    FilePath string
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    HttpUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    IdentityReference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    StorageContainerUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    autoStorageContainerName String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blobPrefix String
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    fileMode String
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    filePath String
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    httpUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identityReference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storageContainerUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    autoStorageContainerName string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blobPrefix string
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    fileMode string
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    filePath string
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    httpUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identityReference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storageContainerUrl string
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    auto_storage_container_name str
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blob_prefix str
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    file_mode str
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    file_path str
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    http_url str
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identity_reference ComputeNodeIdentityReferenceResponse
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storage_container_url str
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.
    autoStorageContainerName String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified.
    blobPrefix String
    The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded.
    fileMode String
    This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file.
    filePath String
    If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..').
    httpUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable from compute nodes. There are three ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, use a managed identity with read permission, or set the ACL for the blob or its container to allow public access.
    identityReference Property Map
    The reference to a user assigned identity associated with the Batch pool which a compute node will use.
    storageContainerUrl String
    The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable from compute nodes. There are three ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, use a managed identity with read and list permissions, or set the ACL for the container to allow public access.

    ScaleSettings, ScaleSettingsArgs

    AutoScale Pulumi.AzureNative.Batch.Inputs.AutoScaleSettings
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    FixedScale Pulumi.AzureNative.Batch.Inputs.FixedScaleSettings
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    AutoScale AutoScaleSettings
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    FixedScale FixedScaleSettings
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    autoScale AutoScaleSettings
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixedScale FixedScaleSettings
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    autoScale AutoScaleSettings
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixedScale FixedScaleSettings
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    auto_scale AutoScaleSettings
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixed_scale FixedScaleSettings
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    autoScale Property Map
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixedScale Property Map
    This property and autoScale are mutually exclusive and one of the properties must be specified.

    ScaleSettingsResponse, ScaleSettingsResponseArgs

    AutoScale Pulumi.AzureNative.Batch.Inputs.AutoScaleSettingsResponse
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    FixedScale Pulumi.AzureNative.Batch.Inputs.FixedScaleSettingsResponse
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    AutoScale AutoScaleSettingsResponse
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    FixedScale FixedScaleSettingsResponse
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    autoScale AutoScaleSettingsResponse
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixedScale FixedScaleSettingsResponse
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    autoScale AutoScaleSettingsResponse
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixedScale FixedScaleSettingsResponse
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    auto_scale AutoScaleSettingsResponse
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixed_scale FixedScaleSettingsResponse
    This property and autoScale are mutually exclusive and one of the properties must be specified.
    autoScale Property Map
    This property and fixedScale are mutually exclusive and one of the properties must be specified.
    fixedScale Property Map
    This property and autoScale are mutually exclusive and one of the properties must be specified.

    StartTask, StartTaskArgs

    CommandLine string
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    ContainerSettings Pulumi.AzureNative.Batch.Inputs.TaskContainerSettings
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    EnvironmentSettings List<Pulumi.AzureNative.Batch.Inputs.EnvironmentSetting>
    MaxTaskRetryCount int
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    ResourceFiles List<Pulumi.AzureNative.Batch.Inputs.ResourceFile>
    UserIdentity Pulumi.AzureNative.Batch.Inputs.UserIdentity
    If omitted, the task runs as a non-administrative user unique to the task.
    WaitForSuccess bool
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    CommandLine string
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    ContainerSettings TaskContainerSettings
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    EnvironmentSettings []EnvironmentSetting
    MaxTaskRetryCount int
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    ResourceFiles []ResourceFile
    UserIdentity UserIdentity
    If omitted, the task runs as a non-administrative user unique to the task.
    WaitForSuccess bool
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    commandLine String
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    containerSettings TaskContainerSettings
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environmentSettings List<EnvironmentSetting>
    maxTaskRetryCount Integer
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resourceFiles List<ResourceFile>
    userIdentity UserIdentity
    If omitted, the task runs as a non-administrative user unique to the task.
    waitForSuccess Boolean
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    commandLine string
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    containerSettings TaskContainerSettings
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environmentSettings EnvironmentSetting[]
    maxTaskRetryCount number
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resourceFiles ResourceFile[]
    userIdentity UserIdentity
    If omitted, the task runs as a non-administrative user unique to the task.
    waitForSuccess boolean
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    command_line str
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    container_settings TaskContainerSettings
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environment_settings Sequence[EnvironmentSetting]
    max_task_retry_count int
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resource_files Sequence[ResourceFile]
    user_identity UserIdentity
    If omitted, the task runs as a non-administrative user unique to the task.
    wait_for_success bool
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    commandLine String
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    containerSettings Property Map
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environmentSettings List<Property Map>
    maxTaskRetryCount Number
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resourceFiles List<Property Map>
    userIdentity Property Map
    If omitted, the task runs as a non-administrative user unique to the task.
    waitForSuccess Boolean
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.

    StartTaskResponse, StartTaskResponseArgs

    CommandLine string
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    ContainerSettings Pulumi.AzureNative.Batch.Inputs.TaskContainerSettingsResponse
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    EnvironmentSettings List<Pulumi.AzureNative.Batch.Inputs.EnvironmentSettingResponse>
    MaxTaskRetryCount int
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    ResourceFiles List<Pulumi.AzureNative.Batch.Inputs.ResourceFileResponse>
    UserIdentity Pulumi.AzureNative.Batch.Inputs.UserIdentityResponse
    If omitted, the task runs as a non-administrative user unique to the task.
    WaitForSuccess bool
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    CommandLine string
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    ContainerSettings TaskContainerSettingsResponse
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    EnvironmentSettings []EnvironmentSettingResponse
    MaxTaskRetryCount int
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    ResourceFiles []ResourceFileResponse
    UserIdentity UserIdentityResponse
    If omitted, the task runs as a non-administrative user unique to the task.
    WaitForSuccess bool
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    commandLine String
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    containerSettings TaskContainerSettingsResponse
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environmentSettings List<EnvironmentSettingResponse>
    maxTaskRetryCount Integer
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resourceFiles List<ResourceFileResponse>
    userIdentity UserIdentityResponse
    If omitted, the task runs as a non-administrative user unique to the task.
    waitForSuccess Boolean
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    commandLine string
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    containerSettings TaskContainerSettingsResponse
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environmentSettings EnvironmentSettingResponse[]
    maxTaskRetryCount number
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resourceFiles ResourceFileResponse[]
    userIdentity UserIdentityResponse
    If omitted, the task runs as a non-administrative user unique to the task.
    waitForSuccess boolean
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    command_line str
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    container_settings TaskContainerSettingsResponse
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environment_settings Sequence[EnvironmentSettingResponse]
    max_task_retry_count int
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resource_files Sequence[ResourceFileResponse]
    user_identity UserIdentityResponse
    If omitted, the task runs as a non-administrative user unique to the task.
    wait_for_success bool
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.
    commandLine String
    The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. Required if any other properties of the startTask are specified.
    containerSettings Property Map
    When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container.
    environmentSettings List<Property Map>
    maxTaskRetryCount Number
    The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit. Default is 0.
    resourceFiles List<Property Map>
    userIdentity Property Map
    If omitted, the task runs as a non-administrative user unique to the task.
    waitForSuccess Boolean
    If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true.

    StorageAccountType, StorageAccountTypeArgs

    Standard_LRS
    Standard_LRSThe data disk should use standard locally redundant storage.
    Premium_LRS
    Premium_LRSThe data disk should use premium locally redundant storage.
    StorageAccountType_Standard_LRS
    Standard_LRSThe data disk should use standard locally redundant storage.
    StorageAccountType_Premium_LRS
    Premium_LRSThe data disk should use premium locally redundant storage.
    Standard_LRS
    Standard_LRSThe data disk should use standard locally redundant storage.
    Premium_LRS
    Premium_LRSThe data disk should use premium locally redundant storage.
    Standard_LRS
    Standard_LRSThe data disk should use standard locally redundant storage.
    Premium_LRS
    Premium_LRSThe data disk should use premium locally redundant storage.
    STANDARD_LRS
    Standard_LRSThe data disk should use standard locally redundant storage.
    PREMIUM_LRS
    Premium_LRSThe data disk should use premium locally redundant storage.
    "Standard_LRS"
    Standard_LRSThe data disk should use standard locally redundant storage.
    "Premium_LRS"
    Premium_LRSThe data disk should use premium locally redundant storage.

    TaskContainerSettings, TaskContainerSettingsArgs

    ImageName string
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    ContainerRunOptions string
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    Registry Pulumi.AzureNative.Batch.Inputs.ContainerRegistry
    This setting can be omitted if was already provided at pool creation.
    WorkingDirectory Pulumi.AzureNative.Batch.ContainerWorkingDirectory
    ImageName string
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    ContainerRunOptions string
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    Registry ContainerRegistry
    This setting can be omitted if was already provided at pool creation.
    WorkingDirectory ContainerWorkingDirectory
    imageName String
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    containerRunOptions String
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry ContainerRegistry
    This setting can be omitted if was already provided at pool creation.
    workingDirectory ContainerWorkingDirectory
    imageName string
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    containerRunOptions string
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry ContainerRegistry
    This setting can be omitted if was already provided at pool creation.
    workingDirectory ContainerWorkingDirectory
    image_name str
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    container_run_options str
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry ContainerRegistry
    This setting can be omitted if was already provided at pool creation.
    working_directory ContainerWorkingDirectory
    imageName String
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    containerRunOptions String
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry Property Map
    This setting can be omitted if was already provided at pool creation.
    workingDirectory "TaskWorkingDirectory" | "ContainerImageDefault"

    TaskContainerSettingsResponse, TaskContainerSettingsResponseArgs

    ImageName string
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    ContainerRunOptions string
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    Registry Pulumi.AzureNative.Batch.Inputs.ContainerRegistryResponse
    This setting can be omitted if was already provided at pool creation.
    WorkingDirectory string
    ImageName string
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    ContainerRunOptions string
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    Registry ContainerRegistryResponse
    This setting can be omitted if was already provided at pool creation.
    WorkingDirectory string
    imageName String
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    containerRunOptions String
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry ContainerRegistryResponse
    This setting can be omitted if was already provided at pool creation.
    workingDirectory String
    imageName string
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    containerRunOptions string
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry ContainerRegistryResponse
    This setting can be omitted if was already provided at pool creation.
    workingDirectory string
    image_name str
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    container_run_options str
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry ContainerRegistryResponse
    This setting can be omitted if was already provided at pool creation.
    working_directory str
    imageName String
    This is the full image reference, as would be specified to "docker pull". If no tag is provided as part of the image name, the tag ":latest" is used as a default.
    containerRunOptions String
    These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service.
    registry Property Map
    This setting can be omitted if was already provided at pool creation.
    workingDirectory String

    TaskSchedulingPolicy, TaskSchedulingPolicyArgs

    TaskSchedulingPolicyResponse, TaskSchedulingPolicyResponseArgs

    UserAccount, UserAccountArgs

    Name string
    Password string
    ElevationLevel Pulumi.AzureNative.Batch.ElevationLevel
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    LinuxUserConfiguration Pulumi.AzureNative.Batch.Inputs.LinuxUserConfiguration
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    WindowsUserConfiguration Pulumi.AzureNative.Batch.Inputs.WindowsUserConfiguration
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    Name string
    Password string
    ElevationLevel ElevationLevel
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    LinuxUserConfiguration LinuxUserConfiguration
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    WindowsUserConfiguration WindowsUserConfiguration
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name String
    password String
    elevationLevel ElevationLevel
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linuxUserConfiguration LinuxUserConfiguration
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windowsUserConfiguration WindowsUserConfiguration
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name string
    password string
    elevationLevel ElevationLevel
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linuxUserConfiguration LinuxUserConfiguration
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windowsUserConfiguration WindowsUserConfiguration
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name str
    password str
    elevation_level ElevationLevel
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linux_user_configuration LinuxUserConfiguration
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windows_user_configuration WindowsUserConfiguration
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name String
    password String
    elevationLevel "NonAdmin" | "Admin"
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linuxUserConfiguration Property Map
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windowsUserConfiguration Property Map
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.

    UserAccountResponse, UserAccountResponseArgs

    Name string
    Password string
    ElevationLevel string
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    LinuxUserConfiguration Pulumi.AzureNative.Batch.Inputs.LinuxUserConfigurationResponse
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    WindowsUserConfiguration Pulumi.AzureNative.Batch.Inputs.WindowsUserConfigurationResponse
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    Name string
    Password string
    ElevationLevel string
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    LinuxUserConfiguration LinuxUserConfigurationResponse
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    WindowsUserConfiguration WindowsUserConfigurationResponse
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name String
    password String
    elevationLevel String
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linuxUserConfiguration LinuxUserConfigurationResponse
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windowsUserConfiguration WindowsUserConfigurationResponse
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name string
    password string
    elevationLevel string
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linuxUserConfiguration LinuxUserConfigurationResponse
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windowsUserConfiguration WindowsUserConfigurationResponse
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name str
    password str
    elevation_level str
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linux_user_configuration LinuxUserConfigurationResponse
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windows_user_configuration WindowsUserConfigurationResponse
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.
    name String
    password String
    elevationLevel String
    nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.
    linuxUserConfiguration Property Map
    This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.
    windowsUserConfiguration Property Map
    This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.

    UserAssignedIdentitiesResponse, UserAssignedIdentitiesResponseArgs

    ClientId string
    The client id of user assigned identity.
    PrincipalId string
    The principal id of user assigned identity.
    ClientId string
    The client id of user assigned identity.
    PrincipalId string
    The principal id of user assigned identity.
    clientId String
    The client id of user assigned identity.
    principalId String
    The principal id of user assigned identity.
    clientId string
    The client id of user assigned identity.
    principalId string
    The principal id of user assigned identity.
    client_id str
    The client id of user assigned identity.
    principal_id str
    The principal id of user assigned identity.
    clientId String
    The client id of user assigned identity.
    principalId String
    The principal id of user assigned identity.

    UserIdentity, UserIdentityArgs

    AutoUser Pulumi.AzureNative.Batch.Inputs.AutoUserSpecification
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    UserName string
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    AutoUser AutoUserSpecification
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    UserName string
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    autoUser AutoUserSpecification
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    userName String
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    autoUser AutoUserSpecification
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    userName string
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    auto_user AutoUserSpecification
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    user_name str
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    autoUser Property Map
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    userName String
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.

    UserIdentityResponse, UserIdentityResponseArgs

    AutoUser Pulumi.AzureNative.Batch.Inputs.AutoUserSpecificationResponse
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    UserName string
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    AutoUser AutoUserSpecificationResponse
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    UserName string
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    autoUser AutoUserSpecificationResponse
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    userName String
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    autoUser AutoUserSpecificationResponse
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    userName string
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    auto_user AutoUserSpecificationResponse
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    user_name str
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    autoUser Property Map
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.
    userName String
    The userName and autoUser properties are mutually exclusive; you must specify one but not both.

    VMExtension, VMExtensionArgs

    Name string
    Publisher string
    Type string
    AutoUpgradeMinorVersion bool
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    EnableAutomaticUpgrade bool
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    ProtectedSettings object
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    ProvisionAfterExtensions List<string>
    Collection of extension names after which this extension needs to be provisioned.
    Settings object
    TypeHandlerVersion string
    Name string
    Publisher string
    Type string
    AutoUpgradeMinorVersion bool
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    EnableAutomaticUpgrade bool
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    ProtectedSettings interface{}
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    ProvisionAfterExtensions []string
    Collection of extension names after which this extension needs to be provisioned.
    Settings interface{}
    TypeHandlerVersion string
    name String
    publisher String
    type String
    autoUpgradeMinorVersion Boolean
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enableAutomaticUpgrade Boolean
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protectedSettings Object
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provisionAfterExtensions List<String>
    Collection of extension names after which this extension needs to be provisioned.
    settings Object
    typeHandlerVersion String
    name string
    publisher string
    type string
    autoUpgradeMinorVersion boolean
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enableAutomaticUpgrade boolean
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protectedSettings any
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provisionAfterExtensions string[]
    Collection of extension names after which this extension needs to be provisioned.
    settings any
    typeHandlerVersion string
    name str
    publisher str
    type str
    auto_upgrade_minor_version bool
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enable_automatic_upgrade bool
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protected_settings Any
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provision_after_extensions Sequence[str]
    Collection of extension names after which this extension needs to be provisioned.
    settings Any
    type_handler_version str
    name String
    publisher String
    type String
    autoUpgradeMinorVersion Boolean
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enableAutomaticUpgrade Boolean
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protectedSettings Any
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provisionAfterExtensions List<String>
    Collection of extension names after which this extension needs to be provisioned.
    settings Any
    typeHandlerVersion String

    VMExtensionResponse, VMExtensionResponseArgs

    Name string
    Publisher string
    Type string
    AutoUpgradeMinorVersion bool
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    EnableAutomaticUpgrade bool
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    ProtectedSettings object
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    ProvisionAfterExtensions List<string>
    Collection of extension names after which this extension needs to be provisioned.
    Settings object
    TypeHandlerVersion string
    Name string
    Publisher string
    Type string
    AutoUpgradeMinorVersion bool
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    EnableAutomaticUpgrade bool
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    ProtectedSettings interface{}
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    ProvisionAfterExtensions []string
    Collection of extension names after which this extension needs to be provisioned.
    Settings interface{}
    TypeHandlerVersion string
    name String
    publisher String
    type String
    autoUpgradeMinorVersion Boolean
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enableAutomaticUpgrade Boolean
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protectedSettings Object
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provisionAfterExtensions List<String>
    Collection of extension names after which this extension needs to be provisioned.
    settings Object
    typeHandlerVersion String
    name string
    publisher string
    type string
    autoUpgradeMinorVersion boolean
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enableAutomaticUpgrade boolean
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protectedSettings any
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provisionAfterExtensions string[]
    Collection of extension names after which this extension needs to be provisioned.
    settings any
    typeHandlerVersion string
    name str
    publisher str
    type str
    auto_upgrade_minor_version bool
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enable_automatic_upgrade bool
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protected_settings Any
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provision_after_extensions Sequence[str]
    Collection of extension names after which this extension needs to be provisioned.
    settings Any
    type_handler_version str
    name String
    publisher String
    type String
    autoUpgradeMinorVersion Boolean
    Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true.
    enableAutomaticUpgrade Boolean
    Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available.
    protectedSettings Any
    The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all.
    provisionAfterExtensions List<String>
    Collection of extension names after which this extension needs to be provisioned.
    settings Any
    typeHandlerVersion String

    VirtualMachineConfiguration, VirtualMachineConfigurationArgs

    ImageReference Pulumi.AzureNative.Batch.Inputs.ImageReference
    NodeAgentSkuId string
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    ContainerConfiguration Pulumi.AzureNative.Batch.Inputs.ContainerConfiguration
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    DataDisks List<Pulumi.AzureNative.Batch.Inputs.DataDisk>
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    DiskEncryptionConfiguration Pulumi.AzureNative.Batch.Inputs.DiskEncryptionConfiguration
    If specified, encryption is performed on each node in the pool during node provisioning.
    Extensions List<Pulumi.AzureNative.Batch.Inputs.VMExtension>
    If specified, the extensions mentioned in this configuration will be installed on each node.
    LicenseType string

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    NodePlacementConfiguration Pulumi.AzureNative.Batch.Inputs.NodePlacementConfiguration
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    OsDisk Pulumi.AzureNative.Batch.Inputs.OSDisk
    Contains configuration for ephemeral OSDisk settings.
    WindowsConfiguration Pulumi.AzureNative.Batch.Inputs.WindowsConfiguration
    This property must not be specified if the imageReference specifies a Linux OS image.
    ImageReference ImageReference
    NodeAgentSkuId string
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    ContainerConfiguration ContainerConfiguration
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    DataDisks []DataDisk
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    DiskEncryptionConfiguration DiskEncryptionConfiguration
    If specified, encryption is performed on each node in the pool during node provisioning.
    Extensions []VMExtension
    If specified, the extensions mentioned in this configuration will be installed on each node.
    LicenseType string

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    NodePlacementConfiguration NodePlacementConfiguration
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    OsDisk OSDisk
    Contains configuration for ephemeral OSDisk settings.
    WindowsConfiguration WindowsConfiguration
    This property must not be specified if the imageReference specifies a Linux OS image.
    imageReference ImageReference
    nodeAgentSkuId String
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    containerConfiguration ContainerConfiguration
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    dataDisks List<DataDisk>
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    diskEncryptionConfiguration DiskEncryptionConfiguration
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions List<VMExtension>
    If specified, the extensions mentioned in this configuration will be installed on each node.
    licenseType String

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    nodePlacementConfiguration NodePlacementConfiguration
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    osDisk OSDisk
    Contains configuration for ephemeral OSDisk settings.
    windowsConfiguration WindowsConfiguration
    This property must not be specified if the imageReference specifies a Linux OS image.
    imageReference ImageReference
    nodeAgentSkuId string
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    containerConfiguration ContainerConfiguration
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    dataDisks DataDisk[]
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    diskEncryptionConfiguration DiskEncryptionConfiguration
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions VMExtension[]
    If specified, the extensions mentioned in this configuration will be installed on each node.
    licenseType string

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    nodePlacementConfiguration NodePlacementConfiguration
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    osDisk OSDisk
    Contains configuration for ephemeral OSDisk settings.
    windowsConfiguration WindowsConfiguration
    This property must not be specified if the imageReference specifies a Linux OS image.
    image_reference ImageReference
    node_agent_sku_id str
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    container_configuration ContainerConfiguration
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    data_disks Sequence[DataDisk]
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    disk_encryption_configuration DiskEncryptionConfiguration
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions Sequence[VMExtension]
    If specified, the extensions mentioned in this configuration will be installed on each node.
    license_type str

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    node_placement_configuration NodePlacementConfiguration
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    os_disk OSDisk
    Contains configuration for ephemeral OSDisk settings.
    windows_configuration WindowsConfiguration
    This property must not be specified if the imageReference specifies a Linux OS image.
    imageReference Property Map
    nodeAgentSkuId String
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    containerConfiguration Property Map
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    dataDisks List<Property Map>
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    diskEncryptionConfiguration Property Map
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions List<Property Map>
    If specified, the extensions mentioned in this configuration will be installed on each node.
    licenseType String

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    nodePlacementConfiguration Property Map
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    osDisk Property Map
    Contains configuration for ephemeral OSDisk settings.
    windowsConfiguration Property Map
    This property must not be specified if the imageReference specifies a Linux OS image.

    VirtualMachineConfigurationResponse, VirtualMachineConfigurationResponseArgs

    ImageReference Pulumi.AzureNative.Batch.Inputs.ImageReferenceResponse
    NodeAgentSkuId string
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    ContainerConfiguration Pulumi.AzureNative.Batch.Inputs.ContainerConfigurationResponse
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    DataDisks List<Pulumi.AzureNative.Batch.Inputs.DataDiskResponse>
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    DiskEncryptionConfiguration Pulumi.AzureNative.Batch.Inputs.DiskEncryptionConfigurationResponse
    If specified, encryption is performed on each node in the pool during node provisioning.
    Extensions List<Pulumi.AzureNative.Batch.Inputs.VMExtensionResponse>
    If specified, the extensions mentioned in this configuration will be installed on each node.
    LicenseType string

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    NodePlacementConfiguration Pulumi.AzureNative.Batch.Inputs.NodePlacementConfigurationResponse
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    OsDisk Pulumi.AzureNative.Batch.Inputs.OSDiskResponse
    Contains configuration for ephemeral OSDisk settings.
    WindowsConfiguration Pulumi.AzureNative.Batch.Inputs.WindowsConfigurationResponse
    This property must not be specified if the imageReference specifies a Linux OS image.
    ImageReference ImageReferenceResponse
    NodeAgentSkuId string
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    ContainerConfiguration ContainerConfigurationResponse
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    DataDisks []DataDiskResponse
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    DiskEncryptionConfiguration DiskEncryptionConfigurationResponse
    If specified, encryption is performed on each node in the pool during node provisioning.
    Extensions []VMExtensionResponse
    If specified, the extensions mentioned in this configuration will be installed on each node.
    LicenseType string

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    NodePlacementConfiguration NodePlacementConfigurationResponse
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    OsDisk OSDiskResponse
    Contains configuration for ephemeral OSDisk settings.
    WindowsConfiguration WindowsConfigurationResponse
    This property must not be specified if the imageReference specifies a Linux OS image.
    imageReference ImageReferenceResponse
    nodeAgentSkuId String
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    containerConfiguration ContainerConfigurationResponse
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    dataDisks List<DataDiskResponse>
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    diskEncryptionConfiguration DiskEncryptionConfigurationResponse
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions List<VMExtensionResponse>
    If specified, the extensions mentioned in this configuration will be installed on each node.
    licenseType String

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    nodePlacementConfiguration NodePlacementConfigurationResponse
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    osDisk OSDiskResponse
    Contains configuration for ephemeral OSDisk settings.
    windowsConfiguration WindowsConfigurationResponse
    This property must not be specified if the imageReference specifies a Linux OS image.
    imageReference ImageReferenceResponse
    nodeAgentSkuId string
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    containerConfiguration ContainerConfigurationResponse
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    dataDisks DataDiskResponse[]
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    diskEncryptionConfiguration DiskEncryptionConfigurationResponse
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions VMExtensionResponse[]
    If specified, the extensions mentioned in this configuration will be installed on each node.
    licenseType string

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    nodePlacementConfiguration NodePlacementConfigurationResponse
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    osDisk OSDiskResponse
    Contains configuration for ephemeral OSDisk settings.
    windowsConfiguration WindowsConfigurationResponse
    This property must not be specified if the imageReference specifies a Linux OS image.
    image_reference ImageReferenceResponse
    node_agent_sku_id str
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    container_configuration ContainerConfigurationResponse
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    data_disks Sequence[DataDiskResponse]
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    disk_encryption_configuration DiskEncryptionConfigurationResponse
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions Sequence[VMExtensionResponse]
    If specified, the extensions mentioned in this configuration will be installed on each node.
    license_type str

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    node_placement_configuration NodePlacementConfigurationResponse
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    os_disk OSDiskResponse
    Contains configuration for ephemeral OSDisk settings.
    windows_configuration WindowsConfigurationResponse
    This property must not be specified if the imageReference specifies a Linux OS image.
    imageReference Property Map
    nodeAgentSkuId String
    The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation.
    containerConfiguration Property Map
    If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it.
    dataDisks List<Property Map>
    This property must be specified if the compute nodes in the pool need to have empty data disks attached to them.
    diskEncryptionConfiguration Property Map
    If specified, encryption is performed on each node in the pool during node provisioning.
    extensions List<Property Map>
    If specified, the extensions mentioned in this configuration will be installed on each node.
    licenseType String

    This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:

    Windows_Server - The on-premises license is for Windows Server. Windows_Client - The on-premises license is for Windows Client.

    nodePlacementConfiguration Property Map
    This configuration will specify rules on how nodes in the pool will be physically allocated.
    osDisk Property Map
    Contains configuration for ephemeral OSDisk settings.
    windowsConfiguration Property Map
    This property must not be specified if the imageReference specifies a Linux OS image.

    WindowsConfiguration, WindowsConfigurationArgs

    EnableAutomaticUpdates bool
    If omitted, the default value is true.
    EnableAutomaticUpdates bool
    If omitted, the default value is true.
    enableAutomaticUpdates Boolean
    If omitted, the default value is true.
    enableAutomaticUpdates boolean
    If omitted, the default value is true.
    enable_automatic_updates bool
    If omitted, the default value is true.
    enableAutomaticUpdates Boolean
    If omitted, the default value is true.

    WindowsConfigurationResponse, WindowsConfigurationResponseArgs

    EnableAutomaticUpdates bool
    If omitted, the default value is true.
    EnableAutomaticUpdates bool
    If omitted, the default value is true.
    enableAutomaticUpdates Boolean
    If omitted, the default value is true.
    enableAutomaticUpdates boolean
    If omitted, the default value is true.
    enable_automatic_updates bool
    If omitted, the default value is true.
    enableAutomaticUpdates Boolean
    If omitted, the default value is true.

    WindowsUserConfiguration, WindowsUserConfigurationArgs

    LoginMode Pulumi.AzureNative.Batch.LoginMode
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    LoginMode LoginMode
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    loginMode LoginMode
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    loginMode LoginMode
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    login_mode LoginMode
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    loginMode "Batch" | "Interactive"
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.

    WindowsUserConfigurationResponse, WindowsUserConfigurationResponseArgs

    LoginMode string
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    LoginMode string
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    loginMode String
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    loginMode string
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    login_mode str
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.
    loginMode String
    Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.

    Import

    An existing resource can be imported using its type token, name, and identifier, e.g.

    $ pulumi import azure-native:batch:Pool testpool /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName} 
    

    Package Details

    Repository
    Azure Native pulumi/pulumi-azure-native
    License
    Apache-2.0
    azure-native logo
    This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
    Azure Native v2.33.0 published on Friday, Mar 22, 2024 by Pulumi