1. Packages
  2. Gcore Provider
  3. API Docs
  4. getVolume
gcore 0.22.0 published on Wednesday, Apr 30, 2025 by g-core

gcore.getVolume

Explore with Pulumi AI

gcore logo
gcore 0.22.0 published on Wednesday, Apr 30, 2025 by g-core

    Represent volume. A volume is a file storage which is similar to SSD and HDD hard disks

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as gcore from "@pulumi/gcore";
    
    const pr = gcore.getProject({
        name: "test",
    });
    const rg = gcore.getRegion({
        name: "ED-10 Preprod",
    });
    const tv = Promise.all([rg, pr]).then(([rg, pr]) => gcore.getVolume({
        name: "test-hd",
        regionId: rg.id,
        projectId: pr.id,
    }));
    export const view = tv;
    
    import pulumi
    import pulumi_gcore as gcore
    
    pr = gcore.get_project(name="test")
    rg = gcore.get_region(name="ED-10 Preprod")
    tv = gcore.get_volume(name="test-hd",
        region_id=rg.id,
        project_id=pr.id)
    pulumi.export("view", tv)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/gcore/gcore"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		pr, err := gcore.GetProject(ctx, &gcore.GetProjectArgs{
    			Name: "test",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		rg, err := gcore.GetRegion(ctx, &gcore.GetRegionArgs{
    			Name: "ED-10 Preprod",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		tv, err := gcore.LookupVolume(ctx, &gcore.LookupVolumeArgs{
    			Name:      "test-hd",
    			RegionId:  pulumi.Float64Ref(rg.Id),
    			ProjectId: pulumi.Float64Ref(pr.Id),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("view", tv)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcore = Pulumi.Gcore;
    
    return await Deployment.RunAsync(() => 
    {
        var pr = Gcore.GetProject.Invoke(new()
        {
            Name = "test",
        });
    
        var rg = Gcore.GetRegion.Invoke(new()
        {
            Name = "ED-10 Preprod",
        });
    
        var tv = Gcore.GetVolume.Invoke(new()
        {
            Name = "test-hd",
            RegionId = rg.Apply(getRegionResult => getRegionResult.Id),
            ProjectId = pr.Apply(getProjectResult => getProjectResult.Id),
        });
    
        return new Dictionary<string, object?>
        {
            ["view"] = tv,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcore.GcoreFunctions;
    import com.pulumi.gcore.inputs.GetProjectArgs;
    import com.pulumi.gcore.inputs.GetRegionArgs;
    import com.pulumi.gcore.inputs.GetVolumeArgs;
    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 pr = GcoreFunctions.getProject(GetProjectArgs.builder()
                .name("test")
                .build());
    
            final var rg = GcoreFunctions.getRegion(GetRegionArgs.builder()
                .name("ED-10 Preprod")
                .build());
    
            final var tv = GcoreFunctions.getVolume(GetVolumeArgs.builder()
                .name("test-hd")
                .regionId(rg.applyValue(getRegionResult -> getRegionResult.id()))
                .projectId(pr.applyValue(getProjectResult -> getProjectResult.id()))
                .build());
    
            ctx.export("view", tv.applyValue(getVolumeResult -> getVolumeResult));
        }
    }
    
    variables:
      pr:
        fn::invoke:
          function: gcore:getProject
          arguments:
            name: test
      rg:
        fn::invoke:
          function: gcore:getRegion
          arguments:
            name: ED-10 Preprod
      tv:
        fn::invoke:
          function: gcore:getVolume
          arguments:
            name: test-hd
            regionId: ${rg.id}
            projectId: ${pr.id}
    outputs:
      view: ${tv}
    

    Using getVolume

    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 getVolume(args: GetVolumeArgs, opts?: InvokeOptions): Promise<GetVolumeResult>
    function getVolumeOutput(args: GetVolumeOutputArgs, opts?: InvokeOptions): Output<GetVolumeResult>
    def get_volume(id: Optional[str] = None,
                   metadata_k: Optional[str] = None,
                   metadata_kv: Optional[Mapping[str, str]] = None,
                   name: Optional[str] = None,
                   project_id: Optional[float] = None,
                   project_name: Optional[str] = None,
                   region_id: Optional[float] = None,
                   region_name: Optional[str] = None,
                   opts: Optional[InvokeOptions] = None) -> GetVolumeResult
    def get_volume_output(id: Optional[pulumi.Input[str]] = None,
                   metadata_k: Optional[pulumi.Input[str]] = None,
                   metadata_kv: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                   name: Optional[pulumi.Input[str]] = None,
                   project_id: Optional[pulumi.Input[float]] = None,
                   project_name: Optional[pulumi.Input[str]] = None,
                   region_id: Optional[pulumi.Input[float]] = None,
                   region_name: Optional[pulumi.Input[str]] = None,
                   opts: Optional[InvokeOptions] = None) -> Output[GetVolumeResult]
    func LookupVolume(ctx *Context, args *LookupVolumeArgs, opts ...InvokeOption) (*LookupVolumeResult, error)
    func LookupVolumeOutput(ctx *Context, args *LookupVolumeOutputArgs, opts ...InvokeOption) LookupVolumeResultOutput

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

    public static class GetVolume 
    {
        public static Task<GetVolumeResult> InvokeAsync(GetVolumeArgs args, InvokeOptions? opts = null)
        public static Output<GetVolumeResult> Invoke(GetVolumeInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetVolumeResult> getVolume(GetVolumeArgs args, InvokeOptions options)
    public static Output<GetVolumeResult> getVolume(GetVolumeArgs args, InvokeOptions options)
    
    fn::invoke:
      function: gcore:index/getVolume:getVolume
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string
    Id string
    The ID of this resource.
    MetadataK string
    MetadataKv Dictionary<string, string>
    ProjectId double
    ProjectName string
    RegionId double
    RegionName string
    Name string
    Id string
    The ID of this resource.
    MetadataK string
    MetadataKv map[string]string
    ProjectId float64
    ProjectName string
    RegionId float64
    RegionName string
    name String
    id String
    The ID of this resource.
    metadataK String
    metadataKv Map<String,String>
    projectId Double
    projectName String
    regionId Double
    regionName String
    name string
    id string
    The ID of this resource.
    metadataK string
    metadataKv {[key: string]: string}
    projectId number
    projectName string
    regionId number
    regionName string
    name str
    id str
    The ID of this resource.
    metadata_k str
    metadata_kv Mapping[str, str]
    project_id float
    project_name str
    region_id float
    region_name str
    name String
    id String
    The ID of this resource.
    metadataK String
    metadataKv Map<String>
    projectId Number
    projectName String
    regionId Number
    regionName String

    getVolume Result

    The following output properties are available:

    Id string
    The ID of this resource.
    MetadataReadOnlies List<GetVolumeMetadataReadOnly>
    Name string
    Size double
    TypeName string
    Available value is 'standard', 'ssd_hiiops', 'cold', 'ultra'. Defaults to standard
    MetadataK string
    MetadataKv Dictionary<string, string>
    ProjectId double
    ProjectName string
    RegionId double
    RegionName string
    Id string
    The ID of this resource.
    MetadataReadOnlies []GetVolumeMetadataReadOnly
    Name string
    Size float64
    TypeName string
    Available value is 'standard', 'ssd_hiiops', 'cold', 'ultra'. Defaults to standard
    MetadataK string
    MetadataKv map[string]string
    ProjectId float64
    ProjectName string
    RegionId float64
    RegionName string
    id String
    The ID of this resource.
    metadataReadOnlies List<GetVolumeMetadataReadOnly>
    name String
    size Double
    typeName String
    Available value is 'standard', 'ssd_hiiops', 'cold', 'ultra'. Defaults to standard
    metadataK String
    metadataKv Map<String,String>
    projectId Double
    projectName String
    regionId Double
    regionName String
    id string
    The ID of this resource.
    metadataReadOnlies GetVolumeMetadataReadOnly[]
    name string
    size number
    typeName string
    Available value is 'standard', 'ssd_hiiops', 'cold', 'ultra'. Defaults to standard
    metadataK string
    metadataKv {[key: string]: string}
    projectId number
    projectName string
    regionId number
    regionName string
    id str
    The ID of this resource.
    metadata_read_onlies Sequence[GetVolumeMetadataReadOnly]
    name str
    size float
    type_name str
    Available value is 'standard', 'ssd_hiiops', 'cold', 'ultra'. Defaults to standard
    metadata_k str
    metadata_kv Mapping[str, str]
    project_id float
    project_name str
    region_id float
    region_name str
    id String
    The ID of this resource.
    metadataReadOnlies List<Property Map>
    name String
    size Number
    typeName String
    Available value is 'standard', 'ssd_hiiops', 'cold', 'ultra'. Defaults to standard
    metadataK String
    metadataKv Map<String>
    projectId Number
    projectName String
    regionId Number
    regionName String

    Supporting Types

    GetVolumeMetadataReadOnly

    Key string
    ReadOnly bool
    Value string
    Key string
    ReadOnly bool
    Value string
    key String
    readOnly Boolean
    value String
    key string
    readOnly boolean
    value string
    key str
    read_only bool
    value str
    key String
    readOnly Boolean
    value String

    Package Details

    Repository
    gcore g-core/terraform-provider-gcore
    License
    Notes
    This Pulumi package is based on the gcore Terraform Provider.
    gcore logo
    gcore 0.22.0 published on Wednesday, Apr 30, 2025 by g-core