Host Pool Args
Represents a HostPool definition. Uses Azure REST API version 2024-04-03. In version 2.x of the Azure Native provider, it used API version 2022-09-09. Other available API versions: 2022-09-09, 2022-10-14-preview, 2023-09-05, 2023-10-04-preview, 2023-11-01-preview, 2024-01-16-preview, 2024-03-06-preview, 2024-04-08-preview, 2024-08-08-preview, 2024-11-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native desktopvirtualization [ApiVersion]
. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.
Example Usage
HostPool_Create
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var hostPool = new AzureNative.DesktopVirtualization.HostPool("hostPool", new()
{
AgentUpdate = new AzureNative.DesktopVirtualization.Inputs.AgentUpdatePropertiesArgs
{
MaintenanceWindowTimeZone = "Alaskan Standard Time",
MaintenanceWindows = new[]
{
new AzureNative.DesktopVirtualization.Inputs.MaintenanceWindowPropertiesArgs
{
DayOfWeek = AzureNative.DesktopVirtualization.DayOfWeek.Friday,
Hour = 7,
},
new AzureNative.DesktopVirtualization.Inputs.MaintenanceWindowPropertiesArgs
{
DayOfWeek = AzureNative.DesktopVirtualization.DayOfWeek.Saturday,
Hour = 8,
},
},
Type = AzureNative.DesktopVirtualization.SessionHostComponentUpdateType.Scheduled,
UseSessionHostLocalTime = false,
},
Description = "des1",
FriendlyName = "friendly",
HostPoolName = "hostPool1",
HostPoolType = AzureNative.DesktopVirtualization.HostPoolType.Pooled,
LoadBalancerType = AzureNative.DesktopVirtualization.LoadBalancerType.BreadthFirst,
Location = "centralus",
MaxSessionLimit = 999999,
PersonalDesktopAssignmentType = AzureNative.DesktopVirtualization.PersonalDesktopAssignmentType.Automatic,
PreferredAppGroupType = AzureNative.DesktopVirtualization.PreferredAppGroupType.Desktop,
RegistrationInfo = new AzureNative.DesktopVirtualization.Inputs.RegistrationInfoArgs
{
ExpirationTime = "2020-10-01T14:01:54.9571247Z",
RegistrationTokenOperation = AzureNative.DesktopVirtualization.RegistrationTokenOperation.Update,
},
ResourceGroupName = "resourceGroup1",
SsoClientId = "client",
SsoClientSecretKeyVaultPath = "https://keyvault/secret",
SsoSecretType = AzureNative.DesktopVirtualization.SSOSecretType.SharedKey,
SsoadfsAuthority = "https://adfs",
StartVMOnConnect = false,
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
},
VmTemplate = "{json:json}",
});
});
package main
import (
desktopvirtualization "github.com/pulumi/pulumi-azure-native-sdk/desktopvirtualization/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := desktopvirtualization.NewHostPool(ctx, "hostPool", &desktopvirtualization.HostPoolArgs{
AgentUpdate: &desktopvirtualization.AgentUpdatePropertiesArgs{
MaintenanceWindowTimeZone: pulumi.String("Alaskan Standard Time"),
MaintenanceWindows: desktopvirtualization.MaintenanceWindowPropertiesArray{
&desktopvirtualization.MaintenanceWindowPropertiesArgs{
DayOfWeek: desktopvirtualization.DayOfWeekFriday,
Hour: pulumi.Int(7),
},
&desktopvirtualization.MaintenanceWindowPropertiesArgs{
DayOfWeek: desktopvirtualization.DayOfWeekSaturday,
Hour: pulumi.Int(8),
},
},
Type: pulumi.String(desktopvirtualization.SessionHostComponentUpdateTypeScheduled),
UseSessionHostLocalTime: pulumi.Bool(false),
},
Description: pulumi.String("des1"),
FriendlyName: pulumi.String("friendly"),
HostPoolName: pulumi.String("hostPool1"),
HostPoolType: pulumi.String(desktopvirtualization.HostPoolTypePooled),
LoadBalancerType: pulumi.String(desktopvirtualization.LoadBalancerTypeBreadthFirst),
Location: pulumi.String("centralus"),
MaxSessionLimit: pulumi.Int(999999),
PersonalDesktopAssignmentType: pulumi.String(desktopvirtualization.PersonalDesktopAssignmentTypeAutomatic),
PreferredAppGroupType: pulumi.String(desktopvirtualization.PreferredAppGroupTypeDesktop),
RegistrationInfo: &desktopvirtualization.RegistrationInfoArgs{
ExpirationTime: pulumi.String("2020-10-01T14:01:54.9571247Z"),
RegistrationTokenOperation: pulumi.String(desktopvirtualization.RegistrationTokenOperationUpdate),
},
ResourceGroupName: pulumi.String("resourceGroup1"),
SsoClientId: pulumi.String("client"),
SsoClientSecretKeyVaultPath: pulumi.String("https://keyvault/secret"),
SsoSecretType: pulumi.String(desktopvirtualization.SSOSecretTypeSharedKey),
SsoadfsAuthority: pulumi.String("https://adfs"),
StartVMOnConnect: pulumi.Bool(false),
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
},
VmTemplate: pulumi.String("{json:json}"),
})
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.desktopvirtualization.HostPool;
import com.pulumi.azurenative.desktopvirtualization.HostPoolArgs;
import com.pulumi.azurenative.desktopvirtualization.inputs.AgentUpdatePropertiesArgs;
import com.pulumi.azurenative.desktopvirtualization.inputs.RegistrationInfoArgs;
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 hostPool = new HostPool("hostPool", HostPoolArgs.builder()
.agentUpdate(AgentUpdatePropertiesArgs.builder()
.maintenanceWindowTimeZone("Alaskan Standard Time")
.maintenanceWindows(
MaintenanceWindowPropertiesArgs.builder()
.dayOfWeek("Friday")
.hour(7)
.build(),
MaintenanceWindowPropertiesArgs.builder()
.dayOfWeek("Saturday")
.hour(8)
.build())
.type("Scheduled")
.useSessionHostLocalTime(false)
.build())
.description("des1")
.friendlyName("friendly")
.hostPoolName("hostPool1")
.hostPoolType("Pooled")
.loadBalancerType("BreadthFirst")
.location("centralus")
.maxSessionLimit(999999)
.personalDesktopAssignmentType("Automatic")
.preferredAppGroupType("Desktop")
.registrationInfo(RegistrationInfoArgs.builder()
.expirationTime("2020-10-01T14:01:54.9571247Z")
.registrationTokenOperation("Update")
.build())
.resourceGroupName("resourceGroup1")
.ssoClientId("client")
.ssoClientSecretKeyVaultPath("https://keyvault/secret")
.ssoSecretType("SharedKey")
.ssoadfsAuthority("https://adfs")
.startVMOnConnect(false)
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2")
))
.vmTemplate("{json:json}")
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:desktopvirtualization:HostPool hostPool1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}
Constructors
Properties
The session host configuration for updating agent, monitoring agent, and stack component.
Custom rdp property of HostPool.
Description of HostPool.
Friendly name of HostPool.
The name of the host pool within the specified resource group
HostPool type for desktop.
The type of the load balancer.
The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
The max session limit of HostPool.
PersonalDesktopAssignment type for HostPool.
The type of preferred application group type, default to Desktop Application Group
Enabled allows this resource to be accessed from both public and private networks, Disabled allows this resource to only be accessed via private endpoints
The registration info of HostPool.
The name of the resource group. The name is case insensitive.
URL to customer ADFS server for signing WVD SSO certificates.
ClientId for the registered Relying Party used to issue WVD SSO certificates.
Path to Azure KeyVault storing the secret used for communication to ADFS.
The type of single sign on Secret Type.
The flag to turn on/off StartVMOnConnect feature.
Is validation environment.
VM template for sessionhosts configuration within hostpool.