@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 7.36 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* 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.
*
* 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](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
*/
export declare class LabPlan extends pulumi.CustomResource {
/**
* Get an existing LabPlan resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): LabPlan;
/**
* Returns true if the given object is an instance of LabPlan. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is LabPlan;
/**
* The allowed regions for the lab creator to use when creating labs using this lab plan.
*/
readonly allowedRegions: pulumi.Output<string[] | undefined>;
/**
* The Azure API version of the resource.
*/
readonly azureApiVersion: pulumi.Output<string>;
/**
* The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
*/
readonly defaultAutoShutdownProfile: pulumi.Output<outputs.labservices.AutoShutdownProfileResponse | undefined>;
/**
* The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
*/
readonly defaultConnectionProfile: pulumi.Output<outputs.labservices.ConnectionProfileResponse | undefined>;
/**
* 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.
*/
readonly defaultNetworkProfile: pulumi.Output<outputs.labservices.LabPlanNetworkProfileResponse | undefined>;
/**
* Managed Identity Information
*/
readonly identity: pulumi.Output<outputs.labservices.IdentityResponse | undefined>;
/**
* Base Url of the lms instance this lab plan can link lab rosters against.
*/
readonly linkedLmsInstance: pulumi.Output<string | undefined>;
/**
* The geo-location where the resource lives
*/
readonly location: pulumi.Output<string>;
/**
* The name of the resource
*/
readonly name: pulumi.Output<string>;
/**
* Current provisioning state of the lab plan.
*/
readonly provisioningState: pulumi.Output<string>;
/**
* Error details of last operation done on lab plan.
*/
readonly resourceOperationError: pulumi.Output<outputs.labservices.ResourceOperationErrorResponse>;
/**
* 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.
*/
readonly sharedGalleryId: pulumi.Output<string | undefined>;
/**
* 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.
*/
readonly supportInfo: pulumi.Output<outputs.labservices.SupportInfoResponse | undefined>;
/**
* Metadata pertaining to creation and last modification of the lab plan.
*/
readonly systemData: pulumi.Output<outputs.labservices.SystemDataResponse>;
/**
* Resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*/
readonly type: pulumi.Output<string>;
/**
* Create a LabPlan resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: LabPlanArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a LabPlan resource.
*/
export interface LabPlanArgs {
/**
* The allowed regions for the lab creator to use when creating labs using this lab plan.
*/
allowedRegions?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile.
*/
defaultAutoShutdownProfile?: pulumi.Input<inputs.labservices.AutoShutdownProfileArgs>;
/**
* The default lab connection profile. This can be changed on a lab resource and only provides a default profile.
*/
defaultConnectionProfile?: pulumi.Input<inputs.labservices.ConnectionProfileArgs>;
/**
* 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.
*/
defaultNetworkProfile?: pulumi.Input<inputs.labservices.LabPlanNetworkProfileArgs>;
/**
* Managed Identity Information
*/
identity?: pulumi.Input<inputs.labservices.IdentityArgs>;
/**
* The name of the lab plan that uniquely identifies it within containing resource group. Used in resource URIs and in UI.
*/
labPlanName?: pulumi.Input<string>;
/**
* Base Url of the lms instance this lab plan can link lab rosters against.
*/
linkedLmsInstance?: pulumi.Input<string>;
/**
* The geo-location where the resource lives
*/
location?: pulumi.Input<string>;
/**
* The name of the resource group. The name is case insensitive.
*/
resourceGroupName: pulumi.Input<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.
*/
sharedGalleryId?: pulumi.Input<string>;
/**
* 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.
*/
supportInfo?: pulumi.Input<inputs.labservices.SupportInfoArgs>;
/**
* Resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}