1. Packages
  2. Azure Native
  3. API Docs
  4. labservices
  5. Lab
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.2.0 published on Monday, Apr 14, 2025 by Pulumi

azure-native.labservices.Lab

Explore with Pulumi AI

This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.2.0 published on Monday, Apr 14, 2025 by Pulumi

The lab resource.

Uses Azure REST API version 2023-06-07. In version 2.x of the Azure Native provider, it used API version 2022-08-01.

Other available API versions: 2021-10-01-preview, 2021-11-15-preview, 2022-08-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native labservices [ApiVersion]. See the version guide for details.

Example Usage

putLab

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var lab = new AzureNative.LabServices.Lab("lab", new()
    {
        AutoShutdownProfile = new AzureNative.LabServices.Inputs.AutoShutdownProfileArgs
        {
            DisconnectDelay = "PT5M",
            IdleDelay = "PT5M",
            NoConnectDelay = "PT5M",
            ShutdownOnDisconnect = AzureNative.LabServices.EnableState.Enabled,
            ShutdownOnIdle = AzureNative.LabServices.ShutdownOnIdleMode.UserAbsence,
            ShutdownWhenNotConnected = AzureNative.LabServices.EnableState.Enabled,
        },
        ConnectionProfile = new AzureNative.LabServices.Inputs.ConnectionProfileArgs
        {
            ClientRdpAccess = AzureNative.LabServices.ConnectionType.Public,
            ClientSshAccess = AzureNative.LabServices.ConnectionType.Public,
            WebRdpAccess = AzureNative.LabServices.ConnectionType.None,
            WebSshAccess = AzureNative.LabServices.ConnectionType.None,
        },
        Description = "This is a test lab.",
        LabName = "testlab",
        LabPlanId = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan",
        Location = "westus",
        NetworkProfile = new AzureNative.LabServices.Inputs.LabNetworkProfileArgs
        {
            SubnetId = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default",
        },
        ResourceGroupName = "testrg123",
        SecurityProfile = new AzureNative.LabServices.Inputs.SecurityProfileArgs
        {
            OpenAccess = AzureNative.LabServices.EnableState.Disabled,
        },
        Title = "Test Lab",
        VirtualMachineProfile = new AzureNative.LabServices.Inputs.VirtualMachineProfileArgs
        {
            AdditionalCapabilities = new AzureNative.LabServices.Inputs.VirtualMachineAdditionalCapabilitiesArgs
            {
                InstallGpuDrivers = AzureNative.LabServices.EnableState.Disabled,
            },
            AdminUser = new AzureNative.LabServices.Inputs.CredentialsArgs
            {
                Username = "test-user",
            },
            CreateOption = AzureNative.LabServices.CreateOption.TemplateVM,
            ImageReference = new AzureNative.LabServices.Inputs.ImageReferenceArgs
            {
                Offer = "WindowsServer",
                Publisher = "Microsoft",
                Sku = "2019-Datacenter",
                Version = "2019.0.20190410",
            },
            Sku = new AzureNative.LabServices.Inputs.SkuArgs
            {
                Name = "Medium",
            },
            UsageQuota = "PT10H",
            UseSharedPassword = AzureNative.LabServices.EnableState.Disabled,
        },
    });

});
Copy
package main

