azure-native.labservices.LabPlan
Explore with Pulumi AI
Lab Plans act as a permission container for creating labs via labs.azure.com. Additionally, they can provide a set of default configurations that will apply at the time of creating a lab, but these defaults can still be overwritten. API Version: 2021-10-01-preview.
Example Usage
putLabPlan
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var labPlan = new AzureNative.LabServices.LabPlan("labPlan", new()
    {
        DefaultAutoShutdownProfile = new AzureNative.LabServices.Inputs.AutoShutdownProfileArgs
        {
            DisconnectDelay = "00:05",
            IdleDelay = "01:00",
            NoConnectDelay = "01:00",
            ShutdownOnDisconnect = AzureNative.LabServices.EnableState.Enabled,
            ShutdownOnIdle = AzureNative.LabServices.ShutdownOnIdleMode.UserAbsence,
            ShutdownWhenNotConnected = AzureNative.LabServices.EnableState.Enabled,
        },
        DefaultConnectionProfile = 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,
        },
        DefaultNetworkProfile = new AzureNative.LabServices.Inputs.LabPlanNetworkProfileArgs
        {
            SubnetId = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default",
        },
        LabPlanName = "testlabplan",
        Location = "westus",
        ResourceGroupName = "testrg123",
        SharedGalleryId = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig",
        SupportInfo = new AzureNative.LabServices.Inputs.SupportInfoArgs
        {
            Email = "help@contoso.com",
            Instructions = "Contact support for help.",
            Phone = "+1-202-555-0123",
            Url = "help.contoso.com",
        },
    });
});
package main
import (
	labservices "github.com/pulumi/pulumi-azure-native-sdk/labservices"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := labservices.NewLabPlan(ctx, "labPlan", &labservices.LabPlanArgs{
			DefaultAutoShutdownProfile: &labservices.AutoShutdownProfileArgs{
				DisconnectDelay:          pulumi.String("00:05"),
				IdleDelay:                pulumi.String("01:00"),
				NoConnectDelay:           pulumi.String("01:00"),
				ShutdownOnDisconnect:     labservices.EnableStateEnabled,
				ShutdownOnIdle:           labservices.ShutdownOnIdleModeUserAbsence,
				ShutdownWhenNotConnected: labservices.EnableStateEnabled,
			},
			DefaultConnectionProfile: &labservices.ConnectionProfileArgs{
				ClientRdpAccess: labservices.ConnectionTypePublic,
				ClientSshAccess: labservices.ConnectionTypePublic,
				WebRdpAccess:    labservices.ConnectionTypeNone,
				WebSshAccess:    labservices.ConnectionTypeNone,
			},
			DefaultNetworkProfile: &labservices.LabPlanNetworkProfileArgs{
				SubnetId: pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"),
			},
			LabPlanName:       pulumi.String("testlabplan"),
			Location:          pulumi.String("westus"),
			ResourceGroupName: pulumi.String("testrg123"),
			SharedGalleryId:   pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig"),
			SupportInfo: &labservices.SupportInfoArgs{
				Email:        pulumi.String("help@contoso.com"),
				Instructions: pulumi.String("Contact support for help."),
				Phone:        pulumi.String("+1-202-555-0123"),
				Url:          pulumi.String("help.contoso.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.labservices.LabPlan;
import com.pulumi.azurenative.labservices.LabPlanArgs;
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 labPlan = new LabPlan("labPlan", LabPlanArgs.builder()        
            .defaultAutoShutdownProfile(Map.ofEntries(
                Map.entry("disconnectDelay", "00:05"),
                Map.entry("idleDelay", "01:00"),
                Map.entry("noConnectDelay", "01:00"),
                Map.entry("shutdownOnDisconnect", "Enabled"),
                Map.entry("shutdownOnIdle", "UserAbsence"),
                Map.entry("shutdownWhenNotConnected", "Enabled")
            ))
            .defaultConnectionProfile(Map.ofEntries(
                Map.entry("clientRdpAccess", "Public"),
                Map.entry("clientSshAccess", "Public"),
                Map.entry("webRdpAccess", "None"),
                Map.entry("webSshAccess", "None")
            ))
            .defaultNetworkProfile(Map.of("subnetId", "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"))
            .labPlanName("testlabplan")
            .location("westus")
            .resourceGroupName("testrg123")
            .sharedGalleryId("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig")
            .supportInfo(Map.ofEntries(
                Map.entry("email", "help@contoso.com"),
                Map.entry("instructions", "Contact support for help."),
                Map.entry("phone", "+1-202-555-0123"),
                Map.entry("url", "help.contoso.com")
            ))
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const labPlan = new azure_native.labservices.LabPlan("labPlan", {
    defaultAutoShutdownProfile: {
        disconnectDelay: "00:05",
        idleDelay: "01:00",
        noConnectDelay: "01:00",
        shutdownOnDisconnect: azure_native.labservices.EnableState.Enabled,
        shutdownOnIdle: azure_native.labservices.ShutdownOnIdleMode.UserAbsence,
        shutdownWhenNotConnected: azure_native.labservices.EnableState.Enabled,
    },
    defaultConnectionProfile: {
        clientRdpAccess: azure_native.labservices.ConnectionType.Public,
        clientSshAccess: azure_native.labservices.ConnectionType.Public,
        webRdpAccess: azure_native.labservices.ConnectionType.None,
        webSshAccess: azure_native.labservices.ConnectionType.None,
    },
    defaultNetworkProfile: {
        subnetId: "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default",
    },
    labPlanName: "testlabplan",
    location: "westus",
    resourceGroupName: "testrg123",
    sharedGalleryId: "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig",
    supportInfo: {
        email: "help@contoso.com",
        instructions: "Contact support for help.",
        phone: "+1-202-555-0123",
        url: "help.contoso.com",
    },
});
import pulumi
import pulumi_azure_native as azure_native
lab_plan = azure_native.labservices.LabPlan("labPlan",
    default_auto_shutdown_profile=azure_native.labservices.AutoShutdownProfileArgs(
        disconnect_delay="00:05",
        idle_delay="01:00",
        no_connect_delay="01:00",
        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,
    ),
    default_connection_profile=azure_native.labservices.ConnectionProfileArgs(
        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,
    ),
    default_network_profile=azure_native.labservices.LabPlanNetworkProfileArgs(
        subnet_id="/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default",
    ),
    lab_plan_name="testlabplan",
    location="westus",
    resource_group_name="testrg123",
    shared_gallery_id="/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig",
    support_info=azure_native.labservices.SupportInfoArgs(
        email="help@contoso.com",
        instructions="Contact support for help.",
        phone="+1-202-555-0123",
        url="help.contoso.com",
    ))
resources:
  labPlan:
    type: azure-native:labservices:LabPlan
    properties:
      defaultAutoShutdownProfile:
        disconnectDelay: 00:05
        idleDelay: 01:00
        noConnectDelay: 01:00
        shutdownOnDisconnect: Enabled
        shutdownOnIdle: UserAbsence
        shutdownWhenNotConnected: Enabled
      defaultConnectionProfile:
        clientRdpAccess: Public
        clientSshAccess: Public
        webRdpAccess: None
        webSshAccess: None
      defaultNetworkProfile:
        subnetId: /subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default
      labPlanName: testlabplan
      location: westus
      resourceGroupName: testrg123
      sharedGalleryId: /subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig
      supportInfo:
        email: help@contoso.com
        instructions: Contact support for help.
        phone: +1-202-555-0123
        url: help.contoso.com
Create LabPlan Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new LabPlan(name: string, args: LabPlanArgs, opts?: CustomResourceOptions);@overload
def LabPlan(resource_name: str,
            args: LabPlanArgs,
            opts: Optional[ResourceOptions] = None)
@overload
def LabPlan(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            resource_group_name: Optional[str] = None,
            allowed_regions: Optional[Sequence[str]] = None,
            default_auto_shutdown_profile: Optional[AutoShutdownProfileArgs] = None,
            default_connection_profile: Optional[ConnectionProfileArgs] = None,
            default_network_profile: Optional[LabPlanNetworkProfileArgs] = None,
            lab_plan_name: Optional[str] = None,
            linked_lms_instance: Optional[str] = None,
            location: Optional[str] = None,
            shared_gallery_id: Optional[str] = None,
            support_info: Optional[SupportInfoArgs] = None,
            tags: Optional[Mapping[str, str]] = None)func NewLabPlan(ctx *Context, name string, args LabPlanArgs, opts ...ResourceOption) (*LabPlan, error)public LabPlan(string name, LabPlanArgs args, CustomResourceOptions? opts = null)
public LabPlan(String name, LabPlanArgs args)
public LabPlan(String name, LabPlanArgs args, CustomResourceOptions options)
type: azure-native:labservices:LabPlan
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args LabPlanArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args LabPlanArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args LabPlanArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args LabPlanArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args LabPlanArgs
- 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 labPlanResource = new AzureNative.Labservices.LabPlan("labPlanResource", new()
{
    ResourceGroupName = "string",
    AllowedRegions = new[]
    {
        "string",
    },
    DefaultAutoShutdownProfile = 
    {
        { "disconnectDelay", "string" },
        { "idleDelay", "string" },
        { "noConnectDelay", "string" },
        { "shutdownOnDisconnect", "Enabled" },
        { "shutdownOnIdle", "None" },
        { "shutdownWhenNotConnected", "Enabled" },
    },
    DefaultConnectionProfile = 
    {
        { "clientRdpAccess", "Public" },
        { "clientSshAccess", "Public" },
        { "webRdpAccess", "Public" },
        { "webSshAccess", "Public" },
    },
    DefaultNetworkProfile = 
    {
        { "subnetId", "string" },
    },
    LabPlanName = "string",
    LinkedLmsInstance = "string",
    Location = "string",
    SharedGalleryId = "string",
    SupportInfo = 
    {
        { "email", "string" },
        { "instructions", "string" },
        { "phone", "string" },
        { "url", "string" },
    },
    Tags = 
    {
        { "string", "string" },
    },
});
example, err := labservices.NewLabPlan(ctx, "labPlanResource", &labservices.LabPlanArgs{
	ResourceGroupName: "string",
	AllowedRegions: []string{
		"string",
	},
	DefaultAutoShutdownProfile: map[string]interface{}{
		"disconnectDelay":          "string",
		"idleDelay":                "string",
		"noConnectDelay":           "string",
		"shutdownOnDisconnect":     "Enabled",
		"shutdownOnIdle":           "None",
		"shutdownWhenNotConnected": "Enabled",
	},
	DefaultConnectionProfile: map[string]interface{}{
		"clientRdpAccess": "Public",
		"clientSshAccess": "Public",
		"webRdpAccess":    "Public",
		"webSshAccess":    "Public",
	},
	DefaultNetworkProfile: map[string]interface{}{
		"subnetId": "string",
	},
	LabPlanName:       "string",
	LinkedLmsInstance: "string",
	Location:          "string",
	SharedGalleryId:   "string",
	SupportInfo: map[string]interface{}{
		"email":        "string",
		"instructions": "string",
		"phone":        "string",
		"url":          "string",
	},
	Tags: map[string]interface{}{
		"string": "string",
	},
})
var labPlanResource = new LabPlan("labPlanResource", LabPlanArgs.builder()
    .resourceGroupName("string")
    .allowedRegions("string")
    .defaultAutoShutdownProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .defaultConnectionProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .defaultNetworkProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .labPlanName("string")
    .linkedLmsInstance("string")
    .location("string")
    .sharedGalleryId("string")
    .supportInfo(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .tags(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .build());
lab_plan_resource = azure_native.labservices.LabPlan("labPlanResource",
    resource_group_name=string,
    allowed_regions=[string],
    default_auto_shutdown_profile={
        disconnectDelay: string,
        idleDelay: string,
        noConnectDelay: string,
        shutdownOnDisconnect: Enabled,
        shutdownOnIdle: None,
        shutdownWhenNotConnected: Enabled,
    },
    default_connection_profile={
        clientRdpAccess: Public,
        clientSshAccess: Public,
        webRdpAccess: Public,
        webSshAccess: Public,
    },
    default_network_profile={
        subnetId: string,
    },
    lab_plan_name=string,
    linked_lms_instance=string,
    location=string,
    shared_gallery_id=string,
    support_info={
        email: string,
        instructions: string,
        phone: string,
        url: string,
    },
    tags={
        string: string,
    })
const labPlanResource = new azure_native.labservices.LabPlan("labPlanResource", {
    resourceGroupName: "string",
    allowedRegions: ["string"],
    defaultAutoShutdownProfile: {
        disconnectDelay: "string",
        idleDelay: "string",
        noConnectDelay: "string",
        shutdownOnDisconnect: "Enabled",
        shutdownOnIdle: "None",
        shutdownWhenNotConnected: "Enabled",
    },
    defaultConnectionProfile: {
        clientRdpAccess: "Public",
        clientSshAccess: "Public",
        webRdpAccess: "Public",
        webSshAccess: "Public",
    },
    defaultNetworkProfile: {
        subnetId: "string",
    },
    labPlanName: "string",
    linkedLmsInstance: "string",
    location: "string",
    sharedGalleryId: "string",
    supportInfo: {
        email: "string",
        instructions: "string",
        phone: "string",
        url: "string",
    },
    tags: {
        string: "string",
    },
});
type: azure-native:labservices:LabPlan
properties:
    allowedRegions:
        - string
    defaultAutoShutdownProfile:
        disconnectDelay: string
        idleDelay: string
        noConnectDelay: string
        shutdownOnDisconnect: Enabled
        shutdownOnIdle: None
        shutdownWhenNotConnected: Enabled
    defaultConnectionProfile:
        clientRdpAccess: Public
        clientSshAccess: Public
        webRdpAccess: Public
        webSshAccess: Public
    defaultNetworkProfile:
        subnetId: string
    labPlanName: string
    linkedLmsInstance: string
    location: string
    resourceGroupName: string
    sharedGalleryId: string
    supportInfo:
        email: string
        instructions: string
        phone: string
        url: string
    tags:
        string: string
LabPlan 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 LabPlan resource accepts the following input properties:
- ResourceGroup stringName 
- The name of the resource group. The name is case insensitive.
- AllowedRegions List<string>
- The allowed regions for the lab creator to use when creating labs using this lab plan.
- DefaultAuto Pulumi.Shutdown Profile Azure Native. Lab Services. Inputs. Auto Shutdown Profile 
- The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
- DefaultConnection Pulumi.Profile Azure Native. Lab Services. Inputs. Connection Profile 
- The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
- DefaultNetwork Pulumi.Profile Azure Native. Lab Services. Inputs. Lab Plan Network Profile 
- The lab plan network profile. To enforce lab network policies they must be defined here and cannot be changed when there are existing labs associated with this lab plan.
- LabPlan stringName 
- The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
- LinkedLms stringInstance 
- Base Url of the lms instance this lab plan can link lab rosters against.
- Location string
- The geo-location where the resource lives
- string
- Resource ID of the Shared Image Gallery attached to this lab plan. When saving a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be made available to use when creating new labs.
- SupportInfo Pulumi.Azure Native. Lab Services. Inputs. Support Info 
- Support contact information and instructions for users of the lab plan. This information is displayed to lab owners and virtual machine users for all labs in the lab plan.
- Dictionary<string, string>
- Resource tags.
- ResourceGroup stringName 
- The name of the resource group. The name is case insensitive.
- AllowedRegions []string
- The allowed regions for the lab creator to use when creating labs using this lab plan.
- DefaultAuto AutoShutdown Profile Shutdown Profile Args 
- The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
- DefaultConnection ConnectionProfile Profile Args 
- The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
- DefaultNetwork LabProfile Plan Network Profile Args 
- The lab plan network profile. To enforce lab network policies they must be defined here and cannot be changed when there are existing labs associated with this lab plan.
- LabPlan stringName 
- The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
- LinkedLms stringInstance 
- Base Url of the lms instance this lab plan can link lab rosters against.
- Location string
- The geo-location where the resource lives
- string
- Resource ID of the Shared Image Gallery attached to this lab plan. When saving a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be made available to use when creating new labs.
- SupportInfo SupportInfo Args 
- Support contact information and instructions for users of the lab plan. This information is displayed to lab owners and virtual machine users for all labs in the lab plan.
- map[string]string
- Resource tags.
- resourceGroup StringName 
- The name of the resource group. The name is case insensitive.
- allowedRegions List<String>
- The allowed regions for the lab creator to use when creating labs using this lab plan.
- defaultAuto AutoShutdown Profile Shutdown Profile 
- The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
- defaultConnection ConnectionProfile Profile 
- The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
- defaultNetwork LabProfile Plan Network Profile 
- The lab plan network profile. To enforce lab network policies they must be defined here and cannot be changed when there are existing labs associated with this lab plan.
- labPlan StringName 
- The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
- linkedLms StringInstance 
- Base Url of the lms instance this lab plan can link lab rosters against.
- location String
- The geo-location where the resource lives
- String
- Resource ID of the Shared Image Gallery attached to this lab plan. When saving a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be made available to use when creating new labs.
- supportInfo SupportInfo 
- Support contact information and instructions for users of the lab plan. This information is displayed to lab owners and virtual machine users for all labs in the lab plan.
- Map<String,String>
- Resource tags.
- resourceGroup stringName 
- The name of the resource group. The name is case insensitive.
- allowedRegions string[]
- The allowed regions for the lab creator to use when creating labs using this lab plan.
- defaultAuto AutoShutdown Profile Shutdown Profile 
- The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
- defaultConnection ConnectionProfile Profile 
- The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
- defaultNetwork LabProfile Plan Network Profile 
- The lab plan network profile. To enforce lab network policies they must be defined here and cannot be changed when there are existing labs associated with this lab plan.
- labPlan stringName 
- The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
- linkedLms stringInstance 
- Base Url of the lms instance this lab plan can link lab rosters against.
- location string
- The geo-location where the resource lives
- string
- Resource ID of the Shared Image Gallery attached to this lab plan. When saving a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be made available to use when creating new labs.
- supportInfo SupportInfo 
- Support contact information and instructions for users of the lab plan. This information is displayed to lab owners and virtual machine users for all labs in the lab plan.
- {[key: string]: string}
- Resource tags.
- resource_group_ strname 
- The name of the resource group. The name is case insensitive.
- allowed_regions Sequence[str]
- The allowed regions for the lab creator to use when creating labs using this lab plan.
- default_auto_ Autoshutdown_ profile Shutdown Profile Args 
- The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
- default_connection_ Connectionprofile Profile Args 
- The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
- default_network_ Labprofile Plan Network Profile Args 
- The lab plan network profile. To enforce lab network policies they must be defined here and cannot be changed when there are existing labs associated with this lab plan.
- lab_plan_ strname 
- The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
- linked_lms_ strinstance 
- Base Url of the lms instance this lab plan can link lab rosters against.
- location str
- The geo-location where the resource lives
- str
- Resource ID of the Shared Image Gallery attached to this lab plan. When saving a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be made available to use when creating new labs.
- support_info SupportInfo Args 
- Support contact information and instructions for users of the lab plan. This information is displayed to lab owners and virtual machine users for all labs in the lab plan.
- Mapping[str, str]
- Resource tags.
- resourceGroup StringName 
- The name of the resource group. The name is case insensitive.
- allowedRegions List<String>
- The allowed regions for the lab creator to use when creating labs using this lab plan.
- defaultAuto Property MapShutdown Profile 
- The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
- defaultConnection Property MapProfile 
- The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
- defaultNetwork Property MapProfile 
- The lab plan network profile. To enforce lab network policies they must be defined here and cannot be changed when there are existing labs associated with this lab plan.
- labPlan StringName 
- The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
- linkedLms StringInstance 
- Base Url of the lms instance this lab plan can link lab rosters against.
- location String
- The geo-location where the resource lives
- String
- Resource ID of the Shared Image Gallery attached to this lab plan. When saving a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be made available to use when creating new labs.
- supportInfo Property Map
- Support contact information and instructions for users of the lab plan. This information is displayed to lab owners and virtual machine users for all labs in the lab plan.
- Map<String>
- Resource tags.
Outputs
All input properties are implicitly available as output properties. Additionally, the LabPlan resource produces the following output properties:
- 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 plan.
- SystemData Pulumi.Azure Native. Lab Services. Outputs. System Data Response 
- Metadata pertaining to creation and last modification of the lab plan.
- Type string
- The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
- 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 plan.
- SystemData SystemData Response 
- Metadata pertaining to creation and last modification of the lab plan.
- Type string
- The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
- 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 plan.
- systemData SystemData Response 
- Metadata pertaining to creation and last modification of the lab plan.
- type String
- The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
- 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 plan.
- systemData SystemData Response 
- Metadata pertaining to creation and last modification of the lab plan.
- type string
- The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
- 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 plan.
- system_data SystemData Response 
- Metadata pertaining to creation and last modification of the lab plan.
- type str
- The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
- 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 plan.
- systemData Property Map
- Metadata pertaining to creation and last modification of the lab plan.
- 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.
- NoConnect stringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- ShutdownOn Pulumi.Disconnect Azure Native. Lab Services. Enable State 
- Whether shutdown on disconnect is enabled
- ShutdownOn Pulumi.Idle Azure Native. Lab Services. Shutdown On Idle Mode 
- Whether a VM will get shutdown when it has idled for a period of time.
- ShutdownWhen Pulumi.Not Connected Azure Native. Lab Services. Enable State 
- 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.
- NoConnect stringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- ShutdownOn EnableDisconnect State 
- Whether shutdown on disconnect is enabled
- ShutdownOn ShutdownIdle On Idle Mode 
- Whether a VM will get shutdown when it has idled for a period of time.
- ShutdownWhen EnableNot Connected State 
- 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.
- noConnect StringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- shutdownOn EnableDisconnect State 
- Whether shutdown on disconnect is enabled
- shutdownOn ShutdownIdle On Idle Mode 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdownWhen EnableNot Connected State 
- 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.
- noConnect stringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- shutdownOn EnableDisconnect State 
- Whether shutdown on disconnect is enabled
- shutdownOn ShutdownIdle On Idle Mode 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdownWhen EnableNot Connected State 
- 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_ strdelay 
- 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_ Enabledisconnect State 
- Whether shutdown on disconnect is enabled
- shutdown_on_ Shutdownidle On Idle Mode 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdown_when_ Enablenot_ connected State 
- 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.
- noConnect StringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- shutdownOn "Enabled" | "Disabled"Disconnect 
- Whether shutdown on disconnect is enabled
- shutdownOn "None" | "UserIdle Absence" | "Low Usage" 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdownWhen "Enabled" | "Disabled"Not Connected 
- 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.
- NoConnect stringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- ShutdownOn stringDisconnect 
- Whether shutdown on disconnect is enabled
- ShutdownOn stringIdle 
- Whether a VM will get shutdown when it has idled for a period of time.
- ShutdownWhen stringNot Connected 
- 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.
- NoConnect stringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- ShutdownOn stringDisconnect 
- Whether shutdown on disconnect is enabled
- ShutdownOn stringIdle 
- Whether a VM will get shutdown when it has idled for a period of time.
- ShutdownWhen stringNot Connected 
- 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.
- noConnect StringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- shutdownOn StringDisconnect 
- Whether shutdown on disconnect is enabled
- shutdownOn StringIdle 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdownWhen StringNot Connected 
- 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.
- noConnect stringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- shutdownOn stringDisconnect 
- Whether shutdown on disconnect is enabled
- shutdownOn stringIdle 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdownWhen stringNot Connected 
- 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_ strdelay 
- 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_ strdisconnect 
- Whether shutdown on disconnect is enabled
- shutdown_on_ stridle 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdown_when_ strnot_ connected 
- 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.
- noConnect StringDelay 
- The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled.
- shutdownOn StringDisconnect 
- Whether shutdown on disconnect is enabled
- shutdownOn StringIdle 
- Whether a VM will get shutdown when it has idled for a period of time.
- shutdownWhen StringNot Connected 
- Whether a VM will get shutdown when it hasn't been connected to after a period of time.
ConnectionProfile, ConnectionProfileArgs    
- ClientRdp Pulumi.Access Azure Native. Lab Services. Connection Type 
- The enabled access level for Client Access over RDP.
- ClientSsh Pulumi.Access Azure Native. Lab Services. Connection Type 
- The enabled access level for Client Access over SSH.
- WebRdp Pulumi.Access Azure Native. Lab Services. Connection Type 
- The enabled access level for Web Access over RDP.
- WebSsh Pulumi.Access Azure Native. Lab Services. Connection Type 
- The enabled access level for Web Access over SSH.
- ClientRdp ConnectionAccess Type 
- The enabled access level for Client Access over RDP.
- ClientSsh ConnectionAccess Type 
- The enabled access level for Client Access over SSH.
- WebRdp ConnectionAccess Type 
- The enabled access level for Web Access over RDP.
- WebSsh ConnectionAccess Type 
- The enabled access level for Web Access over SSH.
- clientRdp ConnectionAccess Type 
- The enabled access level for Client Access over RDP.
- clientSsh ConnectionAccess Type 
- The enabled access level for Client Access over SSH.
- webRdp ConnectionAccess Type 
- The enabled access level for Web Access over RDP.
- webSsh ConnectionAccess Type 
- The enabled access level for Web Access over SSH.
- clientRdp ConnectionAccess Type 
- The enabled access level for Client Access over RDP.
- clientSsh ConnectionAccess Type 
- The enabled access level for Client Access over SSH.
- webRdp ConnectionAccess Type 
- The enabled access level for Web Access over RDP.
- webSsh ConnectionAccess Type 
- The enabled access level for Web Access over SSH.
- client_rdp_ Connectionaccess Type 
- The enabled access level for Client Access over RDP.
- client_ssh_ Connectionaccess Type 
- The enabled access level for Client Access over SSH.
- web_rdp_ Connectionaccess Type 
- The enabled access level for Web Access over RDP.
- web_ssh_ Connectionaccess Type 
- The enabled access level for Web Access over SSH.
- clientRdp "Public" | "Private" | "None"Access 
- The enabled access level for Client Access over RDP.
- clientSsh "Public" | "Private" | "None"Access 
- The enabled access level for Client Access over SSH.
- webRdp "Public" | "Private" | "None"Access 
- The enabled access level for Web Access over RDP.
- webSsh "Public" | "Private" | "None"Access 
- The enabled access level for Web Access over SSH.
ConnectionProfileResponse, ConnectionProfileResponseArgs      
- ClientRdp stringAccess 
- The enabled access level for Client Access over RDP.
- ClientSsh stringAccess 
- The enabled access level for Client Access over SSH.
- WebRdp stringAccess 
- The enabled access level for Web Access over RDP.
- WebSsh stringAccess 
- The enabled access level for Web Access over SSH.
- ClientRdp stringAccess 
- The enabled access level for Client Access over RDP.
- ClientSsh stringAccess 
- The enabled access level for Client Access over SSH.
- WebRdp stringAccess 
- The enabled access level for Web Access over RDP.
- WebSsh stringAccess 
- The enabled access level for Web Access over SSH.
- clientRdp StringAccess 
- The enabled access level for Client Access over RDP.
- clientSsh StringAccess 
- The enabled access level for Client Access over SSH.
- webRdp StringAccess 
- The enabled access level for Web Access over RDP.
- webSsh StringAccess 
- The enabled access level for Web Access over SSH.
- clientRdp stringAccess 
- The enabled access level for Client Access over RDP.
- clientSsh stringAccess 
- The enabled access level for Client Access over SSH.
- webRdp stringAccess 
- The enabled access level for Web Access over RDP.
- webSsh stringAccess 
- The enabled access level for Web Access over SSH.
- client_rdp_ straccess 
- The enabled access level for Client Access over RDP.
- client_ssh_ straccess 
- The enabled access level for Client Access over SSH.
- web_rdp_ straccess 
- The enabled access level for Web Access over RDP.
- web_ssh_ straccess 
- The enabled access level for Web Access over SSH.
- clientRdp StringAccess 
- The enabled access level for Client Access over RDP.
- clientSsh StringAccess 
- The enabled access level for Client Access over SSH.
- webRdp StringAccess 
- The enabled access level for Web Access over RDP.
- webSsh StringAccess 
- The enabled access level for Web Access over SSH.
ConnectionType, ConnectionTypeArgs    
- Public
- Public
- Private
- Private
- None
- None
- ConnectionType Public 
- Public
- ConnectionType Private 
- Private
- ConnectionType None 
- 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
EnableState, EnableStateArgs    
- Enabled
- Enabled
- Disabled
- Disabled
- EnableState Enabled 
- Enabled
- EnableState Disabled 
- Disabled
- Enabled
- Enabled
- Disabled
- Disabled
- Enabled
- Enabled
- Disabled
- Disabled
- ENABLED
- Enabled
- DISABLED
- Disabled
- "Enabled"
- Enabled
- "Disabled"
- Disabled
LabPlanNetworkProfile, LabPlanNetworkProfileArgs        
- SubnetId string
- The external subnet resource id
- SubnetId string
- The external subnet resource id
- subnetId String
- The external subnet resource id
- subnetId string
- The external subnet resource id
- subnet_id str
- The external subnet resource id
- subnetId String
- The external subnet resource id
LabPlanNetworkProfileResponse, LabPlanNetworkProfileResponseArgs          
- SubnetId string
- The external subnet resource id
- SubnetId string
- The external subnet resource id
- subnetId String
- The external subnet resource id
- subnetId string
- The external subnet resource id
- subnet_id str
- The external subnet resource id
- subnetId String
- The external subnet resource id
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.
- ShutdownOn Idle Mode None 
- NoneThe VM won't be shut down when it is idle.
- ShutdownOn Idle Mode User Absence 
- UserAbsenceThe VM will be considered as idle when there is no keyboard or mouse input.
- ShutdownOn Idle Mode 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.
- 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.
SupportInfo, SupportInfoArgs    
- Email string
- Support contact email address.
- Instructions string
- Support instructions.
- Phone string
- Support contact phone number.
- Url string
- Support web address.
- Email string
- Support contact email address.
- Instructions string
- Support instructions.
- Phone string
- Support contact phone number.
- Url string
- Support web address.
- email String
- Support contact email address.
- instructions String
- Support instructions.
- phone String
- Support contact phone number.
- url String
- Support web address.
- email string
- Support contact email address.
- instructions string
- Support instructions.
- phone string
- Support contact phone number.
- url string
- Support web address.
- email str
- Support contact email address.
- instructions str
- Support instructions.
- phone str
- Support contact phone number.
- url str
- Support web address.
- email String
- Support contact email address.
- instructions String
- Support instructions.
- phone String
- Support contact phone number.
- url String
- Support web address.
SupportInfoResponse, SupportInfoResponseArgs      
- Email string
- Support contact email address.
- Instructions string
- Support instructions.
- Phone string
- Support contact phone number.
- Url string
- Support web address.
- Email string
- Support contact email address.
- Instructions string
- Support instructions.
- Phone string
- Support contact phone number.
- Url string
- Support web address.
- email String
- Support contact email address.
- instructions String
- Support instructions.
- phone String
- Support contact phone number.
- url String
- Support web address.
- email string
- Support contact email address.
- instructions string
- Support instructions.
- phone string
- Support contact phone number.
- url string
- Support web address.
- email str
- Support contact email address.
- instructions str
- Support instructions.
- phone str
- Support contact phone number.
- url str
- Support web address.
- email String
- Support contact email address.
- instructions String
- Support instructions.
- phone String
- Support contact phone number.
- url String
- Support web address.
SystemDataResponse, SystemDataResponseArgs      
- CreatedAt string
- The timestamp of resource creation (UTC).
- CreatedBy string
- The identity that created the resource.
- CreatedBy stringType 
- The type of identity that created the resource.
- LastModified stringAt 
- The timestamp of resource last modification (UTC)
- LastModified stringBy 
- The identity that last modified the resource.
- LastModified stringBy Type 
- 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.
- CreatedBy stringType 
- The type of identity that created the resource.
- LastModified stringAt 
- The timestamp of resource last modification (UTC)
- LastModified stringBy 
- The identity that last modified the resource.
- LastModified stringBy Type 
- 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.
- createdBy StringType 
- The type of identity that created the resource.
- lastModified StringAt 
- The timestamp of resource last modification (UTC)
- lastModified StringBy 
- The identity that last modified the resource.
- lastModified StringBy Type 
- 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.
- createdBy stringType 
- The type of identity that created the resource.
- lastModified stringAt 
- The timestamp of resource last modification (UTC)
- lastModified stringBy 
- The identity that last modified the resource.
- lastModified stringBy Type 
- 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_ strtype 
- The type of identity that created the resource.
- last_modified_ strat 
- The timestamp of resource last modification (UTC)
- last_modified_ strby 
- The identity that last modified the resource.
- last_modified_ strby_ type 
- 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.
- createdBy StringType 
- The type of identity that created the resource.
- lastModified StringAt 
- The timestamp of resource last modification (UTC)
- lastModified StringBy 
- The identity that last modified the resource.
- lastModified StringBy Type 
- The type of identity that last modified the resource.
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:labservices:LabPlan testlabplan /subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan 
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- azure-native-v1 pulumi/pulumi-azure-native
- License
- Apache-2.0