Class LabPlan


  • public class LabPlan
    extends com.pulumi.resources.CustomResource
    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. Azure REST API version: 2022-08-01. Prior API version in Azure Native 1.x: 2021-10-01-preview. Other available API versions: 2023-06-07. ## Example Usage ### putLabPlan ```java 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", "PT5M"), Map.entry("idleDelay", "PT5M"), Map.entry("noConnectDelay", "PT5M"), 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", "[email protected]"), Map.entry("instructions", "Contact support for help."), Map.entry("phone", "+1-202-555-0123"), Map.entry("url", "help.contoso.com") )) .build()); } } ``` ## Import An existing resource can be imported using its type token, name, and identifier, e.g. ```sh $ pulumi import azure-native:labservices:LabPlan testlabplan /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName} ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Constructor Summary

      Constructors 
      Constructor Description
      LabPlan​(java.lang.String name)  
      LabPlan​(java.lang.String name, LabPlanArgs args)  
      LabPlan​(java.lang.String name, LabPlanArgs args, com.pulumi.resources.CustomResourceOptions options)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> allowedRegions()  
      com.pulumi.core.Output<java.util.Optional<AutoShutdownProfileResponse>> defaultAutoShutdownProfile()  
      com.pulumi.core.Output<java.util.Optional<ConnectionProfileResponse>> defaultConnectionProfile()  
      com.pulumi.core.Output<java.util.Optional<LabPlanNetworkProfileResponse>> defaultNetworkProfile()  
      static LabPlan get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, com.pulumi.resources.CustomResourceOptions options)
      Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
      com.pulumi.core.Output<java.util.Optional<IdentityResponse>> identity()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> linkedLmsInstance()  
      com.pulumi.core.Output<java.lang.String> location()  
      com.pulumi.core.Output<java.lang.String> name()  
      com.pulumi.core.Output<java.lang.String> provisioningState()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> sharedGalleryId()  
      com.pulumi.core.Output<java.util.Optional<SupportInfoResponse>> supportInfo()  
      com.pulumi.core.Output<SystemDataResponse> systemData()  
      com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()  
      com.pulumi.core.Output<java.lang.String> type()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • LabPlan

        public LabPlan​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • LabPlan

        public LabPlan​(java.lang.String name,
                       LabPlanArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • LabPlan

        public LabPlan​(java.lang.String name,
                       LabPlanArgs args,
                       @Nullable
                       com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • allowedRegions

        public com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> allowedRegions()
        Returns:
        The allowed regions for the lab creator to use when creating labs using this lab plan.
      • defaultAutoShutdownProfile

        public com.pulumi.core.Output<java.util.Optional<AutoShutdownProfileResponse>> defaultAutoShutdownProfile()
        Returns:
        The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
      • defaultConnectionProfile

        public com.pulumi.core.Output<java.util.Optional<ConnectionProfileResponse>> defaultConnectionProfile()
        Returns:
        The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
      • defaultNetworkProfile

        public com.pulumi.core.Output<java.util.Optional<LabPlanNetworkProfileResponse>> defaultNetworkProfile()
        Returns:
        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.
      • identity

        public com.pulumi.core.Output<java.util.Optional<IdentityResponse>> identity()
        Returns:
        Managed Identity Information
      • linkedLmsInstance

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> linkedLmsInstance()
        Returns:
        Base Url of the lms instance this lab plan can link lab rosters against.
      • location

        public com.pulumi.core.Output<java.lang.String> location()
        Returns:
        The geo-location where the resource lives
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        The name of the resource
      • provisioningState

        public com.pulumi.core.Output<java.lang.String> provisioningState()
        Returns:
        Current provisioning state of the lab plan.
      • sharedGalleryId

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sharedGalleryId()
        Returns:
        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

        public com.pulumi.core.Output<java.util.Optional<SupportInfoResponse>> supportInfo()
        Returns:
        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.
      • systemData

        public com.pulumi.core.Output<SystemDataResponse> systemData()
        Returns:
        Metadata pertaining to creation and last modification of the lab plan.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Resource tags.
      • type

        public com.pulumi.core.Output<java.lang.String> type()
        Returns:
        The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
      • get

        public static LabPlan get​(java.lang.String name,
                                  com.pulumi.core.Output<java.lang.String> id,
                                  @Nullable
                                  com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        options - Optional settings to control the behavior of the CustomResource.