1. Packages
  2. Vsphere Provider
  3. API Docs
  4. getDatastoreCluster
vSphere v4.12.1 published on Tuesday, Oct 22, 2024 by Pulumi

vsphere.getDatastoreCluster

Explore with Pulumi AI

vsphere logo
vSphere v4.12.1 published on Tuesday, Oct 22, 2024 by Pulumi

    The vsphere.DatastoreCluster data source can be used to discover the ID of a vSphere datastore cluster object. This can then be used with resources or data sources that require a datastore. For example, to assign datastores using the vsphere.NasDatastore or vsphere.VmfsDatastore resources, or to create virtual machines in using the vsphere.VirtualMachine resource.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as vsphere from "@pulumi/vsphere";
    
    const datacenter = vsphere.getDatacenter({
        name: "dc-01",
    });
    const datastoreCluster = datacenter.then(datacenter => vsphere.getDatastoreCluster({
        name: "datastore-cluster-01",
        datacenterId: datacenter.id,
    }));
    
    import pulumi
    import pulumi_vsphere as vsphere
    
    datacenter = vsphere.get_datacenter(name="dc-01")
    datastore_cluster = vsphere.get_datastore_cluster(name="datastore-cluster-01",
        datacenter_id=datacenter.id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-vsphere/sdk/v4/go/vsphere"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		datacenter, err := vsphere.LookupDatacenter(ctx, &vsphere.LookupDatacenterArgs{
    			Name: pulumi.StringRef("dc-01"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = vsphere.LookupDatastoreCluster(ctx, &vsphere.LookupDatastoreClusterArgs{
    			Name:         "datastore-cluster-01",
    			DatacenterId: pulumi.StringRef(datacenter.Id),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using VSphere = Pulumi.VSphere;
    
    return await Deployment.RunAsync(() => 
    {
        var datacenter = VSphere.GetDatacenter.Invoke(new()
        {
            Name = "dc-01",
        });
    
        var datastoreCluster = VSphere.GetDatastoreCluster.Invoke(new()
        {
            Name = "datastore-cluster-01",
            DatacenterId = datacenter.Apply(getDatacenterResult => getDatacenterResult.Id),
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vsphere.VsphereFunctions;
    import com.pulumi.vsphere.inputs.GetDatacenterArgs;
    import com.pulumi.vsphere.inputs.GetDatastoreClusterArgs;
    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) {
            final var datacenter = VsphereFunctions.getDatacenter(GetDatacenterArgs.builder()
                .name("dc-01")
                .build());
    
            final var datastoreCluster = VsphereFunctions.getDatastoreCluster(GetDatastoreClusterArgs.builder()
                .name("datastore-cluster-01")
                .datacenterId(datacenter.applyValue(getDatacenterResult -> getDatacenterResult.id()))
                .build());
    
        }
    }
    
    variables:
      datacenter:
        fn::invoke:
          Function: vsphere:getDatacenter
          Arguments:
            name: dc-01
      datastoreCluster:
        fn::invoke:
          Function: vsphere:getDatastoreCluster
          Arguments:
            name: datastore-cluster-01
            datacenterId: ${datacenter.id}
    

    Using getDatastoreCluster

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getDatastoreCluster(args: GetDatastoreClusterArgs, opts?: InvokeOptions): Promise<GetDatastoreClusterResult>
    function getDatastoreClusterOutput(args: GetDatastoreClusterOutputArgs, opts?: InvokeOptions): Output<GetDatastoreClusterResult>
    def get_datastore_cluster(datacenter_id: Optional[str] = None,
                              name: Optional[str] = None,
                              opts: Optional[InvokeOptions] = None) -> GetDatastoreClusterResult
    def get_datastore_cluster_output(datacenter_id: Optional[pulumi.Input[str]] = None,
                              name: Optional[pulumi.Input[str]] = None,
                              opts: Optional[InvokeOptions] = None) -> Output[GetDatastoreClusterResult]
    func LookupDatastoreCluster(ctx *Context, args *LookupDatastoreClusterArgs, opts ...InvokeOption) (*LookupDatastoreClusterResult, error)
    func LookupDatastoreClusterOutput(ctx *Context, args *LookupDatastoreClusterOutputArgs, opts ...InvokeOption) LookupDatastoreClusterResultOutput

    > Note: This function is named LookupDatastoreCluster in the Go SDK.

    public static class GetDatastoreCluster 
    {
        public static Task<GetDatastoreClusterResult> InvokeAsync(GetDatastoreClusterArgs args, InvokeOptions? opts = null)
        public static Output<GetDatastoreClusterResult> Invoke(GetDatastoreClusterInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetDatastoreClusterResult> getDatastoreCluster(GetDatastoreClusterArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: vsphere:index/getDatastoreCluster:getDatastoreCluster
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string
    The name or absolute path to the datastore cluster.
    DatacenterId string
    The managed object reference ID of the datacenter the datastore cluster is located in. This can be omitted if the search path used in name is an absolute path. For default datacenters, use the id attribute from an empty vsphere.Datacenter data source.
    Name string
    The name or absolute path to the datastore cluster.
    DatacenterId string
    The managed object reference ID of the datacenter the datastore cluster is located in. This can be omitted if the search path used in name is an absolute path. For default datacenters, use the id attribute from an empty vsphere.Datacenter data source.
    name String
    The name or absolute path to the datastore cluster.
    datacenterId String
    The managed object reference ID of the datacenter the datastore cluster is located in. This can be omitted if the search path used in name is an absolute path. For default datacenters, use the id attribute from an empty vsphere.Datacenter data source.
    name string
    The name or absolute path to the datastore cluster.
    datacenterId string
    The managed object reference ID of the datacenter the datastore cluster is located in. This can be omitted if the search path used in name is an absolute path. For default datacenters, use the id attribute from an empty vsphere.Datacenter data source.
    name str
    The name or absolute path to the datastore cluster.
    datacenter_id str
    The managed object reference ID of the datacenter the datastore cluster is located in. This can be omitted if the search path used in name is an absolute path. For default datacenters, use the id attribute from an empty vsphere.Datacenter data source.
    name String
    The name or absolute path to the datastore cluster.
    datacenterId String
    The managed object reference ID of the datacenter the datastore cluster is located in. This can be omitted if the search path used in name is an absolute path. For default datacenters, use the id attribute from an empty vsphere.Datacenter data source.

    getDatastoreCluster Result

    The following output properties are available:

    Datastores List<string>
    (Optional) The names of the datastores included in the specific cluster.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    DatacenterId string
    Datastores []string
    (Optional) The names of the datastores included in the specific cluster.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    DatacenterId string
    datastores List<String>
    (Optional) The names of the datastores included in the specific cluster.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    datacenterId String
    datastores string[]
    (Optional) The names of the datastores included in the specific cluster.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    datacenterId string
    datastores Sequence[str]
    (Optional) The names of the datastores included in the specific cluster.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    datacenter_id str
    datastores List<String>
    (Optional) The names of the datastores included in the specific cluster.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    datacenterId String

    Package Details

    Repository
    vSphere pulumi/pulumi-vsphere
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the vsphere Terraform Provider.
    vsphere logo
    vSphere v4.12.1 published on Tuesday, Oct 22, 2024 by Pulumi