import (
	labservices "github.com/pulumi/pulumi-azure-native-sdk/labservices/v3"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := labservices.NewLab(ctx, "lab", &labservices.LabArgs{
			AutoShutdownProfile: &labservices.AutoShutdownProfileArgs{
				DisconnectDelay:          pulumi.String("PT5M"),
				IdleDelay:                pulumi.String("PT5M"),
				NoConnectDelay:           pulumi.String("PT5M"),
				ShutdownOnDisconnect:     labservices.EnableStateEnabled,
				ShutdownOnIdle:           labservices.ShutdownOnIdleModeUserAbsence,
				ShutdownWhenNotConnected: labservices.EnableStateEnabled,
			},
			ConnectionProfile: &labservices.ConnectionProfileArgs{
				ClientRdpAccess: labservices.ConnectionTypePublic,
				ClientSshAccess: labservices.ConnectionTypePublic,
				WebRdpAccess:    labservices.ConnectionTypeNone,
				WebSshAccess:    labservices.ConnectionTypeNone,
			},
			Description: pulumi.String("This is a test lab."),
			LabName:     pulumi.String("testlab"),
			LabPlanId:   pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan"),
			Location:    pulumi.String("westus"),
			NetworkProfile: &labservices.LabNetworkProfileArgs{
				SubnetId: pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"),
			},
			ResourceGroupName: pulumi.String("testrg123"),
			SecurityProfile: &labservices.SecurityProfileArgs{
				OpenAccess: labservices.EnableStateDisabled,
			},
			Title: pulumi.String("Test Lab"),
			VirtualMachineProfile: &labservices.VirtualMachineProfileArgs{
				AdditionalCapabilities: &labservices.VirtualMachineAdditionalCapabilitiesArgs{
					InstallGpuDrivers: labservices.EnableStateDisabled,
				},
				AdminUser: &labservices.CredentialsArgs{
					Username: pulumi.String("test-user"),
				},
				CreateOption: labservices.CreateOptionTemplateVM,
				ImageReference: &labservices.ImageReferenceArgs{
					Offer:     pulumi.String("WindowsServer"),
					Publisher: pulumi.String("Microsoft"),
					Sku:       pulumi.String("2019-Datacenter"),
					Version:   pulumi.String("2019.0.20190410"),
				},
				Sku: &labservices.SkuArgs{
					Name: pulumi.String("Medium"),
				},
				UsageQuota:        pulumi.String("PT10H"),
				UseSharedPassword: labservices.EnableStateDisabled,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.labservices.Lab;
import com.pulumi.azurenative.labservices.LabArgs;
import com.pulumi.azurenative.labservices.inputs.AutoShutdownProfileArgs;
import com.pulumi.azurenative.labservices.inputs.ConnectionProfileArgs;
import com.pulumi.azurenative.labservices.inputs.LabNetworkProfileArgs;
import com.pulumi.azurenative.labservices.inputs.SecurityProfileArgs;
import com.pulumi.azurenative.labservices.inputs.VirtualMachineProfileArgs;
import com.pulumi.azurenative.labservices.inputs.VirtualMachineAdditionalCapabilitiesArgs;
import com.pulumi.azurenative.labservices.inputs.CredentialsArgs;
import com.pulumi.azurenative.labservices.inputs.ImageReferenceArgs;
import com.pulumi.azurenative.labservices.inputs.SkuArgs;
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 lab = new Lab("lab", LabArgs.builder()
            .autoShutdownProfile(AutoShutdownProfileArgs.builder()
                .disconnectDelay("PT5M")
                .idleDelay("PT5M")
                .noConnectDelay("PT5M")
                .shutdownOnDisconnect("Enabled")
                .shutdownOnIdle("UserAbsence")
                .shutdownWhenNotConnected("Enabled")
                .build())
            .connectionProfile(ConnectionProfileArgs.builder()
                .clientRdpAccess("Public")
                .clientSshAccess("Public")
                .webRdpAccess("None")
                .webSshAccess("None")
                .build())
            .description("This is a test lab.")
            .labName("testlab")
            .labPlanId("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan")
            .location("westus")
            .networkProfile(LabNetworkProfileArgs.builder()
                .subnetId("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default")
                .build())
            .resourceGroupName("testrg123")
            .securityProfile(SecurityProfileArgs.builder()
                .openAccess("Disabled")
                .build())
            .title("Test Lab")
            .virtualMachineProfile(VirtualMachineProfileArgs.builder()
                .additionalCapabilities(VirtualMachineAdditionalCapabilitiesArgs.builder()
                    .installGpuDrivers("Disabled")
                    .build())
                .adminUser(CredentialsArgs.builder()
                    .username("test-user")
                    .build())
                .createOption("TemplateVM")
                .imageReference(ImageReferenceArgs.builder()
                    .offer("WindowsServer")
                    .publisher("Microsoft")
                    .sku("2019-Datacenter")
                    .version("2019.0.20190410")
                    .build())
                .sku(SkuArgs.builder()
                    .name("Medium")
                    .build())
                .usageQuota("PT10H")
                .useSharedPassword("Disabled")
                .build())
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const lab = new azure_native.labservices.Lab("lab", {
    autoShutdownProfile: {
        disconnectDelay: "PT5M",
        idleDelay: "PT5M",
        noConnectDelay: "PT5M",
        shutdownOnDisconnect: azure_native.labservices.EnableState.Enabled,
        shutdownOnIdle: azure_native.labservices.ShutdownOnIdleMode.UserAbsence,
        shutdownWhenNotConnected: azure_native.labservices.EnableState.Enabled,
    },
    connectionProfile: {
        clientRdpAccess: azure_native.labservices.ConnectionType.Public,
        clientSshAccess: azure_native.labservices.ConnectionType.Public,
        webRdpAccess: azure_native.labservices.ConnectionType.None,
        webSshAccess: azure_native.labservices.ConnectionType.None,
    },
    description: "This is a test lab.",
    labName: "testlab",
    labPlanId: "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan",
    location: "westus",
    networkProfile: {
        subnetId: "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default",
    },
    resourceGroupName: "testrg123",
    securityProfile: {
        openAccess: azure_native.labservices.EnableState.Disabled,
    },
    title: "Test Lab",
    virtualMachineProfile: {
        additionalCapabilities: {
            installGpuDrivers: azure_native.labservices.EnableState.Disabled,
        },
        adminUser: {
            username: "test-user",
        },
        createOption: azure_native.labservices.CreateOption.TemplateVM,
        imageReference: {
            offer: "WindowsServer",
            publisher: "Microsoft",
            sku: "2019-Datacenter",
            version: "2019.0.20190410",
        },
        sku: {
            name: "Medium",
        },
        usageQuota: "PT10H",
        useSharedPassword: azure_native.labservices.EnableState.Disabled,
    },
});
Copy
import pulumi
import pulumi_azure_native as azure_native

lab = azure_native.labservices.Lab("lab",
    auto_shutdown_profile={
        "disconnect_delay": "PT5M",
        "idle_delay": "PT5M",
        "no_connect_delay": "PT5M",
        "shutdown_on_disconnect": azure_native.labservices.EnableState.ENABLED,
        "shutdown_on_idle": azure_native.labservices.ShutdownOnIdleMode.USER_ABSENCE,
        "shutdown_when_not_connected": azure_native.labservices.EnableState.ENABLED,
    },
    connection_profile={
        "client_rdp_access": azure_native.labservices.ConnectionType.PUBLIC,
        "client_ssh_access": azure_native.labservices.ConnectionType.PUBLIC,
        "web_rdp_access": azure_native.labservices.ConnectionType.NONE,
        "web_ssh_access": azure_native.labservices.ConnectionType.NONE,
    },
    description="This is a test lab.",
    lab_name="testlab",
    lab_plan_id="/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan",
    location="westus",
    network_profile={
        "subnet_id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default",
    },
    resource_group_name="testrg123",
    security_profile={
        "open_access": azure_native.labservices.EnableState.DISABLED,
    },
    title="Test Lab",
    virtual_machine_profile={
        "additional_capabilities": {
            "install_gpu_drivers": azure_native.labservices.EnableState.DISABLED,
        },
        "admin_user": {
            "username": "test-user",
        },
        "create_option": azure_native.labservices.CreateOption.TEMPLATE_VM,
        "image_reference": {
            "offer": "WindowsServer",
            "publisher": "Microsoft",
            "sku": "2019-Datacenter",
            "version": "2019.0.20190410",
        },
        "sku": {
            "name": "Medium",
        },
        "usage_quota": "PT10H",
        "use_shared_password": azure_native.labservices.EnableState.DISABLED,
    })
Copy
resources:
  lab:
    type: azure-native:labservices:Lab
    properties:
      autoShutdownProfile:
        disconnectDelay: PT5M
        idleDelay: PT5M
        noConnectDelay: PT5M
        shutdownOnDisconnect: Enabled
        shutdownOnIdle: UserAbsence
        shutdownWhenNotConnected: Enabled
      connectionProfile:
        clientRdpAccess: Public
        clientSshAccess: Public
        webRdpAccess: None
        webSshAccess: None
      description: This is a test lab.
      labName: testlab
      labPlanId: /subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan
      location: westus
      networkProfile:
        subnetId: /subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default
      resourceGroupName: testrg123
      securityProfile:
        openAccess: Disabled
      title: Test Lab
      virtualMachineProfile:
        additionalCapabilities:
          installGpuDrivers: Disabled
        adminUser:
          username: test-user
        createOption: TemplateVM
        imageReference:
          offer: WindowsServer
          publisher: Microsoft
          sku: 2019-Datacenter
          version: 2019.0.20190410
        sku:
          name: Medium
        usageQuota: PT10H
        useSharedPassword: Disabled
Copy

Create Lab Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Lab(name: string, args: LabArgs, opts?: CustomResourceOptions);
@overload
def Lab(resource_name: str,
        args: LabArgs,
        opts: Optional[ResourceOptions] = None)

@overload
def Lab(resource_name: str,
        opts: Optional[ResourceOptions] = None,
        resource_group_name: Optional[str] = None,
        connection_profile: Optional[ConnectionProfileArgs] = None,
        virtual_machine_profile: Optional[VirtualMachineProfileArgs] = None,
        auto_shutdown_profile: Optional[AutoShutdownProfileArgs] = None,
        security_profile: Optional[SecurityProfileArgs] = None,
        lab_name: Optional[str] = None,
        network_profile: Optional[LabNetworkProfileArgs] = None,
        location: Optional[str] = None,
        roster_profile: Optional[RosterProfileArgs] = None,
        lab_plan_id: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        title: Optional[str] = None,
        description: Optional[str] = None)
func NewLab(ctx *Context, name string, args LabArgs, opts ...ResourceOption) (*Lab, error)
public Lab(string name, LabArgs args, CustomResourceOptions? opts = null)
public Lab(String name, LabArgs args)
public Lab(String name, LabArgs args, CustomResourceOptions options)
type: azure-native:labservices:Lab
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. LabArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. LabArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. LabArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. LabArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. LabArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var examplelabResourceResourceFromLabservices = new AzureNative.LabServices.Lab("examplelabResourceResourceFromLabservices", new()
{
    ResourceGroupName = "string",
    ConnectionProfile = new AzureNative.LabServices.Inputs.ConnectionProfileArgs
    {
        ClientRdpAccess = AzureNative.LabServices.ConnectionType.Public,
        ClientSshAccess = AzureNative.LabServices.ConnectionType.Public,
        WebRdpAccess = AzureNative.LabServices.ConnectionType.Public,
        WebSshAccess = AzureNative.LabServices.ConnectionType.Public,
    },
    VirtualMachineProfile = new AzureNative.LabServices.Inputs.VirtualMachineProfileArgs
    {
        AdminUser = new AzureNative.LabServices.Inputs.CredentialsArgs
        {
            Username = "string",
            Password = "string",
        },
        CreateOption = AzureNative.LabServices.CreateOption.Image,
        ImageReference = new AzureNative.LabServices.Inputs.ImageReferenceArgs
        {
            Id = "string",
            Offer = "string",
            Publisher = "string",
            Sku = "string",
            Version = "string",
        },
        Sku = new AzureNative.LabServices.Inputs.SkuArgs
        {
            Name = "string",
            Capacity = 0,
            Family = "string",
            Size = "string",
            Tier = AzureNative.LabServices.SkuTier.Free,
        },
        UsageQuota = "string",
        AdditionalCapabilities = new AzureNative.LabServices.Inputs.VirtualMachineAdditionalCapabilitiesArgs
        {
            InstallGpuDrivers = AzureNative.LabServices.EnableState.Enabled,
        },
        NonAdminUser = new AzureNative.LabServices.Inputs.CredentialsArgs
        {
            Username = "string",
            Password = "string",
        },
        UseSharedPassword = AzureNative.LabServices.EnableState.Enabled,
    },
    AutoShutdownProfile = new AzureNative.LabServices.Inputs.AutoShutdownProfileArgs
    {
        DisconnectDelay = "string",
        IdleDelay = "string",
        NoConnectDelay = "string",
        ShutdownOnDisconnect = AzureNative.LabServices.EnableState.Enabled,
        ShutdownOnIdle = AzureNative.LabServices.ShutdownOnIdleMode.None,
        ShutdownWhenNotConnected = AzureNative.LabServices.EnableState.Enabled,
    },
    SecurityProfile = new AzureNative.LabServices.Inputs.SecurityProfileArgs
    {
        OpenAccess = AzureNative.LabServices.EnableState.Enabled,
    },
    LabName = "string",
    NetworkProfile = new AzureNative.LabServices.Inputs.LabNetworkProfileArgs
    {
        LoadBalancerId = "string",
        PublicIpId = "string",
        SubnetId = "string",
    },
    Location = "string",
    RosterProfile = new AzureNative.LabServices.Inputs.RosterProfileArgs
    {
        ActiveDirectoryGroupId = "string",
        LmsInstance = "string",
        LtiClientId = "string",
        LtiContextId = "string",
        LtiRosterEndpoint = "string",
    },
    LabPlanId = "string",
    Tags = 
    {
        { "string", "string" },
    },
    Title = "string",
    Description = "string",
});
Copy
example, err := labservices.NewLab(ctx, "examplelabResourceResourceFromLabservices", &labservices.LabArgs{
	ResourceGroupName: pulumi.String("string"),
	ConnectionProfile: &labservices.ConnectionProfileArgs{
		ClientRdpAccess: labservices.ConnectionTypePublic,
		ClientSshAccess: labservices.ConnectionTypePublic,
		WebRdpAccess:    labservices.ConnectionTypePublic,
		WebSshAccess:    labservices.ConnectionTypePublic,
	},
	VirtualMachineProfile: &labservices.VirtualMachineProfileArgs{
		AdminUser: &labservices.CredentialsArgs{
			Username: pulumi.String("string"),
			Password: pulumi.String("string"),
		},
		CreateOption: labservices.CreateOptionImage,
		ImageReference: &labservices.ImageReferenceArgs{
			Id:        pulumi.String("string"),
			Offer:     pulumi.String("string"),
			Publisher: pulumi.String("string"),
			Sku:       pulumi.String("string"),
			Version:   pulumi.String("string"),
		},
		Sku: &labservices.SkuArgs{
			Name:     pulumi.String("string"),
			Capacity: pulumi.Int(0),
			Family:   pulumi.String("string"),
			Size:     pulumi.String("string"),
			Tier:     labservices.SkuTierFree,
		},
		UsageQuota: pulumi.String("string"),
		AdditionalCapabilities: &labservices.VirtualMachineAdditionalCapabilitiesArgs{
			InstallGpuDrivers: labservices.EnableStateEnabled,
		},
		NonAdminUser: &labservices.CredentialsArgs{
			Username: pulumi.String("string"),
			Password: pulumi.String("string"),
		},
		UseSharedPassword: labservices.EnableStateEnabled,
	},
	AutoShutdownProfile: &labservices.AutoShutdownProfileArgs{
		DisconnectDelay:          pulumi.String("string"),
		IdleDelay:                pulumi.String("string"),
		NoConnectDelay:           pulumi.String("string"),
		ShutdownOnDisconnect:     labservices.EnableStateEnabled,
		ShutdownOnIdle:           labservices.ShutdownOnIdleModeNone,
		ShutdownWhenNotConnected: labservices.EnableStateEnabled,
	},
	SecurityProfile: &labservices.SecurityProfileArgs{
		OpenAccess: labservices.EnableStateEnabled,
	},
	LabName: pulumi.String("string"),
	NetworkProfile: &labservices.LabNetworkProfileArgs{
		LoadBalancerId: pulumi.String("string"),
		PublicIpId:     pulumi.String("string"),
		SubnetId:       pulumi.String("string"),
	},
	Location: pulumi.String("string"),
	RosterProfile: &labservices.RosterProfileArgs{
		ActiveDirectoryGroupId: pulumi.String("string"),
		LmsInstance:            pulumi.String("string"),
		LtiClientId:            pulumi.String("string"),
		LtiContextId:           pulumi.String("string"),
		LtiRosterEndpoint:      pulumi.String("string"),
	},
	LabPlanId: pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Title:       pulumi.String("string"),
	Description: pulumi.String("string"),
})
Copy
var examplelabResourceResourceFromLabservices = new Lab("examplelabResourceResourceFromLabservices", LabArgs.builder()
    .resourceGroupName("string")
    .connectionProfile(ConnectionProfileArgs.builder()
        .clientRdpAccess("Public")
        .clientSshAccess("Public")
        .webRdpAccess("Public")
        .webSshAccess("Public")
        .build())
    .virtualMachineProfile(VirtualMachineProfileArgs.builder()
        .adminUser(CredentialsArgs.builder()
            .username("string")
            .password("string")
            .build())
        .createOption("Image")
        .imageReference(ImageReferenceArgs.builder()
            .id("string")
            .offer("string")
            .publisher("string")
            .sku("string")
            .version("string")
            .build())
        .sku(SkuArgs.builder()
            .name("string")
            .capacity(0)
            .family("string")
            .size("string")
            .tier("Free")
            .build())
        .usageQuota("string")
        .additionalCapabilities(VirtualMachineAdditionalCapabilitiesArgs.builder()
            .installGpuDrivers("Enabled")
            .build())
        .nonAdminUser(CredentialsArgs.builder()
            .username("string")
            .password("string")
            .build())
        .useSharedPassword("Enabled")
        .build())
    .autoShutdownProfile(AutoShutdownProfileArgs.builder()
        .disconnectDelay("string")
        .idleDelay("string")
        .noConnectDelay("string")
        .shutdownOnDisconnect("Enabled")
        .shutdownOnIdle("None")
        .shutdownWhenNotConnected("Enabled")
        .build())
    .securityProfile(SecurityProfileArgs.builder()
        .openAccess("Enabled")
        .build())
    .labName("string")
    .networkProfile(LabNetworkProfileArgs.builder()
        .loadBalancerId("string")
        .publicIpId("string")
        .subnetId("string")
        .build())
    .location("string")
    .rosterProfile(RosterProfileArgs.builder()
        .activeDirectoryGroupId("string")
        .lmsInstance("string")
        .ltiClientId("string")
        .ltiContextId("string")
        .ltiRosterEndpoint("string")
        .build())
    .labPlanId("string")
    .tags(Map.of("string", "string"))
    .title("string")
    .description("string")
    .build());
Copy
examplelab_resource_resource_from_labservices = azure_native.labservices.Lab("examplelabResourceResourceFromLabservices",
    resource_group_name="string",
    connection_profile={
        "client_rdp_access": azure_native.labservices.ConnectionType.PUBLIC,
        "client_ssh_access": azure_native.labservices.ConnectionType.PUBLIC,
        "web_rdp_access": azure_native.labservices.ConnectionType.PUBLIC,
        "web_ssh_access": azure_native.labservices.ConnectionType.PUBLIC,
    },
    virtual_machine_profile={
        "admin_user": {
            "username": "string",
            "password": "string",
        },
        "create_option": azure_native.labservices.CreateOption.IMAGE,
        "image_reference": {
            "id": "string",
            "offer": "string",
            "publisher": "string",
            "sku": "string",
            "version": "string",
        },
        "sku": {
            "name": "string",
            "capacity": 0,
            "family": "string",
            "size": "string",
            "tier": azure_native.labservices.SkuTier.FREE,
        },
        "usage_quota": "string",
        "additional_capabilities": {
            "install_gpu_drivers": azure_native.labservices.EnableState.ENABLED,
        },
        "non_admin_user": {
            "username": "string",
            "password": "string",
        },
        "use_shared_password": azure_native.labservices.EnableState.ENABLED,
    },
    auto_shutdown_profile={
        "disconnect_delay": "string",
        "idle_delay": "string",
        "no_connect_delay": "string",
        "shutdown_on_disconnect": azure_native.labservices.EnableState.ENABLED,
        "shutdown_on_idle": azure_native.labservices.ShutdownOnIdleMode.NONE,
        "shutdown_when_not_connected": azure_native.labservices.EnableState.ENABLED,
    },
    security_profile={
        "open_access": azure_native.labservices.EnableState.ENABLED,
    },
    lab_name="string",
    network_profile={
        "load_balancer_id": "string",
        "public_ip_id": "string",
        "subnet_id": "string",
    },
    location="string",
    roster_profile={
        "active_directory_group_id": "string",
        "lms_instance": "string",
        "lti_client_id": "string",
        "lti_context_id": "string",
        "lti_roster_endpoint": "string",
    },
    lab_plan_id="string",
    tags={
        "string": "string",
    },
    title="string",
    description="string")
Copy
const examplelabResourceResourceFromLabservices = new azure_native.labservices.Lab("examplelabResourceResourceFromLabservices", {
    resourceGroupName: "string",
    connectionProfile: {
        clientRdpAccess: azure_native.labservices.ConnectionType.Public,
        clientSshAccess: azure_native.labservices.ConnectionType.Public,
        webRdpAccess: azure_native.labservices.ConnectionType.Public,
        webSshAccess: azure_native.labservices.ConnectionType.Public,
    },
    virtualMachineProfile: {
        adminUser: {
            username: "string",
            password: "string",
        },
        createOption: azure_native.labservices.CreateOption.Image,
        imageReference: {
            id: "string",
            offer: "string",
            publisher: "string",
            sku: "string",
            version: "string",
        },
        sku: {
            name: "string",
            capacity: 0,
            family: "string",
            size: "string",
            tier: azure_native.labservices.SkuTier.Free,
        },
        usageQuota: "string",
        additionalCapabilities: {
            installGpuDrivers: azure_native.labservices.EnableState.Enabled,
        },
        nonAdminUser: {
            username: "string",
            password: "string",
        },
        useSharedPassword: azure_native.labservices.EnableState.Enabled,
    },
    autoShutdownProfile: {
        disconnectDelay: "string",
        idleDelay: "string",
        noConnectDelay: "string",
        shutdownOnDisconnect: azure_native.labservices.EnableState.Enabled,
        shutdownOnIdle: azure_native.labservices.ShutdownOnIdleMode.None,
        shutdownWhenNotConnected: azure_native.labservices.EnableState.Enabled,
    },
    securityProfile: {
        openAccess: azure_native.labservices.EnableState.Enabled,
    },
    labName: "string",
    networkProfile: {
        loadBalancerId: "string",
        publicIpId: "string",
        subnetId: "string",
    },
    location: "string",
    rosterProfile: {
        activeDirectoryGroupId: "string",
        lmsInstance: "string",
        ltiClientId: "string",
        ltiContextId: "string",
        ltiRosterEndpoint: "string",
    },
    labPlanId: "string",
    tags: {
        string: "string",
    },
    title: "string",
    description: "string",
});
Copy
type: azure-native:labservices:Lab
properties:
    autoShutdownProfile:
        disconnectDelay: string
        idleDelay: string
        noConnectDelay: string
        shutdownOnDisconnect: Enabled
        shutdownOnIdle: None
        shutdownWhenNotConnected: Enabled
    connectionProfile:
        clientRdpAccess: Public
        clientSshAccess: Public
        webRdpAccess: Public
        webSshAccess: Public
    description: string
    labName: string
    labPlanId: string
    location: string
    networkProfile:
        loadBalancerId: string
        publicIpId: string
        subnetId: string
    resourceGroupName: string
    rosterProfile:
        activeDirectoryGroupId: string
        lmsInstance: string
        ltiClientId: string
        ltiContextId: string
        ltiRosterEndpoint: string
    securityProfile:
        openAccess: Enabled
    tags:
        string: string
    title: string
    virtualMachineProfile:
        additionalCapabilities:
            installGpuDrivers: Enabled
        adminUser:
            password: string
            username: string
        createOption: Image
        imageReference:
            id: string
            offer: string
            publisher: string
            sku: string
            version: string
        nonAdminUser:
            password: string
            username: string
        sku:
            capacity: 0
            family: string
            name: string
            size: string
            tier: Free
        usageQuota: string
        useSharedPassword: Enabled
Copy

Lab Resource Properties

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

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Lab resource accepts the following input properties:

AutoShutdownProfile This property is required. Pulumi.AzureNative.LabServices.Inputs.AutoShutdownProfile
The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
ConnectionProfile This property is required. Pulumi.AzureNative.LabServices.Inputs.ConnectionProfile
The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
SecurityProfile This property is required. Pulumi.AzureNative.LabServices.Inputs.SecurityProfile
The lab security profile.
VirtualMachineProfile This property is required. Pulumi.AzureNative.LabServices.Inputs.VirtualMachineProfile
The profile used for creating lab virtual machines.
Description string
The description of the lab.
LabName Changes to this property will trigger replacement. string
The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
LabPlanId string
The ID of the lab plan. Used during resource creation to provide defaults and acts as a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides organization..
Location Changes to this property will trigger replacement. string
The geo-location where the resource lives
NetworkProfile Changes to this property will trigger replacement. Pulumi.AzureNative.LabServices.Inputs.LabNetworkProfile
The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
RosterProfile Pulumi.AzureNative.LabServices.Inputs.RosterProfile
The lab user list management profile.
Tags Dictionary<string, string>
Resource tags.
Title string
The title of the lab.
AutoShutdownProfile This property is required. AutoShutdownProfileArgs
The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
ConnectionProfile This property is required. ConnectionProfileArgs
The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
SecurityProfile This property is required. SecurityProfileArgs
The lab security profile.
VirtualMachineProfile This property is required. VirtualMachineProfileArgs
The profile used for creating lab virtual machines.
Description string
The description of the lab.
LabName Changes to this property will trigger replacement. string
The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
LabPlanId string
The ID of the lab plan. Used during resource creation to provide defaults and acts as a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides organization..
Location Changes to this property will trigger replacement. string
The geo-location where the resource lives
NetworkProfile Changes to this property will trigger replacement. LabNetworkProfileArgs
The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
RosterProfile RosterProfileArgs
The lab user list management profile.
Tags map[string]string
Resource tags.
Title string
The title of the lab.
autoShutdownProfile This property is required. AutoShutdownProfile
The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
connectionProfile This property is required. ConnectionProfile
The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group. The name is case insensitive.
securityProfile This property is required. SecurityProfile
The lab security profile.
virtualMachineProfile This property is required. VirtualMachineProfile
The profile used for creating lab virtual machines.
description String
The description of the lab.
labName Changes to this property will trigger replacement. String
The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
labPlanId String
The ID of the lab plan. Used during resource creation to provide defaults and acts as a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides organization..
location Changes to this property will trigger replacement. String
The geo-location where the resource lives
networkProfile Changes to this property will trigger replacement. LabNetworkProfile
The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
rosterProfile RosterProfile
The lab user list management profile.
tags Map<String,String>
Resource tags.
title String
The title of the lab.
autoShutdownProfile This property is required. AutoShutdownProfile
The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
connectionProfile This property is required. ConnectionProfile
The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
securityProfile This property is required. SecurityProfile
The lab security profile.
virtualMachineProfile This property is required. VirtualMachineProfile
The profile used for creating lab virtual machines.
description string
The description of the lab.
labName Changes to this property will trigger replacement. string
The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
labPlanId string
The ID of the lab plan. Used during resource creation to provide defaults and acts as a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides organization..
location Changes to this property will trigger replacement. string
The geo-location where the resource lives
networkProfile Changes to this property will trigger replacement. LabNetworkProfile
The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
rosterProfile RosterProfile
The lab user list management profile.
tags {[key: string]: string}
Resource tags.
title string
The title of the lab.
auto_shutdown_profile This property is required. AutoShutdownProfileArgs
The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
connection_profile This property is required. ConnectionProfileArgs
The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
resource_group_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the resource group. The name is case insensitive.
security_profile This property is required. SecurityProfileArgs
The lab security profile.
virtual_machine_profile This property is required. VirtualMachineProfileArgs
The profile used for creating lab virtual machines.
description str
The description of the lab.
lab_name Changes to this property will trigger replacement. str
The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
lab_plan_id str
The ID of the lab plan. Used during resource creation to provide defaults and acts as a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides organization..
location Changes to this property will trigger replacement. str
The geo-location where the resource lives
network_profile Changes to this property will trigger replacement. LabNetworkProfileArgs
The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
roster_profile RosterProfileArgs
The lab user list management profile.
tags Mapping[str, str]
Resource tags.
title str
The title of the lab.
autoShutdownProfile This property is required. Property Map
The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
connectionProfile This property is required. Property Map
The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group. The name is case insensitive.
securityProfile This property is required. Property Map
The lab security profile.
virtualMachineProfile This property is required. Property Map
The profile used for creating lab virtual machines.
description String
The description of the lab.
labName Changes to this property will trigger replacement. String
The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
labPlanId String
The ID of the lab plan. Used during resource creation to provide defaults and acts as a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides organization..
location Changes to this property will trigger replacement. String
The geo-location where the resource lives
networkProfile Changes to this property will trigger replacement. Property Map
The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
rosterProfile Property Map
The lab user list management profile.
tags Map<String>
Resource tags.
title String
The title of the lab.

Outputs

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

AzureApiVersion string
The Azure API version of the resource.
Id string
The provider-assigned unique ID for this managed resource.
Name string
The name of the resource
ProvisioningState string
Current provisioning state of the lab.
ResourceOperationError Pulumi.AzureNative.LabServices.Outputs.ResourceOperationErrorResponse
Error details of last operation done on lab.
State string
The lab state.
SystemData Pulumi.AzureNative.LabServices.Outputs.SystemDataResponse
Metadata pertaining to creation and last modification of the lab.
Type string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
AzureApiVersion string
The Azure API version of the resource.
Id string
The provider-assigned unique ID for this managed resource.
Name string
The name of the resource
ProvisioningState string
Current provisioning state of the lab.
ResourceOperationError ResourceOperationErrorResponse
Error details of last operation done on lab.
State string
The lab state.
SystemData SystemDataResponse
Metadata pertaining to creation and last modification of the lab.
Type string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
azureApiVersion String
The Azure API version of the resource.
id String
The provider-assigned unique ID for this managed resource.
name String
The name of the resource
provisioningState String
Current provisioning state of the lab.
resourceOperationError ResourceOperationErrorResponse
Error details of last operation done on lab.
state String
The lab state.
systemData SystemDataResponse
Metadata pertaining to creation and last modification of the lab.
type String
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
azureApiVersion string
The Azure API version of the resource.
id string
The provider-assigned unique ID for this managed resource.
name string
The name of the resource
provisioningState string
Current provisioning state of the lab.
resourceOperationError ResourceOperationErrorResponse
Error details of last operation done on lab.
state string
The lab state.
systemData SystemDataResponse
Metadata pertaining to creation and last modification of the lab.
type string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
azure_api_version str
The Azure API version of the resource.
id str
The provider-assigned unique ID for this managed resource.
name str
The name of the resource
provisioning_state str
Current provisioning state of the lab.
resource_operation_error ResourceOperationErrorResponse
Error details of last operation done on lab.
state str
The lab state.
system_data SystemDataResponse
Metadata pertaining to creation and last modification of the lab.
type str
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
azureApiVersion String
The Azure API version of the resource.
id String
The provider-assigned unique ID for this managed resource.
name String
The name of the resource
provisioningState String
Current provisioning state of the lab.
resourceOperationError Property Map
Error details of last operation done on lab.
state String
The lab state.
systemData Property Map
Metadata pertaining to creation and last modification of the lab.
type String
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Supporting Types

AutoShutdownProfile
, AutoShutdownProfileArgs

DisconnectDelay string
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
IdleDelay string
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
NoConnectDelay string
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
ShutdownOnDisconnect Pulumi.AzureNative.LabServices.EnableState
Whether shutdown on disconnect is enabled
ShutdownOnIdle Pulumi.AzureNative.LabServices.ShutdownOnIdleMode
Whether a VM will get shutdown when it has idled for a period of time.
ShutdownWhenNotConnected Pulumi.AzureNative.LabServices.EnableState
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
DisconnectDelay string
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
IdleDelay string
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
NoConnectDelay string
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
ShutdownOnDisconnect EnableState
Whether shutdown on disconnect is enabled
ShutdownOnIdle ShutdownOnIdleMode
Whether a VM will get shutdown when it has idled for a period of time.
ShutdownWhenNotConnected EnableState
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnectDelay String
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idleDelay String
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
noConnectDelay String
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdownOnDisconnect EnableState
Whether shutdown on disconnect is enabled
shutdownOnIdle ShutdownOnIdleMode
Whether a VM will get shutdown when it has idled for a period of time.
shutdownWhenNotConnected EnableState
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnectDelay string
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idleDelay string
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
noConnectDelay string
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdownOnDisconnect EnableState
Whether shutdown on disconnect is enabled
shutdownOnIdle ShutdownOnIdleMode
Whether a VM will get shutdown when it has idled for a period of time.
shutdownWhenNotConnected EnableState
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnect_delay str
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idle_delay str
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
no_connect_delay str
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdown_on_disconnect EnableState
Whether shutdown on disconnect is enabled
shutdown_on_idle ShutdownOnIdleMode
Whether a VM will get shutdown when it has idled for a period of time.
shutdown_when_not_connected EnableState
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnectDelay String
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idleDelay String
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
noConnectDelay String
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdownOnDisconnect "Enabled" | "Disabled"
Whether shutdown on disconnect is enabled
shutdownOnIdle "None" | "UserAbsence" | "LowUsage"
Whether a VM will get shutdown when it has idled for a period of time.
shutdownWhenNotConnected "Enabled" | "Disabled"
Whether a VM will get shutdown when it hasn't been connected to after a period of time.

AutoShutdownProfileResponse
, AutoShutdownProfileResponseArgs

DisconnectDelay string
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
IdleDelay string
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
NoConnectDelay string
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
ShutdownOnDisconnect string
Whether shutdown on disconnect is enabled
ShutdownOnIdle string
Whether a VM will get shutdown when it has idled for a period of time.
ShutdownWhenNotConnected string
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
DisconnectDelay string
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
IdleDelay string
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
NoConnectDelay string
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
ShutdownOnDisconnect string
Whether shutdown on disconnect is enabled
ShutdownOnIdle string
Whether a VM will get shutdown when it has idled for a period of time.
ShutdownWhenNotConnected string
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnectDelay String
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idleDelay String
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
noConnectDelay String
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdownOnDisconnect String
Whether shutdown on disconnect is enabled
shutdownOnIdle String
Whether a VM will get shutdown when it has idled for a period of time.
shutdownWhenNotConnected String
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnectDelay string
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idleDelay string
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
noConnectDelay string
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdownOnDisconnect string
Whether shutdown on disconnect is enabled
shutdownOnIdle string
Whether a VM will get shutdown when it has idled for a period of time.
shutdownWhenNotConnected string
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnect_delay str
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idle_delay str
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
no_connect_delay str
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdown_on_disconnect str
Whether shutdown on disconnect is enabled
shutdown_on_idle str
Whether a VM will get shutdown when it has idled for a period of time.
shutdown_when_not_connected str
Whether a VM will get shutdown when it hasn't been connected to after a period of time.
disconnectDelay String
The amount of time a VM will stay running after a user disconnects if this behavior is enabled.
idleDelay String
The amount of time a VM will idle before it is shutdown if this behavior is enabled.
noConnectDelay String
The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
shutdownOnDisconnect String
Whether shutdown on disconnect is enabled
shutdownOnIdle String
Whether a VM will get shutdown when it has idled for a period of time.
shutdownWhenNotConnected String
Whether a VM will get shutdown when it hasn't been connected to after a period of time.

ConnectionProfile
, ConnectionProfileArgs

ClientRdpAccess Pulumi.AzureNative.LabServices.ConnectionType
The enabled access level for Client Access over RDP.
ClientSshAccess Pulumi.AzureNative.LabServices.ConnectionType
The enabled access level for Client Access over SSH.
WebRdpAccess Pulumi.AzureNative.LabServices.ConnectionType
The enabled access level for Web Access over RDP.
WebSshAccess Pulumi.AzureNative.LabServices.ConnectionType
The enabled access level for Web Access over SSH.
ClientRdpAccess ConnectionType
The enabled access level for Client Access over RDP.
ClientSshAccess ConnectionType
The enabled access level for Client Access over SSH.
WebRdpAccess ConnectionType
The enabled access level for Web Access over RDP.
WebSshAccess ConnectionType
The enabled access level for Web Access over SSH.
clientRdpAccess ConnectionType
The enabled access level for Client Access over RDP.
clientSshAccess ConnectionType
The enabled access level for Client Access over SSH.
webRdpAccess ConnectionType
The enabled access level for Web Access over RDP.
webSshAccess ConnectionType
The enabled access level for Web Access over SSH.
clientRdpAccess ConnectionType
The enabled access level for Client Access over RDP.
clientSshAccess ConnectionType
The enabled access level for Client Access over SSH.
webRdpAccess ConnectionType
The enabled access level for Web Access over RDP.
webSshAccess ConnectionType
The enabled access level for Web Access over SSH.
client_rdp_access ConnectionType
The enabled access level for Client Access over RDP.
client_ssh_access ConnectionType
The enabled access level for Client Access over SSH.
web_rdp_access ConnectionType
The enabled access level for Web Access over RDP.
web_ssh_access ConnectionType
The enabled access level for Web Access over SSH.
clientRdpAccess "Public" | "Private" | "None"
The enabled access level for Client Access over RDP.
clientSshAccess "Public" | "Private" | "None"
The enabled access level for Client Access over SSH.
webRdpAccess "Public" | "Private" | "None"
The enabled access level for Web Access over RDP.
webSshAccess "Public" | "Private" | "None"
The enabled access level for Web Access over SSH.

ConnectionProfileResponse
, ConnectionProfileResponseArgs

ClientRdpAccess string
The enabled access level for Client Access over RDP.
ClientSshAccess string
The enabled access level for Client Access over SSH.
WebRdpAccess string
The enabled access level for Web Access over RDP.
WebSshAccess string
The enabled access level for Web Access over SSH.
ClientRdpAccess string
The enabled access level for Client Access over RDP.
ClientSshAccess string
The enabled access level for Client Access over SSH.
WebRdpAccess string
The enabled access level for Web Access over RDP.
WebSshAccess string
The enabled access level for Web Access over SSH.
clientRdpAccess String
The enabled access level for Client Access over RDP.
clientSshAccess String
The enabled access level for Client Access over SSH.
webRdpAccess String
The enabled access level for Web Access over RDP.
webSshAccess String
The enabled access level for Web Access over SSH.
clientRdpAccess string
The enabled access level for Client Access over RDP.
clientSshAccess string
The enabled access level for Client Access over SSH.
webRdpAccess string
The enabled access level for Web Access over RDP.
webSshAccess string
The enabled access level for Web Access over SSH.
client_rdp_access str
The enabled access level for Client Access over RDP.
client_ssh_access str
The enabled access level for Client Access over SSH.
web_rdp_access str
The enabled access level for Web Access over RDP.
web_ssh_access str
The enabled access level for Web Access over SSH.
clientRdpAccess String
The enabled access level for Client Access over RDP.
clientSshAccess String
The enabled access level for Client Access over SSH.
webRdpAccess String
The enabled access level for Web Access over RDP.
webSshAccess String
The enabled access level for Web Access over SSH.

ConnectionType
, ConnectionTypeArgs

Public
Public
Private
Private
None
None
ConnectionTypePublic
Public
ConnectionTypePrivate
Private
ConnectionTypeNone
None
Public
Public
Private
Private
None
None
Public
Public
Private
Private
None
None
PUBLIC
Public
PRIVATE
Private
NONE
None
"Public"
Public
"Private"
Private
"None"
None

CreateOption
, CreateOptionArgs

Image
ImageAn image is used to create all lab user virtual machines. When this option is set, no template VM will be created.
TemplateVM
TemplateVMA template VM will be used to create all lab user virtual machines.
CreateOptionImage
ImageAn image is used to create all lab user virtual machines. When this option is set, no template VM will be created.
CreateOptionTemplateVM
TemplateVMA template VM will be used to create all lab user virtual machines.
Image
ImageAn image is used to create all lab user virtual machines. When this option is set, no template VM will be created.
TemplateVM
TemplateVMA template VM will be used to create all lab user virtual machines.
Image
ImageAn image is used to create all lab user virtual machines. When this option is set, no template VM will be created.
TemplateVM
TemplateVMA template VM will be used to create all lab user virtual machines.
IMAGE
ImageAn image is used to create all lab user virtual machines. When this option is set, no template VM will be created.
TEMPLATE_VM
TemplateVMA template VM will be used to create all lab user virtual machines.
"Image"
ImageAn image is used to create all lab user virtual machines. When this option is set, no template VM will be created.
"TemplateVM"
TemplateVMA template VM will be used to create all lab user virtual machines.

Credentials
, CredentialsArgs

Username This property is required. string
The username to use when signing in to lab VMs.
Password string
The password for the user. This is required for the TemplateVM createOption.
Username This property is required. string
The username to use when signing in to lab VMs.
Password string
The password for the user. This is required for the TemplateVM createOption.
username This property is required. String
The username to use when signing in to lab VMs.
password String
The password for the user. This is required for the TemplateVM createOption.
username This property is required. string
The username to use when signing in to lab VMs.
password string
The password for the user. This is required for the TemplateVM createOption.
username This property is required. str
The username to use when signing in to lab VMs.
password str
The password for the user. This is required for the TemplateVM createOption.
username This property is required. String
The username to use when signing in to lab VMs.
password String
The password for the user. This is required for the TemplateVM createOption.

CredentialsResponse
, CredentialsResponseArgs

Username This property is required. string
The username to use when signing in to lab VMs.
Username This property is required. string
The username to use when signing in to lab VMs.
username This property is required. String
The username to use when signing in to lab VMs.
username This property is required. string
The username to use when signing in to lab VMs.
username This property is required. str
The username to use when signing in to lab VMs.
username This property is required. String
The username to use when signing in to lab VMs.

EnableState
, EnableStateArgs

Enabled
Enabled
Disabled
Disabled
EnableStateEnabled
Enabled
EnableStateDisabled
Disabled
Enabled
Enabled
Disabled
Disabled
Enabled
Enabled
Disabled
Disabled
ENABLED
Enabled
DISABLED
Disabled
"Enabled"
Enabled
"Disabled"
Disabled

ImageReference
, ImageReferenceArgs

Id string
Image resource ID
Offer string
The image offer if applicable.
Publisher string
The image publisher
Sku string
The image SKU
Version string
The image version specified on creation.
Id string
Image resource ID
Offer string
The image offer if applicable.
Publisher string
The image publisher
Sku string
The image SKU
Version string
The image version specified on creation.
id String
Image resource ID
offer String
The image offer if applicable.
publisher String
The image publisher
sku String
The image SKU
version String
The image version specified on creation.
id string
Image resource ID
offer string
The image offer if applicable.
publisher string
The image publisher
sku string
The image SKU
version string
The image version specified on creation.
id str
Image resource ID
offer str
The image offer if applicable.
publisher str
The image publisher
sku str
The image SKU
version str
The image version specified on creation.
id String
Image resource ID
offer String
The image offer if applicable.
publisher String
The image publisher
sku String
The image SKU
version String
The image version specified on creation.

ImageReferenceResponse
, ImageReferenceResponseArgs

ExactVersion This property is required. string
The actual version of the image after use.
Id string
Image resource ID
Offer string
The image offer if applicable.
Publisher string
The image publisher
Sku string
The image SKU
Version string
The image version specified on creation.
ExactVersion This property is required. string
The actual version of the image after use.
Id string
Image resource ID
Offer string
The image offer if applicable.
Publisher string
The image publisher
Sku string
The image SKU
Version string
The image version specified on creation.
exactVersion This property is required. String
The actual version of the image after use.
id String
Image resource ID
offer String
The image offer if applicable.
publisher String
The image publisher
sku String
The image SKU
version String
The image version specified on creation.
exactVersion This property is required. string
The actual version of the image after use.
id string
Image resource ID
offer string
The image offer if applicable.
publisher string
The image publisher
sku string
The image SKU
version string
The image version specified on creation.
exact_version This property is required. str
The actual version of the image after use.
id str
Image resource ID
offer str
The image offer if applicable.
publisher str
The image publisher
sku str
The image SKU
version str
The image version specified on creation.
exactVersion This property is required. String
The actual version of the image after use.
id String
Image resource ID
offer String
The image offer if applicable.
publisher String
The image publisher
sku String
The image SKU
version String
The image version specified on creation.

LabNetworkProfile
, LabNetworkProfileArgs

LoadBalancerId string
The external load balancer resource id
PublicIpId string
The external public IP resource id
SubnetId string
The external subnet resource id
LoadBalancerId string
The external load balancer resource id
PublicIpId string
The external public IP resource id
SubnetId string
The external subnet resource id
loadBalancerId String
The external load balancer resource id
publicIpId String
The external public IP resource id
subnetId String
The external subnet resource id
loadBalancerId string
The external load balancer resource id
publicIpId string
The external public IP resource id
subnetId string
The external subnet resource id
load_balancer_id str
The external load balancer resource id
public_ip_id str
The external public IP resource id
subnet_id str
The external subnet resource id
loadBalancerId String
The external load balancer resource id
publicIpId String
The external public IP resource id
subnetId String
The external subnet resource id

LabNetworkProfileResponse
, LabNetworkProfileResponseArgs

LoadBalancerId string
The external load balancer resource id
PublicIpId string
The external public IP resource id
SubnetId string
The external subnet resource id
LoadBalancerId string
The external load balancer resource id
PublicIpId string
The external public IP resource id
SubnetId string
The external subnet resource id
loadBalancerId String
The external load balancer resource id
publicIpId String
The external public IP resource id
subnetId String
The external subnet resource id
loadBalancerId string
The external load balancer resource id
publicIpId string
The external public IP resource id
subnetId string
The external subnet resource id
load_balancer_id str
The external load balancer resource id
public_ip_id str
The external public IP resource id
subnet_id str
The external subnet resource id
loadBalancerId String
The external load balancer resource id
publicIpId String
The external public IP resource id
subnetId String
The external subnet resource id

ResourceOperationErrorResponse
, ResourceOperationErrorResponseArgs

Action string
The operation action that failed
Code string
The code that corresponds to the type of operation failure
Message string
The operation failure message
Timestamp string
The datetime of when the error occured
Action string
The operation action that failed
Code string
The code that corresponds to the type of operation failure
Message string
The operation failure message
Timestamp string
The datetime of when the error occured
action String
The operation action that failed
code String
The code that corresponds to the type of operation failure
message String
The operation failure message
timestamp String
The datetime of when the error occured
action string
The operation action that failed
code string
The code that corresponds to the type of operation failure
message string
The operation failure message
timestamp string
The datetime of when the error occured
action str
The operation action that failed
code str
The code that corresponds to the type of operation failure
message str
The operation failure message
timestamp str
The datetime of when the error occured
action String
The operation action that failed
code String
The code that corresponds to the type of operation failure
message String
The operation failure message
timestamp String
The datetime of when the error occured

RosterProfile
, RosterProfileArgs

ActiveDirectoryGroupId string
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
LmsInstance string
The base URI identifying the lms instance.
LtiClientId string
The unique id of the azure lab services tool in the lms.
LtiContextId string
The unique context identifier for the lab in the lms.
LtiRosterEndpoint string
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
ActiveDirectoryGroupId string
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
LmsInstance string
The base URI identifying the lms instance.
LtiClientId string
The unique id of the azure lab services tool in the lms.
LtiContextId string
The unique context identifier for the lab in the lms.
LtiRosterEndpoint string
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
activeDirectoryGroupId String
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lmsInstance String
The base URI identifying the lms instance.
ltiClientId String
The unique id of the azure lab services tool in the lms.
ltiContextId String
The unique context identifier for the lab in the lms.
ltiRosterEndpoint String
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
activeDirectoryGroupId string
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lmsInstance string
The base URI identifying the lms instance.
ltiClientId string
The unique id of the azure lab services tool in the lms.
ltiContextId string
The unique context identifier for the lab in the lms.
ltiRosterEndpoint string
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
active_directory_group_id str
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lms_instance str
The base URI identifying the lms instance.
lti_client_id str
The unique id of the azure lab services tool in the lms.
lti_context_id str
The unique context identifier for the lab in the lms.
lti_roster_endpoint str
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
activeDirectoryGroupId String
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lmsInstance String
The base URI identifying the lms instance.
ltiClientId String
The unique id of the azure lab services tool in the lms.
ltiContextId String
The unique context identifier for the lab in the lms.
ltiRosterEndpoint String
The uri of the names and roles service endpoint on the lms for the class attached to this lab.

RosterProfileResponse
, RosterProfileResponseArgs

ActiveDirectoryGroupId string
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
LmsInstance string
The base URI identifying the lms instance.
LtiClientId string
The unique id of the azure lab services tool in the lms.
LtiContextId string
The unique context identifier for the lab in the lms.
LtiRosterEndpoint string
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
ActiveDirectoryGroupId string
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
LmsInstance string
The base URI identifying the lms instance.
LtiClientId string
The unique id of the azure lab services tool in the lms.
LtiContextId string
The unique context identifier for the lab in the lms.
LtiRosterEndpoint string
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
activeDirectoryGroupId String
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lmsInstance String
The base URI identifying the lms instance.
ltiClientId String
The unique id of the azure lab services tool in the lms.
ltiContextId String
The unique context identifier for the lab in the lms.
ltiRosterEndpoint String
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
activeDirectoryGroupId string
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lmsInstance string
The base URI identifying the lms instance.
ltiClientId string
The unique id of the azure lab services tool in the lms.
ltiContextId string
The unique context identifier for the lab in the lms.
ltiRosterEndpoint string
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
active_directory_group_id str
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lms_instance str
The base URI identifying the lms instance.
lti_client_id str
The unique id of the azure lab services tool in the lms.
lti_context_id str
The unique context identifier for the lab in the lms.
lti_roster_endpoint str
The uri of the names and roles service endpoint on the lms for the class attached to this lab.
activeDirectoryGroupId String
The AAD group ID which this lab roster is populated from. Having this set enables AAD sync mode.
lmsInstance String
The base URI identifying the lms instance.
ltiClientId String
The unique id of the azure lab services tool in the lms.
ltiContextId String
The unique context identifier for the lab in the lms.
ltiRosterEndpoint String
The uri of the names and roles service endpoint on the lms for the class attached to this lab.

SecurityProfile
, SecurityProfileArgs

OpenAccess Pulumi.AzureNative.LabServices.EnableState
Whether any user or only specified users can register to a lab.
OpenAccess EnableState
Whether any user or only specified users can register to a lab.
openAccess EnableState
Whether any user or only specified users can register to a lab.
openAccess EnableState
Whether any user or only specified users can register to a lab.
open_access EnableState
Whether any user or only specified users can register to a lab.
openAccess "Enabled" | "Disabled"
Whether any user or only specified users can register to a lab.

SecurityProfileResponse
, SecurityProfileResponseArgs

RegistrationCode This property is required. string
The registration code for the lab.
OpenAccess string
Whether any user or only specified users can register to a lab.
RegistrationCode This property is required. string
The registration code for the lab.
OpenAccess string
Whether any user or only specified users can register to a lab.
registrationCode This property is required. String
The registration code for the lab.
openAccess String
Whether any user or only specified users can register to a lab.
registrationCode This property is required. string
The registration code for the lab.
openAccess string
Whether any user or only specified users can register to a lab.
registration_code This property is required. str
The registration code for the lab.
open_access str
Whether any user or only specified users can register to a lab.
registrationCode This property is required. String
The registration code for the lab.
openAccess String
Whether any user or only specified users can register to a lab.

ShutdownOnIdleMode
, ShutdownOnIdleModeArgs

None
NoneThe VM won't be shut down when it is idle.
UserAbsence
UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
LowUsage
LowUsageThe VM will be considered as idle when user is absent and the resource (CPU and disk) consumption is low.
ShutdownOnIdleModeNone
NoneThe VM won't be shut down when it is idle.
ShutdownOnIdleModeUserAbsence
UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
ShutdownOnIdleModeLowUsage
LowUsageThe VM will be considered as idle when user is absent and the resource (CPU and disk) consumption is low.
None
NoneThe VM won't be shut down when it is idle.
UserAbsence
UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
LowUsage
LowUsageThe VM will be considered as idle when user is absent and the resource (CPU and disk) consumption is low.
None
NoneThe VM won't be shut down when it is idle.
UserAbsence
UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
LowUsage
LowUsageThe VM will be considered as idle when user is absent and the resource (CPU and disk) consumption is low.
NONE
NoneThe VM won't be shut down when it is idle.
USER_ABSENCE
UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
LOW_USAGE
LowUsageThe VM will be considered as idle when user is absent and the resource (CPU and disk) consumption is low.
"None"
NoneThe VM won't be shut down when it is idle.
"UserAbsence"
UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
"LowUsage"
LowUsageThe VM will be considered as idle when user is absent and the resource (CPU and disk) consumption is low.

Sku
, SkuArgs

Name This property is required. string
The name of the SKU. Ex - P3. It is typically a letter+number code
Capacity int
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
Family string
If the service has different generations of hardware, for the same SKU, then that can be captured here.
Size string
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
Tier Pulumi.AzureNative.LabServices.SkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
Name This property is required. string
The name of the SKU. Ex - P3. It is typically a letter+number code
Capacity int
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
Family string
If the service has different generations of hardware, for the same SKU, then that can be captured here.
Size string
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
Tier SkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. String
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity Integer
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family String
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size String
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier SkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. string
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity number
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family string
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size string
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier SkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. str
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity int
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family str
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size str
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier SkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. String
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity Number
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family String
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size String
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier "Free" | "Basic" | "Standard" | "Premium"
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.

SkuResponse
, SkuResponseArgs

Name This property is required. string
The name of the SKU. Ex - P3. It is typically a letter+number code
Capacity int
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
Family string
If the service has different generations of hardware, for the same SKU, then that can be captured here.
Size string
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
Tier string
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
Name This property is required. string
The name of the SKU. Ex - P3. It is typically a letter+number code
Capacity int
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
Family string
If the service has different generations of hardware, for the same SKU, then that can be captured here.
Size string
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
Tier string
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. String
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity Integer
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family String
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size String
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier String
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. string
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity number
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family string
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size string
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier string
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. str
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity int
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family str
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size str
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier str
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
name This property is required. String
The name of the SKU. Ex - P3. It is typically a letter+number code
capacity Number
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
family String
If the service has different generations of hardware, for the same SKU, then that can be captured here.
size String
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
tier String
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.

SkuTier
, SkuTierArgs

Free
Free
Basic
Basic
Standard
Standard
Premium
Premium
SkuTierFree
Free
SkuTierBasic
Basic
SkuTierStandard
Standard
SkuTierPremium
Premium
Free
Free
Basic
Basic
Standard
Standard
Premium
Premium
Free
Free
Basic
Basic
Standard
Standard
Premium
Premium
FREE
Free
BASIC
Basic
STANDARD
Standard
PREMIUM
Premium
"Free"
Free
"Basic"
Basic
"Standard"
Standard
"Premium"
Premium

SystemDataResponse
, SystemDataResponseArgs

CreatedAt string
The timestamp of resource creation (UTC).
CreatedBy string
The identity that created the resource.
CreatedByType string
The type of identity that created the resource.
LastModifiedAt string
The timestamp of resource last modification (UTC)
LastModifiedBy string
The identity that last modified the resource.
LastModifiedByType string
The type of identity that last modified the resource.
CreatedAt string
The timestamp of resource creation (UTC).
CreatedBy string
The identity that created the resource.
CreatedByType string
The type of identity that created the resource.
LastModifiedAt string
The timestamp of resource last modification (UTC)
LastModifiedBy string
The identity that last modified the resource.
LastModifiedByType string
The type of identity that last modified the resource.
createdAt String
The timestamp of resource creation (UTC).
createdBy String
The identity that created the resource.
createdByType String
The type of identity that created the resource.
lastModifiedAt String
The timestamp of resource last modification (UTC)
lastModifiedBy String
The identity that last modified the resource.
lastModifiedByType String
The type of identity that last modified the resource.
createdAt string
The timestamp of resource creation (UTC).
createdBy string
The identity that created the resource.
createdByType string
The type of identity that created the resource.
lastModifiedAt string
The timestamp of resource last modification (UTC)
lastModifiedBy string
The identity that last modified the resource.
lastModifiedByType string
The type of identity that last modified the resource.
created_at str
The timestamp of resource creation (UTC).
created_by str
The identity that created the resource.
created_by_type str
The type of identity that created the resource.
last_modified_at str
The timestamp of resource last modification (UTC)
last_modified_by str
The identity that last modified the resource.
last_modified_by_type str
The type of identity that last modified the resource.
createdAt String
The timestamp of resource creation (UTC).
createdBy String
The identity that created the resource.
createdByType String
The type of identity that created the resource.
lastModifiedAt String
The timestamp of resource last modification (UTC)
lastModifiedBy String
The identity that last modified the resource.
lastModifiedByType String
The type of identity that last modified the resource.

VirtualMachineAdditionalCapabilities
, VirtualMachineAdditionalCapabilitiesArgs

InstallGpuDrivers Pulumi.AzureNative.LabServices.EnableState
Flag to pre-install dedicated GPU drivers.
InstallGpuDrivers EnableState
Flag to pre-install dedicated GPU drivers.
installGpuDrivers EnableState
Flag to pre-install dedicated GPU drivers.
installGpuDrivers EnableState
Flag to pre-install dedicated GPU drivers.
install_gpu_drivers EnableState
Flag to pre-install dedicated GPU drivers.
installGpuDrivers "Enabled" | "Disabled"
Flag to pre-install dedicated GPU drivers.

VirtualMachineAdditionalCapabilitiesResponse
, VirtualMachineAdditionalCapabilitiesResponseArgs

InstallGpuDrivers string
Flag to pre-install dedicated GPU drivers.
InstallGpuDrivers string
Flag to pre-install dedicated GPU drivers.
installGpuDrivers String
Flag to pre-install dedicated GPU drivers.
installGpuDrivers string
Flag to pre-install dedicated GPU drivers.
install_gpu_drivers str
Flag to pre-install dedicated GPU drivers.
installGpuDrivers String
Flag to pre-install dedicated GPU drivers.

VirtualMachineProfile
, VirtualMachineProfileArgs

AdminUser This property is required. Pulumi.AzureNative.LabServices.Inputs.Credentials
Credentials for the admin user on the VM.
CreateOption This property is required. Pulumi.AzureNative.LabServices.CreateOption
Indicates what lab virtual machines are created from.
ImageReference This property is required. Pulumi.AzureNative.LabServices.Inputs.ImageReference
The image configuration for lab virtual machines.
Sku This property is required. Pulumi.AzureNative.LabServices.Inputs.Sku
The SKU for the lab. Defines the type of virtual machines used in the lab.
UsageQuota This property is required. string
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
AdditionalCapabilities Pulumi.AzureNative.LabServices.Inputs.VirtualMachineAdditionalCapabilities
Additional VM capabilities.
NonAdminUser Pulumi.AzureNative.LabServices.Inputs.Credentials
Credentials for the non-admin user on the VM, if one exists.
UseSharedPassword Pulumi.AzureNative.LabServices.EnableState
Enabling this option will use the same password for all user VMs.
AdminUser This property is required. Credentials
Credentials for the admin user on the VM.
CreateOption This property is required. CreateOption
Indicates what lab virtual machines are created from.
ImageReference This property is required. ImageReference
The image configuration for lab virtual machines.
Sku This property is required. Sku
The SKU for the lab. Defines the type of virtual machines used in the lab.
UsageQuota This property is required. string
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
AdditionalCapabilities VirtualMachineAdditionalCapabilities
Additional VM capabilities.
NonAdminUser Credentials
Credentials for the non-admin user on the VM, if one exists.
UseSharedPassword EnableState
Enabling this option will use the same password for all user VMs.
adminUser This property is required. Credentials
Credentials for the admin user on the VM.
createOption This property is required. CreateOption
Indicates what lab virtual machines are created from.
imageReference This property is required. ImageReference
The image configuration for lab virtual machines.
sku This property is required. Sku
The SKU for the lab. Defines the type of virtual machines used in the lab.
usageQuota This property is required. String
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additionalCapabilities VirtualMachineAdditionalCapabilities
Additional VM capabilities.
nonAdminUser Credentials
Credentials for the non-admin user on the VM, if one exists.
useSharedPassword EnableState
Enabling this option will use the same password for all user VMs.
adminUser This property is required. Credentials
Credentials for the admin user on the VM.
createOption This property is required. CreateOption
Indicates what lab virtual machines are created from.
imageReference This property is required. ImageReference
The image configuration for lab virtual machines.
sku This property is required. Sku
The SKU for the lab. Defines the type of virtual machines used in the lab.
usageQuota This property is required. string
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additionalCapabilities VirtualMachineAdditionalCapabilities
Additional VM capabilities.
nonAdminUser Credentials
Credentials for the non-admin user on the VM, if one exists.
useSharedPassword EnableState
Enabling this option will use the same password for all user VMs.
admin_user This property is required. Credentials
Credentials for the admin user on the VM.
create_option This property is required. CreateOption
Indicates what lab virtual machines are created from.
image_reference This property is required. ImageReference
The image configuration for lab virtual machines.
sku This property is required. Sku
The SKU for the lab. Defines the type of virtual machines used in the lab.
usage_quota This property is required. str
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additional_capabilities VirtualMachineAdditionalCapabilities
Additional VM capabilities.
non_admin_user Credentials
Credentials for the non-admin user on the VM, if one exists.
use_shared_password EnableState
Enabling this option will use the same password for all user VMs.
adminUser This property is required. Property Map
Credentials for the admin user on the VM.
createOption This property is required. "Image" | "TemplateVM"
Indicates what lab virtual machines are created from.
imageReference This property is required. Property Map
The image configuration for lab virtual machines.
sku This property is required. Property Map
The SKU for the lab. Defines the type of virtual machines used in the lab.
usageQuota This property is required. String
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additionalCapabilities Property Map
Additional VM capabilities.
nonAdminUser Property Map
Credentials for the non-admin user on the VM, if one exists.
useSharedPassword "Enabled" | "Disabled"
Enabling this option will use the same password for all user VMs.

VirtualMachineProfileResponse
, VirtualMachineProfileResponseArgs

AdminUser This property is required. Pulumi.AzureNative.LabServices.Inputs.CredentialsResponse
Credentials for the admin user on the VM.
CreateOption This property is required. string
Indicates what lab virtual machines are created from.
ImageReference This property is required. Pulumi.AzureNative.LabServices.Inputs.ImageReferenceResponse
The image configuration for lab virtual machines.
OsType This property is required. string
The OS type of the image
Sku This property is required. Pulumi.AzureNative.LabServices.Inputs.SkuResponse
The SKU for the lab. Defines the type of virtual machines used in the lab.
UsageQuota This property is required. string
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
AdditionalCapabilities Pulumi.AzureNative.LabServices.Inputs.VirtualMachineAdditionalCapabilitiesResponse
Additional VM capabilities.
NonAdminUser Pulumi.AzureNative.LabServices.Inputs.CredentialsResponse
Credentials for the non-admin user on the VM, if one exists.
UseSharedPassword string
Enabling this option will use the same password for all user VMs.
AdminUser This property is required. CredentialsResponse
Credentials for the admin user on the VM.
CreateOption This property is required. string
Indicates what lab virtual machines are created from.
ImageReference This property is required. ImageReferenceResponse
The image configuration for lab virtual machines.
OsType This property is required. string
The OS type of the image
Sku This property is required. SkuResponse
The SKU for the lab. Defines the type of virtual machines used in the lab.
UsageQuota This property is required. string
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
AdditionalCapabilities VirtualMachineAdditionalCapabilitiesResponse
Additional VM capabilities.
NonAdminUser CredentialsResponse
Credentials for the non-admin user on the VM, if one exists.
UseSharedPassword string
Enabling this option will use the same password for all user VMs.
adminUser This property is required. CredentialsResponse
Credentials for the admin user on the VM.
createOption This property is required. String
Indicates what lab virtual machines are created from.
imageReference This property is required. ImageReferenceResponse
The image configuration for lab virtual machines.
osType This property is required. String
The OS type of the image
sku This property is required. SkuResponse
The SKU for the lab. Defines the type of virtual machines used in the lab.
usageQuota This property is required. String
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additionalCapabilities VirtualMachineAdditionalCapabilitiesResponse
Additional VM capabilities.
nonAdminUser CredentialsResponse
Credentials for the non-admin user on the VM, if one exists.
useSharedPassword String
Enabling this option will use the same password for all user VMs.
adminUser This property is required. CredentialsResponse
Credentials for the admin user on the VM.
createOption This property is required. string
Indicates what lab virtual machines are created from.
imageReference This property is required. ImageReferenceResponse
The image configuration for lab virtual machines.
osType This property is required. string
The OS type of the image
sku This property is required. SkuResponse
The SKU for the lab. Defines the type of virtual machines used in the lab.
usageQuota This property is required. string
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additionalCapabilities VirtualMachineAdditionalCapabilitiesResponse
Additional VM capabilities.
nonAdminUser CredentialsResponse
Credentials for the non-admin user on the VM, if one exists.
useSharedPassword string
Enabling this option will use the same password for all user VMs.
admin_user This property is required. CredentialsResponse
Credentials for the admin user on the VM.
create_option This property is required. str
Indicates what lab virtual machines are created from.
image_reference This property is required. ImageReferenceResponse
The image configuration for lab virtual machines.
os_type This property is required. str
The OS type of the image
sku This property is required. SkuResponse
The SKU for the lab. Defines the type of virtual machines used in the lab.
usage_quota This property is required. str
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additional_capabilities VirtualMachineAdditionalCapabilitiesResponse
Additional VM capabilities.
non_admin_user CredentialsResponse
Credentials for the non-admin user on the VM, if one exists.
use_shared_password str
Enabling this option will use the same password for all user VMs.
adminUser This property is required. Property Map
Credentials for the admin user on the VM.
createOption This property is required. String
Indicates what lab virtual machines are created from.
imageReference This property is required. Property Map
The image configuration for lab virtual machines.
osType This property is required. String
The OS type of the image
sku This property is required. Property Map
The SKU for the lab. Defines the type of virtual machines used in the lab.
usageQuota This property is required. String
The initial quota alloted to each lab user. Must be a time span between 0 and 9999 hours.
additionalCapabilities Property Map
Additional VM capabilities.
nonAdminUser Property Map
Credentials for the non-admin user on the VM, if one exists.
useSharedPassword String
Enabling this option will use the same password for all user VMs.

Import

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

$ pulumi import azure-native:labservices:Lab testlabplan /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName} 
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
Azure Native pulumi/pulumi-azure-native
License
Apache-2.0
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.2.0 published on Monday, Apr 14, 2025 by Pulumi