1. Packages
  2. Vcd Provider
  3. API Docs
  4. getStorageProfile
vcd 3.14.1 published on Monday, Apr 14, 2025 by vmware

vcd.getStorageProfile

Explore with Pulumi AI

vcd logo
vcd 3.14.1 published on Monday, Apr 14, 2025 by vmware

    Provides a data source for VDC storage profile.

    Supported in provider v3.1+

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as vcd from "@pulumi/vcd";
    
    const sp = vcd.getStorageProfile({
        name: "ssd-storage-profile",
        org: "my-org",
        vdc: "my-vdc",
    });
    
    import pulumi
    import pulumi_vcd as vcd
    
    sp = vcd.get_storage_profile(name="ssd-storage-profile",
        org="my-org",
        vdc="my-vdc")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vcd/v3/vcd"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := vcd.GetStorageProfile(ctx, &vcd.GetStorageProfileArgs{
    			Name: "ssd-storage-profile",
    			Org:  pulumi.StringRef("my-org"),
    			Vdc:  pulumi.StringRef("my-vdc"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vcd = Pulumi.Vcd;
    
    return await Deployment.RunAsync(() => 
    {
        var sp = Vcd.GetStorageProfile.Invoke(new()
        {
            Name = "ssd-storage-profile",
            Org = "my-org",
            Vdc = "my-vdc",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vcd.VcdFunctions;
    import com.pulumi.vcd.inputs.GetStorageProfileArgs;
    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 sp = VcdFunctions.getStorageProfile(GetStorageProfileArgs.builder()
                .name("ssd-storage-profile")
                .org("my-org")
                .vdc("my-vdc")
                .build());
    
        }
    }
    
    variables:
      sp:
        fn::invoke:
          function: vcd:getStorageProfile
          arguments:
            name: ssd-storage-profile
            org: my-org
            vdc: my-vdc
    

    IOPS settings

    (Supported from VCD v10.2)

    • iops_limiting_enabled - True if this storage profile is IOPS-based placement enabled
    • maximum_disk_iops - The maximum IOPS value that this storage profile is permitted to deliver. Value of 0 means this max setting is disabled and there is no max disk IOPS restriction
    • default_disk_iops - Value of 0 for disk IOPS means that no IOPS would be reserved or provisioned for that virtual disk
    • disk_iops_per_gb_max - The maximum disk IOPs per GB value that this storage profile is permitted to deliver. A value of 0 means there is no per GB IOPS restriction
    • iops_limit - Maximum number of IOPs that can be allocated for this profile. 0 means maximum possible

    Using getStorageProfile

    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 getStorageProfile(args: GetStorageProfileArgs, opts?: InvokeOptions): Promise<GetStorageProfileResult>
    function getStorageProfileOutput(args: GetStorageProfileOutputArgs, opts?: InvokeOptions): Output<GetStorageProfileResult>
    def get_storage_profile(id: Optional[str] = None,
                            name: Optional[str] = None,
                            org: Optional[str] = None,
                            vdc: Optional[str] = None,
                            opts: Optional[InvokeOptions] = None) -> GetStorageProfileResult
    def get_storage_profile_output(id: Optional[pulumi.Input[str]] = None,
                            name: Optional[pulumi.Input[str]] = None,
                            org: Optional[pulumi.Input[str]] = None,
                            vdc: Optional[pulumi.Input[str]] = None,
                            opts: Optional[InvokeOptions] = None) -> Output[GetStorageProfileResult]
    func GetStorageProfile(ctx *Context, args *GetStorageProfileArgs, opts ...InvokeOption) (*GetStorageProfileResult, error)
    func GetStorageProfileOutput(ctx *Context, args *GetStorageProfileOutputArgs, opts ...InvokeOption) GetStorageProfileResultOutput

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

    public static class GetStorageProfile 
    {
        public static Task<GetStorageProfileResult> InvokeAsync(GetStorageProfileArgs args, InvokeOptions? opts = null)
        public static Output<GetStorageProfileResult> Invoke(GetStorageProfileInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetStorageProfileResult> getStorageProfile(GetStorageProfileArgs args, InvokeOptions options)
    public static Output<GetStorageProfileResult> getStorageProfile(GetStorageProfileArgs args, InvokeOptions options)
    
    fn::invoke:
      function: vcd:index/getStorageProfile:getStorageProfile
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string
    Storage profile name.
    Id string
    storage profile identifier
    Org string
    The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organisations.
    Vdc string
    The name of VDC to use, optional if defined at provider level.
    Name string
    Storage profile name.
    Id string
    storage profile identifier
    Org string
    The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organisations.
    Vdc string
    The name of VDC to use, optional if defined at provider level.
    name String
    Storage profile name.
    id String
    storage profile identifier
    org String
    The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organisations.
    vdc String
    The name of VDC to use, optional if defined at provider level.
    name string
    Storage profile name.
    id string
    storage profile identifier
    org string
    The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organisations.
    vdc string
    The name of VDC to use, optional if defined at provider level.
    name str
    Storage profile name.
    id str
    storage profile identifier
    org str
    The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organisations.
    vdc str
    The name of VDC to use, optional if defined at provider level.
    name String
    Storage profile name.
    id String
    storage profile identifier
    org String
    The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organisations.
    vdc String
    The name of VDC to use, optional if defined at provider level.

    getStorageProfile Result

    The following output properties are available:

    Default bool
    True if this is default storage profile for this VDC. The default storage profile is used when an object that can specify a storage profile is created with no storage profile specified
    Enabled bool
    True if this storage profile is enabled for use in the VDC
    Id string
    storage profile identifier
    IopsAllocated double
    Total IOPS currently allocated to this storage profile
    IopsSettings List<GetStorageProfileIopsSetting>
    A block providing IOPS settings. See IOPS settings below for details.
    Limit double
    Maximum number of storage bytes (scaled by 'units' field) allocated for this profile. 0 means maximum possible
    Metadata Dictionary<string, string>

    Deprecated: Deprecated

    MetadataEntries List<GetStorageProfileMetadataEntry>
    Name string
    Units string
    Scale used to define Limit
    UsedStorage double
    Storage used, by the storage profile (in Megabytes)
    Org string
    Vdc string
    Default bool
    True if this is default storage profile for this VDC. The default storage profile is used when an object that can specify a storage profile is created with no storage profile specified
    Enabled bool
    True if this storage profile is enabled for use in the VDC
    Id string
    storage profile identifier
    IopsAllocated float64
    Total IOPS currently allocated to this storage profile
    IopsSettings []GetStorageProfileIopsSetting
    A block providing IOPS settings. See IOPS settings below for details.
    Limit float64
    Maximum number of storage bytes (scaled by 'units' field) allocated for this profile. 0 means maximum possible
    Metadata map[string]string

    Deprecated: Deprecated

    MetadataEntries []GetStorageProfileMetadataEntry
    Name string
    Units string
    Scale used to define Limit
    UsedStorage float64
    Storage used, by the storage profile (in Megabytes)
    Org string
    Vdc string
    default_ Boolean
    True if this is default storage profile for this VDC. The default storage profile is used when an object that can specify a storage profile is created with no storage profile specified
    enabled Boolean
    True if this storage profile is enabled for use in the VDC
    id String
    storage profile identifier
    iopsAllocated Double
    Total IOPS currently allocated to this storage profile
    iopsSettings List<GetStorageProfileIopsSetting>
    A block providing IOPS settings. See IOPS settings below for details.
    limit Double
    Maximum number of storage bytes (scaled by 'units' field) allocated for this profile. 0 means maximum possible
    metadata Map<String,String>

    Deprecated: Deprecated

    metadataEntries List<GetStorageProfileMetadataEntry>
    name String
    units String
    Scale used to define Limit
    usedStorage Double
    Storage used, by the storage profile (in Megabytes)
    org String
    vdc String
    default boolean
    True if this is default storage profile for this VDC. The default storage profile is used when an object that can specify a storage profile is created with no storage profile specified
    enabled boolean
    True if this storage profile is enabled for use in the VDC
    id string
    storage profile identifier
    iopsAllocated number
    Total IOPS currently allocated to this storage profile
    iopsSettings GetStorageProfileIopsSetting[]
    A block providing IOPS settings. See IOPS settings below for details.
    limit number
    Maximum number of storage bytes (scaled by 'units' field) allocated for this profile. 0 means maximum possible
    metadata {[key: string]: string}

    Deprecated: Deprecated

    metadataEntries GetStorageProfileMetadataEntry[]
    name string
    units string
    Scale used to define Limit
    usedStorage number
    Storage used, by the storage profile (in Megabytes)
    org string
    vdc string
    default bool
    True if this is default storage profile for this VDC. The default storage profile is used when an object that can specify a storage profile is created with no storage profile specified
    enabled bool
    True if this storage profile is enabled for use in the VDC
    id str
    storage profile identifier
    iops_allocated float
    Total IOPS currently allocated to this storage profile
    iops_settings Sequence[GetStorageProfileIopsSetting]
    A block providing IOPS settings. See IOPS settings below for details.
    limit float
    Maximum number of storage bytes (scaled by 'units' field) allocated for this profile. 0 means maximum possible
    metadata Mapping[str, str]

    Deprecated: Deprecated

    metadata_entries Sequence[GetStorageProfileMetadataEntry]
    name str
    units str
    Scale used to define Limit
    used_storage float
    Storage used, by the storage profile (in Megabytes)
    org str
    vdc str
    default Boolean
    True if this is default storage profile for this VDC. The default storage profile is used when an object that can specify a storage profile is created with no storage profile specified
    enabled Boolean
    True if this storage profile is enabled for use in the VDC
    id String
    storage profile identifier
    iopsAllocated Number
    Total IOPS currently allocated to this storage profile
    iopsSettings List<Property Map>
    A block providing IOPS settings. See IOPS settings below for details.
    limit Number
    Maximum number of storage bytes (scaled by 'units' field) allocated for this profile. 0 means maximum possible
    metadata Map<String>

    Deprecated: Deprecated

    metadataEntries List<Property Map>
    name String
    units String
    Scale used to define Limit
    usedStorage Number
    Storage used, by the storage profile (in Megabytes)
    org String
    vdc String

    Supporting Types

    GetStorageProfileIopsSetting

    GetStorageProfileMetadataEntry

    IsSystem bool
    Key string
    Type string
    UserAccess string
    Value string
    IsSystem bool
    Key string
    Type string
    UserAccess string
    Value string
    isSystem Boolean
    key String
    type String
    userAccess String
    value String
    isSystem boolean
    key string
    type string
    userAccess string
    value string
    isSystem Boolean
    key String
    type String
    userAccess String
    value String

    Package Details

    Repository
    vcd vmware/terraform-provider-vcd
    License
    Notes
    This Pulumi package is based on the vcd Terraform Provider.
    vcd logo
    vcd 3.14.1 published on Monday, Apr 14, 2025 by vmware