1. Packages
  2. Azure Classic
  3. API Docs
  4. desktopvirtualization
  5. HostPool

We recommend using Azure Native.

Azure Classic v5.58.0 published on Saturday, Dec 2, 2023 by Pulumi

azure.desktopvirtualization.HostPool

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.58.0 published on Saturday, Dec 2, 2023 by Pulumi

    Manages a Virtual Desktop Host Pool.

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
        {
            Location = "West Europe",
        });
    
        var exampleHostPool = new Azure.DesktopVirtualization.HostPool("exampleHostPool", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            FriendlyName = "pooleddepthfirst",
            ValidateEnvironment = true,
            StartVmOnConnect = true,
            CustomRdpProperties = "audiocapturemode:i:1;audiomode:i:0;",
            Description = "Acceptance Test: A pooled host pool - pooleddepthfirst",
            Type = "Pooled",
            MaximumSessionsAllowed = 50,
            LoadBalancerType = "DepthFirst",
            ScheduledAgentUpdates = new Azure.DesktopVirtualization.Inputs.HostPoolScheduledAgentUpdatesArgs
            {
                Enabled = true,
                Schedules = new[]
                {
                    new Azure.DesktopVirtualization.Inputs.HostPoolScheduledAgentUpdatesScheduleArgs
                    {
                        DayOfWeek = "Saturday",
                        HourOfDay = 2,
                    },
                },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/desktopvirtualization"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = desktopvirtualization.NewHostPool(ctx, "exampleHostPool", &desktopvirtualization.HostPoolArgs{
    			Location:               exampleResourceGroup.Location,
    			ResourceGroupName:      exampleResourceGroup.Name,
    			FriendlyName:           pulumi.String("pooleddepthfirst"),
    			ValidateEnvironment:    pulumi.Bool(true),
    			StartVmOnConnect:       pulumi.Bool(true),
    			CustomRdpProperties:    pulumi.String("audiocapturemode:i:1;audiomode:i:0;"),
    			Description:            pulumi.String("Acceptance Test: A pooled host pool - pooleddepthfirst"),
    			Type:                   pulumi.String("Pooled"),
    			MaximumSessionsAllowed: pulumi.Int(50),
    			LoadBalancerType:       pulumi.String("DepthFirst"),
    			ScheduledAgentUpdates: &desktopvirtualization.HostPoolScheduledAgentUpdatesArgs{
    				Enabled: pulumi.Bool(true),
    				Schedules: desktopvirtualization.HostPoolScheduledAgentUpdatesScheduleArray{
    					&desktopvirtualization.HostPoolScheduledAgentUpdatesScheduleArgs{
    						DayOfWeek: pulumi.String("Saturday"),
    						HourOfDay: pulumi.Int(2),
    					},
    				},
    			},
    		})
    		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.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.desktopvirtualization.HostPool;
    import com.pulumi.azure.desktopvirtualization.HostPoolArgs;
    import com.pulumi.azure.desktopvirtualization.inputs.HostPoolScheduledAgentUpdatesArgs;
    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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
                .location("West Europe")
                .build());
    
            var exampleHostPool = new HostPool("exampleHostPool", HostPoolArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .friendlyName("pooleddepthfirst")
                .validateEnvironment(true)
                .startVmOnConnect(true)
                .customRdpProperties("audiocapturemode:i:1;audiomode:i:0;")
                .description("Acceptance Test: A pooled host pool - pooleddepthfirst")
                .type("Pooled")
                .maximumSessionsAllowed(50)
                .loadBalancerType("DepthFirst")
                .scheduledAgentUpdates(HostPoolScheduledAgentUpdatesArgs.builder()
                    .enabled(true)
                    .schedules(HostPoolScheduledAgentUpdatesScheduleArgs.builder()
                        .dayOfWeek("Saturday")
                        .hourOfDay(2)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure as azure
    
    example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
    example_host_pool = azure.desktopvirtualization.HostPool("exampleHostPool",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        friendly_name="pooleddepthfirst",
        validate_environment=True,
        start_vm_on_connect=True,
        custom_rdp_properties="audiocapturemode:i:1;audiomode:i:0;",
        description="Acceptance Test: A pooled host pool - pooleddepthfirst",
        type="Pooled",
        maximum_sessions_allowed=50,
        load_balancer_type="DepthFirst",
        scheduled_agent_updates=azure.desktopvirtualization.HostPoolScheduledAgentUpdatesArgs(
            enabled=True,
            schedules=[azure.desktopvirtualization.HostPoolScheduledAgentUpdatesScheduleArgs(
                day_of_week="Saturday",
                hour_of_day=2,
            )],
        ))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
    const exampleHostPool = new azure.desktopvirtualization.HostPool("exampleHostPool", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        friendlyName: "pooleddepthfirst",
        validateEnvironment: true,
        startVmOnConnect: true,
        customRdpProperties: "audiocapturemode:i:1;audiomode:i:0;",
        description: "Acceptance Test: A pooled host pool - pooleddepthfirst",
        type: "Pooled",
        maximumSessionsAllowed: 50,
        loadBalancerType: "DepthFirst",
        scheduledAgentUpdates: {
            enabled: true,
            schedules: [{
                dayOfWeek: "Saturday",
                hourOfDay: 2,
            }],
        },
    });
    
    resources:
      exampleResourceGroup:
        type: azure:core:ResourceGroup
        properties:
          location: West Europe
      exampleHostPool:
        type: azure:desktopvirtualization:HostPool
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          friendlyName: pooleddepthfirst
          validateEnvironment: true
          startVmOnConnect: true
          customRdpProperties: audiocapturemode:i:1;audiomode:i:0;
          description: 'Acceptance Test: A pooled host pool - pooleddepthfirst'
          type: Pooled
          maximumSessionsAllowed: 50
          loadBalancerType: DepthFirst
          scheduledAgentUpdates:
            enabled: true
            schedules:
              - dayOfWeek: Saturday
                hourOfDay: 2
    

    Create HostPool Resource

    new HostPool(name: string, args: HostPoolArgs, opts?: CustomResourceOptions);
    @overload
    def HostPool(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 custom_rdp_properties: Optional[str] = None,
                 description: Optional[str] = None,
                 friendly_name: Optional[str] = None,
                 load_balancer_type: Optional[str] = None,
                 location: Optional[str] = None,
                 maximum_sessions_allowed: Optional[int] = None,
                 name: Optional[str] = None,
                 personal_desktop_assignment_type: Optional[str] = None,
                 preferred_app_group_type: Optional[str] = None,
                 resource_group_name: Optional[str] = None,
                 scheduled_agent_updates: Optional[HostPoolScheduledAgentUpdatesArgs] = None,
                 start_vm_on_connect: Optional[bool] = None,
                 tags: Optional[Mapping[str, str]] = None,
                 type: Optional[str] = None,
                 validate_environment: Optional[bool] = None)
    @overload
    def HostPool(resource_name: str,
                 args: HostPoolArgs,
                 opts: Optional[ResourceOptions] = None)
    func NewHostPool(ctx *Context, name string, args HostPoolArgs, opts ...ResourceOption) (*HostPool, error)
    public HostPool(string name, HostPoolArgs args, CustomResourceOptions? opts = null)
    public HostPool(String name, HostPoolArgs args)
    public HostPool(String name, HostPoolArgs args, CustomResourceOptions options)
    
    type: azure:desktopvirtualization:HostPool
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args HostPoolArgs
    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 HostPoolArgs
    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 HostPoolArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args HostPoolArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args HostPoolArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    HostPool 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 HostPool resource accepts the following input properties:

    LoadBalancerType string

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    ResourceGroupName string

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    Type string

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    CustomRdpProperties string

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    Description string

    A description for the Virtual Desktop Host Pool.

    FriendlyName string

    A friendly name for the Virtual Desktop Host Pool.

    Location string

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    MaximumSessionsAllowed int

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    Name string

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    PersonalDesktopAssignmentType string

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    PreferredAppGroupType string

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    ScheduledAgentUpdates HostPoolScheduledAgentUpdates

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    StartVmOnConnect bool

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    Tags Dictionary<string, string>

    A mapping of tags to assign to the resource.

    ValidateEnvironment bool

    Allows you to test service changes before they are deployed to production. Defaults to false.

    LoadBalancerType string

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    ResourceGroupName string

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    Type string

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    CustomRdpProperties string

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    Description string

    A description for the Virtual Desktop Host Pool.

    FriendlyName string

    A friendly name for the Virtual Desktop Host Pool.

    Location string

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    MaximumSessionsAllowed int

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    Name string

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    PersonalDesktopAssignmentType string

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    PreferredAppGroupType string

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    ScheduledAgentUpdates HostPoolScheduledAgentUpdatesArgs

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    StartVmOnConnect bool

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    Tags map[string]string

    A mapping of tags to assign to the resource.

    ValidateEnvironment bool

    Allows you to test service changes before they are deployed to production. Defaults to false.

    loadBalancerType String

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    resourceGroupName String

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    type String

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    customRdpProperties String

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description String

    A description for the Virtual Desktop Host Pool.

    friendlyName String

    A friendly name for the Virtual Desktop Host Pool.

    location String

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximumSessionsAllowed Integer

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name String

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personalDesktopAssignmentType String

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferredAppGroupType String

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    scheduledAgentUpdates HostPoolScheduledAgentUpdates

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    startVmOnConnect Boolean

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags Map<String,String>

    A mapping of tags to assign to the resource.

    validateEnvironment Boolean

    Allows you to test service changes before they are deployed to production. Defaults to false.

    loadBalancerType string

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    resourceGroupName string

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    type string

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    customRdpProperties string

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description string

    A description for the Virtual Desktop Host Pool.

    friendlyName string

    A friendly name for the Virtual Desktop Host Pool.

    location string

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximumSessionsAllowed number

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name string

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personalDesktopAssignmentType string

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferredAppGroupType string

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    scheduledAgentUpdates HostPoolScheduledAgentUpdates

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    startVmOnConnect boolean

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags {[key: string]: string}

    A mapping of tags to assign to the resource.

    validateEnvironment boolean

    Allows you to test service changes before they are deployed to production. Defaults to false.

    load_balancer_type str

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    resource_group_name str

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    type str

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    custom_rdp_properties str

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description str

    A description for the Virtual Desktop Host Pool.

    friendly_name str

    A friendly name for the Virtual Desktop Host Pool.

    location str

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximum_sessions_allowed int

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name str

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personal_desktop_assignment_type str

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferred_app_group_type str

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    scheduled_agent_updates HostPoolScheduledAgentUpdatesArgs

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    start_vm_on_connect bool

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags Mapping[str, str]

    A mapping of tags to assign to the resource.

    validate_environment bool

    Allows you to test service changes before they are deployed to production. Defaults to false.

    loadBalancerType String

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    resourceGroupName String

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    type String

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    customRdpProperties String

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description String

    A description for the Virtual Desktop Host Pool.

    friendlyName String

    A friendly name for the Virtual Desktop Host Pool.

    location String

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximumSessionsAllowed Number

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name String

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personalDesktopAssignmentType String

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferredAppGroupType String

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    scheduledAgentUpdates Property Map

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    startVmOnConnect Boolean

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags Map<String>

    A mapping of tags to assign to the resource.

    validateEnvironment Boolean

    Allows you to test service changes before they are deployed to production. Defaults to false.

    Outputs

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

    Id string

    The provider-assigned unique ID for this managed resource.

    Id string

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    id string

    The provider-assigned unique ID for this managed resource.

    id str

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    Look up Existing HostPool Resource

    Get an existing HostPool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: HostPoolState, opts?: CustomResourceOptions): HostPool
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            custom_rdp_properties: Optional[str] = None,
            description: Optional[str] = None,
            friendly_name: Optional[str] = None,
            load_balancer_type: Optional[str] = None,
            location: Optional[str] = None,
            maximum_sessions_allowed: Optional[int] = None,
            name: Optional[str] = None,
            personal_desktop_assignment_type: Optional[str] = None,
            preferred_app_group_type: Optional[str] = None,
            resource_group_name: Optional[str] = None,
            scheduled_agent_updates: Optional[HostPoolScheduledAgentUpdatesArgs] = None,
            start_vm_on_connect: Optional[bool] = None,
            tags: Optional[Mapping[str, str]] = None,
            type: Optional[str] = None,
            validate_environment: Optional[bool] = None) -> HostPool
    func GetHostPool(ctx *Context, name string, id IDInput, state *HostPoolState, opts ...ResourceOption) (*HostPool, error)
    public static HostPool Get(string name, Input<string> id, HostPoolState? state, CustomResourceOptions? opts = null)
    public static HostPool get(String name, Output<String> id, HostPoolState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    CustomRdpProperties string

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    Description string

    A description for the Virtual Desktop Host Pool.

    FriendlyName string

    A friendly name for the Virtual Desktop Host Pool.

    LoadBalancerType string

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    Location string

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    MaximumSessionsAllowed int

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    Name string

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    PersonalDesktopAssignmentType string

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    PreferredAppGroupType string

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    ResourceGroupName string

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    ScheduledAgentUpdates HostPoolScheduledAgentUpdates

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    StartVmOnConnect bool

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    Tags Dictionary<string, string>

    A mapping of tags to assign to the resource.

    Type string

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    ValidateEnvironment bool

    Allows you to test service changes before they are deployed to production. Defaults to false.

    CustomRdpProperties string

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    Description string

    A description for the Virtual Desktop Host Pool.

    FriendlyName string

    A friendly name for the Virtual Desktop Host Pool.

    LoadBalancerType string

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    Location string

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    MaximumSessionsAllowed int

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    Name string

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    PersonalDesktopAssignmentType string

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    PreferredAppGroupType string

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    ResourceGroupName string

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    ScheduledAgentUpdates HostPoolScheduledAgentUpdatesArgs

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    StartVmOnConnect bool

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    Tags map[string]string

    A mapping of tags to assign to the resource.

    Type string

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    ValidateEnvironment bool

    Allows you to test service changes before they are deployed to production. Defaults to false.

    customRdpProperties String

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description String

    A description for the Virtual Desktop Host Pool.

    friendlyName String

    A friendly name for the Virtual Desktop Host Pool.

    loadBalancerType String

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    location String

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximumSessionsAllowed Integer

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name String

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personalDesktopAssignmentType String

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferredAppGroupType String

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    resourceGroupName String

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    scheduledAgentUpdates HostPoolScheduledAgentUpdates

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    startVmOnConnect Boolean

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags Map<String,String>

    A mapping of tags to assign to the resource.

    type String

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    validateEnvironment Boolean

    Allows you to test service changes before they are deployed to production. Defaults to false.

    customRdpProperties string

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description string

    A description for the Virtual Desktop Host Pool.

    friendlyName string

    A friendly name for the Virtual Desktop Host Pool.

    loadBalancerType string

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    location string

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximumSessionsAllowed number

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name string

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personalDesktopAssignmentType string

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferredAppGroupType string

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    resourceGroupName string

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    scheduledAgentUpdates HostPoolScheduledAgentUpdates

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    startVmOnConnect boolean

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags {[key: string]: string}

    A mapping of tags to assign to the resource.

    type string

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    validateEnvironment boolean

    Allows you to test service changes before they are deployed to production. Defaults to false.

    custom_rdp_properties str

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description str

    A description for the Virtual Desktop Host Pool.

    friendly_name str

    A friendly name for the Virtual Desktop Host Pool.

    load_balancer_type str

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    location str

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximum_sessions_allowed int

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name str

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personal_desktop_assignment_type str

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferred_app_group_type str

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    resource_group_name str

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    scheduled_agent_updates HostPoolScheduledAgentUpdatesArgs

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    start_vm_on_connect bool

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags Mapping[str, str]

    A mapping of tags to assign to the resource.

    type str

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    validate_environment bool

    Allows you to test service changes before they are deployed to production. Defaults to false.

    customRdpProperties String

    A valid custom RDP properties string for the Virtual Desktop Host Pool, available properties can be found in this article.

    description String

    A description for the Virtual Desktop Host Pool.

    friendlyName String

    A friendly name for the Virtual Desktop Host Pool.

    loadBalancerType String

    BreadthFirst load balancing distributes new user sessions across all available session hosts in the host pool. Possible values are BreadthFirst, DepthFirst and Persistent. DepthFirst load balancing distributes new user sessions to an available session host with the highest number of connections but has not reached its maximum session limit threshold. Persistent should be used if the host pool type is Personal

    location String

    The location/region where the Virtual Desktop Host Pool is located. Changing this forces a new resource to be created.

    maximumSessionsAllowed Number

    A valid integer value from 0 to 999999 for the maximum number of users that have concurrent sessions on a session host. Should only be set if the type of your Virtual Desktop Host Pool is Pooled.

    name String

    The name of the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    personalDesktopAssignmentType String

    Automatic assignment – The service will select an available host and assign it to an user. Possible values are Automatic and Direct. Direct Assignment – Admin selects a specific host to assign to an user. Changing this forces a new resource to be created.

    NOTE: personal_desktop_assignment_type is required if the type of your Virtual Desktop Host Pool is Personal

    preferredAppGroupType String

    Option to specify the preferred Application Group type for the Virtual Desktop Host Pool. Valid options are None, Desktop or RailApplications. Default is Desktop. Changing this forces a new resource to be created.

    resourceGroupName String

    The name of the resource group in which to create the Virtual Desktop Host Pool. Changing this forces a new resource to be created.

    scheduledAgentUpdates Property Map

    A scheduled_agent_updates block as defined below. This enables control of when Agent Updates will be applied to Session Hosts.

    startVmOnConnect Boolean

    Enables or disables the Start VM on Connection Feature. Defaults to false.

    tags Map<String>

    A mapping of tags to assign to the resource.

    type String

    The type of the Virtual Desktop Host Pool. Valid options are Personal or Pooled. Changing the type forces a new resource to be created.

    validateEnvironment Boolean

    Allows you to test service changes before they are deployed to production. Defaults to false.

    Supporting Types

    HostPoolScheduledAgentUpdates, HostPoolScheduledAgentUpdatesArgs

    Enabled bool

    Enables or disables scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) on session hosts. If this is enabled then up to two schedule blocks must be defined. Default is false.

    NOTE: if enabled is set to true then at least one and a maximum of two schedule blocks must be provided.

    Schedules List<HostPoolScheduledAgentUpdatesSchedule>

    A schedule block as defined below. A maximum of two blocks can be added.

    Timezone string

    Specifies the time zone in which the agent update schedule will apply, the possible values are defined here. If use_session_host_timezone is enabled then it will override this setting. Default is UTC

    UseSessionHostTimezone bool

    Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host. If configured then this setting overrides timezone. Default is false.

    Enabled bool

    Enables or disables scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) on session hosts. If this is enabled then up to two schedule blocks must be defined. Default is false.

    NOTE: if enabled is set to true then at least one and a maximum of two schedule blocks must be provided.

    Schedules []HostPoolScheduledAgentUpdatesSchedule

    A schedule block as defined below. A maximum of two blocks can be added.

    Timezone string

    Specifies the time zone in which the agent update schedule will apply, the possible values are defined here. If use_session_host_timezone is enabled then it will override this setting. Default is UTC

    UseSessionHostTimezone bool

    Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host. If configured then this setting overrides timezone. Default is false.

    enabled Boolean

    Enables or disables scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) on session hosts. If this is enabled then up to two schedule blocks must be defined. Default is false.

    NOTE: if enabled is set to true then at least one and a maximum of two schedule blocks must be provided.

    schedules List<HostPoolScheduledAgentUpdatesSchedule>

    A schedule block as defined below. A maximum of two blocks can be added.

    timezone String

    Specifies the time zone in which the agent update schedule will apply, the possible values are defined here. If use_session_host_timezone is enabled then it will override this setting. Default is UTC

    useSessionHostTimezone Boolean

    Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host. If configured then this setting overrides timezone. Default is false.

    enabled boolean

    Enables or disables scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) on session hosts. If this is enabled then up to two schedule blocks must be defined. Default is false.

    NOTE: if enabled is set to true then at least one and a maximum of two schedule blocks must be provided.

    schedules HostPoolScheduledAgentUpdatesSchedule[]

    A schedule block as defined below. A maximum of two blocks can be added.

    timezone string

    Specifies the time zone in which the agent update schedule will apply, the possible values are defined here. If use_session_host_timezone is enabled then it will override this setting. Default is UTC

    useSessionHostTimezone boolean

    Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host. If configured then this setting overrides timezone. Default is false.

    enabled bool

    Enables or disables scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) on session hosts. If this is enabled then up to two schedule blocks must be defined. Default is false.

    NOTE: if enabled is set to true then at least one and a maximum of two schedule blocks must be provided.

    schedules Sequence[HostPoolScheduledAgentUpdatesSchedule]

    A schedule block as defined below. A maximum of two blocks can be added.

    timezone str

    Specifies the time zone in which the agent update schedule will apply, the possible values are defined here. If use_session_host_timezone is enabled then it will override this setting. Default is UTC

    use_session_host_timezone bool

    Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host. If configured then this setting overrides timezone. Default is false.

    enabled Boolean

    Enables or disables scheduled updates of the AVD agent components (RDAgent, Geneva Monitoring agent, and side-by-side stack) on session hosts. If this is enabled then up to two schedule blocks must be defined. Default is false.

    NOTE: if enabled is set to true then at least one and a maximum of two schedule blocks must be provided.

    schedules List<Property Map>

    A schedule block as defined below. A maximum of two blocks can be added.

    timezone String

    Specifies the time zone in which the agent update schedule will apply, the possible values are defined here. If use_session_host_timezone is enabled then it will override this setting. Default is UTC

    useSessionHostTimezone Boolean

    Specifies whether scheduled agent updates should be applied based on the timezone of the affected session host. If configured then this setting overrides timezone. Default is false.

    HostPoolScheduledAgentUpdatesSchedule, HostPoolScheduledAgentUpdatesScheduleArgs

    DayOfWeek string

    The day of the week on which agent updates should be performed. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday

    HourOfDay int

    The hour of day the update window should start. The update is a 2 hour period following the hour provided. The value should be provided as a number between 0 and 23, with 0 being midnight and 23 being 11pm. A leading zero should not be used.

    DayOfWeek string

    The day of the week on which agent updates should be performed. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday

    HourOfDay int

    The hour of day the update window should start. The update is a 2 hour period following the hour provided. The value should be provided as a number between 0 and 23, with 0 being midnight and 23 being 11pm. A leading zero should not be used.

    dayOfWeek String

    The day of the week on which agent updates should be performed. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday

    hourOfDay Integer

    The hour of day the update window should start. The update is a 2 hour period following the hour provided. The value should be provided as a number between 0 and 23, with 0 being midnight and 23 being 11pm. A leading zero should not be used.

    dayOfWeek string

    The day of the week on which agent updates should be performed. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday

    hourOfDay number

    The hour of day the update window should start. The update is a 2 hour period following the hour provided. The value should be provided as a number between 0 and 23, with 0 being midnight and 23 being 11pm. A leading zero should not be used.

    day_of_week str

    The day of the week on which agent updates should be performed. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday

    hour_of_day int

    The hour of day the update window should start. The update is a 2 hour period following the hour provided. The value should be provided as a number between 0 and 23, with 0 being midnight and 23 being 11pm. A leading zero should not be used.

    dayOfWeek String

    The day of the week on which agent updates should be performed. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday

    hourOfDay Number

    The hour of day the update window should start. The update is a 2 hour period following the hour provided. The value should be provided as a number between 0 and 23, with 0 being midnight and 23 being 11pm. A leading zero should not be used.

    Import

    Virtual Desktop Host Pools can be imported using the resource id, e.g. text

     $ pulumi import azure:desktopvirtualization/hostPool:HostPool example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup1/providers/Microsoft.DesktopVirtualization/hostPools/myhostpool
    

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the azurerm Terraform Provider.

    azure logo

    We recommend using Azure Native.

    Azure Classic v5.58.0 published on Saturday, Dec 2, 2023 by Pulumi