UNPKG

@pulumi/vsphere

Version:

A Pulumi package for creating vsphere resources

162 lines 7.26 kB
"use strict"; // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** Object.defineProperty(exports, "__esModule", { value: true }); exports.getFolderOutput = exports.getFolder = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("./utilities"); /** * The `vsphere.Folder` data source can be used to get the general attributes of a * vSphere inventory folder. The data source supports creating folders of the 5 * major types - datacenter folders, host and cluster folders, virtual machine * folders, storage folders, and network folders. * * Paths are absolute and must include the datacenter. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vsphere from "@pulumi/vsphere"; * * const datacenterFolderFolder = new vsphere.Folder("datacenter_folder", { * path: "example-datacenter-folder", * type: "datacenter", * }); * const datacenterFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}`, * }); * const datacenterDatacenter = new vsphere.Datacenter("datacenter", { * name: "example-datacenter", * folder: datacenterFolder.apply(datacenterFolder => datacenterFolder.path), * }, { * dependsOn: [datacenterFolder], * }); * const datacenter = vsphere.getDatacenterOutput({ * name: datacenterDatacenter.name, * }); * const vmFolderFolder = new vsphere.Folder("vm_folder", { * path: "example-vm-folder", * type: "vm", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const datastoreFolderFolder = new vsphere.Folder("datastore_folder", { * path: "example-datastore-folder", * type: "datastore", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const networkFolderFolder = new vsphere.Folder("network_folder", { * path: "example-network-folder", * type: "network", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const hostFolderFolder = new vsphere.Folder("host_folder", { * path: "example-host-folder", * type: "host", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const vmFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/vm/${vmFolderFolder.path}`, * }); * const datastoreFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/datastore/${datastoreFolderFolder.path}`, * }); * const networkFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/network/${networkFolderFolder.path}`, * }); * const hostFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/host/${hostFolderFolder.path}`, * }); * export const vmFolderId = vmFolder.apply(vmFolder => vmFolder.id); * export const datastoreFolderId = datastoreFolder.apply(datastoreFolder => datastoreFolder.id); * export const networkFolderId = networkFolder.apply(networkFolder => networkFolder.id); * export const hostFolderId = hostFolder.apply(hostFolder => hostFolder.id); * export const datacenterId = datacenter.apply(datacenter => datacenter.id); * export const datacenterFolderPath = datacenterFolderFolder.path; * ``` */ function getFolder(args, opts) { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("vsphere:index/getFolder:getFolder", { "path": args.path, }, opts); } exports.getFolder = getFolder; /** * The `vsphere.Folder` data source can be used to get the general attributes of a * vSphere inventory folder. The data source supports creating folders of the 5 * major types - datacenter folders, host and cluster folders, virtual machine * folders, storage folders, and network folders. * * Paths are absolute and must include the datacenter. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vsphere from "@pulumi/vsphere"; * * const datacenterFolderFolder = new vsphere.Folder("datacenter_folder", { * path: "example-datacenter-folder", * type: "datacenter", * }); * const datacenterFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}`, * }); * const datacenterDatacenter = new vsphere.Datacenter("datacenter", { * name: "example-datacenter", * folder: datacenterFolder.apply(datacenterFolder => datacenterFolder.path), * }, { * dependsOn: [datacenterFolder], * }); * const datacenter = vsphere.getDatacenterOutput({ * name: datacenterDatacenter.name, * }); * const vmFolderFolder = new vsphere.Folder("vm_folder", { * path: "example-vm-folder", * type: "vm", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const datastoreFolderFolder = new vsphere.Folder("datastore_folder", { * path: "example-datastore-folder", * type: "datastore", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const networkFolderFolder = new vsphere.Folder("network_folder", { * path: "example-network-folder", * type: "network", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const hostFolderFolder = new vsphere.Folder("host_folder", { * path: "example-host-folder", * type: "host", * datacenterId: datacenter.apply(datacenter => datacenter.id), * }); * const vmFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/vm/${vmFolderFolder.path}`, * }); * const datastoreFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/datastore/${datastoreFolderFolder.path}`, * }); * const networkFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/network/${networkFolderFolder.path}`, * }); * const hostFolder = vsphere.getFolderOutput({ * path: pulumi.interpolate`/${datacenterFolderFolder.path}/${datacenterDatacenter.name}/host/${hostFolderFolder.path}`, * }); * export const vmFolderId = vmFolder.apply(vmFolder => vmFolder.id); * export const datastoreFolderId = datastoreFolder.apply(datastoreFolder => datastoreFolder.id); * export const networkFolderId = networkFolder.apply(networkFolder => networkFolder.id); * export const hostFolderId = hostFolder.apply(hostFolder => hostFolder.id); * export const datacenterId = datacenter.apply(datacenter => datacenter.id); * export const datacenterFolderPath = datacenterFolderFolder.path; * ``` */ function getFolderOutput(args, opts) { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("vsphere:index/getFolder:getFolder", { "path": args.path, }, opts); } exports.getFolderOutput = getFolderOutput; //# sourceMappingURL=getFolder.js.map