@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [;
exports.Lab = void 0;
const pulumi = require("@pulumi/pulumi");
const inputs = require("../types/input");
const utilities = require("../utilities");
/**
* 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.
*/
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, id, opts) {
return new Lab(name, undefined, { ...opts, id: id });
}
/**
* 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) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === Lab.__pulumiType;
}
/**
* 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if (args?.autoShutdownProfile === undefined && !opts.urn) {
throw new Error("Missing required property 'autoShutdownProfile'");
}
if (args?.connectionProfile === undefined && !opts.urn) {
throw new Error("Missing required property 'connectionProfile'");
}
if (args?.resourceGroupName === undefined && !opts.urn) {
throw new Error("Missing required property 'resourceGroupName'");
}
if (args?.securityProfile === undefined && !opts.urn) {
throw new Error("Missing required property 'securityProfile'");
}
if (args?.virtualMachineProfile === undefined && !opts.urn) {
throw new Error("Missing required property 'virtualMachineProfile'");
}
resourceInputs["autoShutdownProfile"] = args ? (args.autoShutdownProfile ? pulumi.output(args.autoShutdownProfile).apply(inputs.labservices.autoShutdownProfileArgsProvideDefaults) : undefined) : undefined;
resourceInputs["connectionProfile"] = args ? (args.connectionProfile ? pulumi.output(args.connectionProfile).apply(inputs.labservices.connectionProfileArgsProvideDefaults) : undefined) : undefined;
resourceInputs["description"] = args?.description;
resourceInputs["labName"] = args?.labName;
resourceInputs["labPlanId"] = args?.labPlanId;
resourceInputs["location"] = args?.location;
resourceInputs["networkProfile"] = args?.networkProfile;
resourceInputs["resourceGroupName"] = args?.resourceGroupName;
resourceInputs["rosterProfile"] = args?.rosterProfile;
resourceInputs["securityProfile"] = args?.securityProfile;
resourceInputs["tags"] = args?.tags;
resourceInputs["title"] = args?.title;
resourceInputs["virtualMachineProfile"] = args ? (args.virtualMachineProfile ? pulumi.output(args.virtualMachineProfile).apply(inputs.labservices.virtualMachineProfileArgsProvideDefaults) : undefined) : undefined;
resourceInputs["azureApiVersion"] = undefined /*out*/;
resourceInputs["name"] = undefined /*out*/;
resourceInputs["provisioningState"] = undefined /*out*/;
resourceInputs["resourceOperationError"] = undefined /*out*/;
resourceInputs["state"] = undefined /*out*/;
resourceInputs["systemData"] = undefined /*out*/;
resourceInputs["type"] = undefined /*out*/;
}
else {
resourceInputs["autoShutdownProfile"] = undefined /*out*/;
resourceInputs["azureApiVersion"] = undefined /*out*/;
resourceInputs["connectionProfile"] = undefined /*out*/;
resourceInputs["description"] = undefined /*out*/;
resourceInputs["labPlanId"] = undefined /*out*/;
resourceInputs["location"] = undefined /*out*/;
resourceInputs["name"] = undefined /*out*/;
resourceInputs["networkProfile"] = undefined /*out*/;
resourceInputs["provisioningState"] = undefined /*out*/;
resourceInputs["resourceOperationError"] = undefined /*out*/;
resourceInputs["rosterProfile"] = undefined /*out*/;
resourceInputs["securityProfile"] = undefined /*out*/;
resourceInputs["state"] = undefined /*out*/;
resourceInputs["systemData"] = undefined /*out*/;
resourceInputs["tags"] = undefined /*out*/;
resourceInputs["title"] = undefined /*out*/;
resourceInputs["type"] = undefined /*out*/;
resourceInputs["virtualMachineProfile"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "azure-native:labservices/v20181015:Lab" }, { type: "azure-native:labservices/v20211001preview:Lab" }, { type: "azure-native:labservices/v20211115preview:Lab" }, { type: "azure-native:labservices/v20220801:Lab" }, { type: "azure-native:labservices/v20230607:Lab" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(Lab.__pulumiType, name, resourceInputs, opts);
}
}
exports.Lab = Lab;
/** @internal */
Lab.__pulumiType = 'azure-native:labservices:Lab';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGFic2VydmljZXMvbGFiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxzRUFBc0U7QUFDdEUsaUZBQWlGOzs7QUFFakYseUNBQXlDO0FBQ3pDLHlDQUF5QztBQUd6QywwQ0FBMEM7QUFFMUM7Ozs7OztHQU1HO0FBQ0gsTUFBYSxHQUFJLFNBQVEsTUFBTSxDQUFDLGNBQWM7SUFDMUM7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQTJCLEVBQUUsSUFBbUM7UUFDNUYsT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBZ0IsRUFBRSxFQUFFLEdBQUcsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFLRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQVE7UUFDN0IsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFDbkMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLEdBQUcsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLENBQUMsWUFBWSxDQUFDO0lBQ3BELENBQUM7SUEyRUQ7Ozs7OztPQU1HO0lBQ0gsWUFBWSxJQUFZLEVBQUUsSUFBYSxFQUFFLElBQW1DO1FBQ3hFLElBQUksY0FBYyxHQUFrQixFQUFFLENBQUM7UUFDdkMsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDVixJQUFJLElBQUksRUFBRSxtQkFBbUIsS0FBSyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUN0RCxNQUFNLElBQUksS0FBSyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7YUFDdEU7WUFDRCxJQUFJLElBQUksRUFBRSxpQkFBaUIsS0FBSyxTQUFTLElB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