@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 6.83 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* 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](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
*/
export declare class Lab extends pulumi.CustomResource {
/**
* Get an existing Lab 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): Lab;
/**
* Returns true if the given object is an instance of Lab. 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 Lab;
/**
* The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
*/
readonly autoShutdownProfile: pulumi.Output<outputs.labservices.AutoShutdownProfileResponse>;
/**
* The Azure API version of the resource.
*/
readonly azureApiVersion: pulumi.Output<string>;
/**
* The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
*/
readonly connectionProfile: pulumi.Output<outputs.labservices.ConnectionProfileResponse>;
/**
* The description of the lab.
*/
readonly description: pulumi.Output<string | undefined>;
/**
* 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..
*/
readonly labPlanId: 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>;
/**
* The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
*/
readonly networkProfile: pulumi.Output<outputs.labservices.LabNetworkProfileResponse | undefined>;
/**
* Current provisioning state of the lab.
*/
readonly provisioningState: pulumi.Output<string>;
/**
* Error details of last operation done on lab.
*/
readonly resourceOperationError: pulumi.Output<outputs.labservices.ResourceOperationErrorResponse>;
/**
* The lab user list management profile.
*/
readonly rosterProfile: pulumi.Output<outputs.labservices.RosterProfileResponse | undefined>;
/**
* The lab security profile.
*/
readonly securityProfile: pulumi.Output<outputs.labservices.SecurityProfileResponse>;
/**
* The lab state.
*/
readonly state: pulumi.Output<string>;
/**
* Metadata pertaining to creation and last modification of the lab.
*/
readonly systemData: pulumi.Output<outputs.labservices.SystemDataResponse>;
/**
* Resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The title of the lab.
*/
readonly title: pulumi.Output<string | undefined>;
/**
* The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*/
readonly type: pulumi.Output<string>;
/**
* The profile used for creating lab virtual machines.
*/
readonly virtualMachineProfile: pulumi.Output<outputs.labservices.VirtualMachineProfileResponse>;
/**
* Create a Lab 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: LabArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a Lab resource.
*/
export interface LabArgs {
/**
* The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle.
*/
autoShutdownProfile: pulumi.Input<inputs.labservices.AutoShutdownProfileArgs>;
/**
* The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open.
*/
connectionProfile: pulumi.Input<inputs.labservices.ConnectionProfileArgs>;
/**
* The description of the lab.
*/
description?: pulumi.Input<string>;
/**
* The name of the lab that uniquely identifies it within containing lab plan. Used in resource URIs.
*/
labName?: pulumi.Input<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..
*/
labPlanId?: pulumi.Input<string>;
/**
* The geo-location where the resource lives
*/
location?: pulumi.Input<string>;
/**
* The network profile for the lab, typically applied via a lab plan. This profile cannot be modified once a lab has been created.
*/
networkProfile?: pulumi.Input<inputs.labservices.LabNetworkProfileArgs>;
/**
* The name of the resource group. The name is case insensitive.
*/
resourceGroupName: pulumi.Input<string>;
/**
* The lab user list management profile.
*/
rosterProfile?: pulumi.Input<inputs.labservices.RosterProfileArgs>;
/**
* The lab security profile.
*/
securityProfile: pulumi.Input<inputs.labservices.SecurityProfileArgs>;
/**
* Resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The title of the lab.
*/
title?: pulumi.Input<string>;
/**
* The profile used for creating lab virtual machines.
*/
virtualMachineProfile: pulumi.Input<inputs.labservices.VirtualMachineProfileArgs>;
}