1. Packages
  2. Vkcs Provider
  3. API Docs
  4. BlockstorageVolume
vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs

vkcs.BlockstorageVolume

Explore with Pulumi AI

Provides a blockstorage volume resource. This can be used to create, modify and delete blockstorage volume.

Example Usage

Create an empty volume

import * as pulumi from "@pulumi/pulumi";
import * as vkcs from "@pulumi/vkcs";

const data = new vkcs.BlockstorageVolume("data", {
    availabilityZone: "GZ1",
    description: "test volume",
    metadata: {
        foo: "bar",
    },
    size: 1,
    volumeType: "ceph-ssd",
});
Copy
import pulumi
import pulumi_vkcs as vkcs

data = vkcs.BlockstorageVolume("data",
    availability_zone="GZ1",
    description="test volume",
    metadata={
        "foo": "bar",
    },
    size=1,
    volume_type="ceph-ssd")
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vkcs.NewBlockstorageVolume(ctx, "data", &vkcs.BlockstorageVolumeArgs{
			AvailabilityZone: pulumi.String("GZ1"),
			Description:      pulumi.String("test volume"),
			Metadata: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
			Size:       pulumi.Float64(1),
			VolumeType: pulumi.String("ceph-ssd"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Vkcs = Pulumi.Vkcs;

return await Deployment.RunAsync(() => 
{
    var data = new Vkcs.BlockstorageVolume("data", new()
    {
        AvailabilityZone = "GZ1",
        Description = "test volume",
        Metadata = 
        {
            { "foo", "bar" },
        },
        Size = 1,
        VolumeType = "ceph-ssd",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vkcs.BlockstorageVolume;
import com.pulumi.vkcs.BlockstorageVolumeArgs;
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) {
        var data = new BlockstorageVolume("data", BlockstorageVolumeArgs.builder()
            .availabilityZone("GZ1")
            .description("test volume")
            .metadata(Map.of("foo", "bar"))
            .size(1)
            .volumeType("ceph-ssd")
            .build());

    }
}
Copy
resources:
  data:
    type: vkcs:BlockstorageVolume
    properties:
      availabilityZone: GZ1
      description: test volume
      metadata:
        foo: bar
      size: 1
      volumeType: ceph-ssd
Copy

Create bootable volume

import * as pulumi from "@pulumi/pulumi";
import * as vkcs from "@pulumi/vkcs";

const bootable = new vkcs.BlockstorageVolume("bootable", {
    size: 5,
    volumeType: "ceph-ssd",
    imageId: data.vkcs_images_image.debian.id,
    availabilityZone: "GZ1",
});
Copy
import pulumi
import pulumi_vkcs as vkcs

bootable = vkcs.BlockstorageVolume("bootable",
    size=5,
    volume_type="ceph-ssd",
    image_id=data["vkcs_images_image"]["debian"]["id"],
    availability_zone="GZ1")
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vkcs.NewBlockstorageVolume(ctx, "bootable", &vkcs.BlockstorageVolumeArgs{
			Size:             pulumi.Float64(5),
			VolumeType:       pulumi.String("ceph-ssd"),
			ImageId:          pulumi.Any(data.Vkcs_images_image.Debian.Id),
			AvailabilityZone: pulumi.String("GZ1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Vkcs = Pulumi.Vkcs;

return await Deployment.RunAsync(() => 
{
    var bootable = new Vkcs.BlockstorageVolume("bootable", new()
    {
        Size = 5,
        VolumeType = "ceph-ssd",
        ImageId = data.Vkcs_images_image.Debian.Id,
        AvailabilityZone = "GZ1",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vkcs.BlockstorageVolume;
import com.pulumi.vkcs.BlockstorageVolumeArgs;
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) {
        var bootable = new BlockstorageVolume("bootable", BlockstorageVolumeArgs.builder()
            .size(5)
            .volumeType("ceph-ssd")
            .imageId(data.vkcs_images_image().debian().id())
            .availabilityZone("GZ1")
            .build());

    }
}
Copy
resources:
  bootable:
    type: vkcs:BlockstorageVolume
    properties:
      size: 5
      volumeType: ceph-ssd
      imageId: ${data.vkcs_images_image.debian.id}
      availabilityZone: GZ1
Copy

Create BlockstorageVolume Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new BlockstorageVolume(name: string, args: BlockstorageVolumeArgs, opts?: CustomResourceOptions);
@overload
def BlockstorageVolume(resource_name: str,
                       args: BlockstorageVolumeArgs,
                       opts: Optional[ResourceOptions] = None)

@overload
def BlockstorageVolume(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       availability_zone: Optional[str] = None,
                       size: Optional[float] = None,
                       volume_type: Optional[str] = None,
                       blockstorage_volume_id: Optional[str] = None,
                       description: Optional[str] = None,
                       image_id: Optional[str] = None,
                       metadata: Optional[Mapping[str, str]] = None,
                       name: Optional[str] = None,
                       region: Optional[str] = None,
                       snapshot_id: Optional[str] = None,
                       source_vol_id: Optional[str] = None,
                       timeouts: Optional[BlockstorageVolumeTimeoutsArgs] = None)
func NewBlockstorageVolume(ctx *Context, name string, args BlockstorageVolumeArgs, opts ...ResourceOption) (*BlockstorageVolume, error)
public BlockstorageVolume(string name, BlockstorageVolumeArgs args, CustomResourceOptions? opts = null)
public BlockstorageVolume(String name, BlockstorageVolumeArgs args)
public BlockstorageVolume(String name, BlockstorageVolumeArgs args, CustomResourceOptions options)
type: vkcs:BlockstorageVolume
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. BlockstorageVolumeArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. BlockstorageVolumeArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. BlockstorageVolumeArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. BlockstorageVolumeArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. BlockstorageVolumeArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var blockstorageVolumeResource = new Vkcs.BlockstorageVolume("blockstorageVolumeResource", new()
{
    AvailabilityZone = "string",
    Size = 0,
    VolumeType = "string",
    BlockstorageVolumeId = "string",
    Description = "string",
    ImageId = "string",
    Metadata = 
    {
        { "string", "string" },
    },
    Name = "string",
    Region = "string",
    SnapshotId = "string",
    SourceVolId = "string",
    Timeouts = new Vkcs.Inputs.BlockstorageVolumeTimeoutsArgs
    {
        Create = "string",
    },
});
Copy
example, err := vkcs.NewBlockstorageVolume(ctx, "blockstorageVolumeResource", &vkcs.BlockstorageVolumeArgs{
AvailabilityZone: pulumi.String("string"),
Size: pulumi.Float64(0),
VolumeType: pulumi.String("string"),
BlockstorageVolumeId: pulumi.String("string"),
Description: pulumi.String("string"),
ImageId: pulumi.String("string"),
Metadata: pulumi.StringMap{
"string": pulumi.String("string"),
},
Name: pulumi.String("string"),
Region: pulumi.String("string"),
SnapshotId: pulumi.String("string"),
SourceVolId: pulumi.String("string"),
Timeouts: &.BlockstorageVolumeTimeoutsArgs{
Create: pulumi.String("string"),
},
})
Copy
var blockstorageVolumeResource = new BlockstorageVolume("blockstorageVolumeResource", BlockstorageVolumeArgs.builder()
    .availabilityZone("string")
    .size(0)
    .volumeType("string")
    .blockstorageVolumeId("string")
    .description("string")
    .imageId("string")
    .metadata(Map.of("string", "string"))
    .name("string")
    .region("string")
    .snapshotId("string")
    .sourceVolId("string")
    .timeouts(BlockstorageVolumeTimeoutsArgs.builder()
        .create("string")
        .build())
    .build());
Copy
blockstorage_volume_resource = vkcs.BlockstorageVolume("blockstorageVolumeResource",
    availability_zone="string",
    size=0,
    volume_type="string",
    blockstorage_volume_id="string",
    description="string",
    image_id="string",
    metadata={
        "string": "string",
    },
    name="string",
    region="string",
    snapshot_id="string",
    source_vol_id="string",
    timeouts={
        "create": "string",
    })
Copy
const blockstorageVolumeResource = new vkcs.BlockstorageVolume("blockstorageVolumeResource", {
    availabilityZone: "string",
    size: 0,
    volumeType: "string",
    blockstorageVolumeId: "string",
    description: "string",
    imageId: "string",
    metadata: {
        string: "string",
    },
    name: "string",
    region: "string",
    snapshotId: "string",
    sourceVolId: "string",
    timeouts: {
        create: "string",
    },
});
Copy
type: vkcs:BlockstorageVolume
properties:
    availabilityZone: string
    blockstorageVolumeId: string
    description: string
    imageId: string
    metadata:
        string: string
    name: string
    region: string
    size: 0
    snapshotId: string
    sourceVolId: string
    timeouts:
        create: string
    volumeType: string
Copy

BlockstorageVolume Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The BlockstorageVolume resource accepts the following input properties:

AvailabilityZone This property is required. string
required string → The name of the availability zone of the volume.
Size This property is required. double
required number → The size of the volume.
VolumeType This property is required. string
required string → The type of the volume.
BlockstorageVolumeId string
string → ID of the resource.
Description string
optional string → The description of the volume.
ImageId string
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Metadata Dictionary<string, string>
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
Name string
optional string → The name of the volume.
Region string
optional string → Region to create resource in.
SnapshotId string
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
SourceVolId string
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Timeouts BlockstorageVolumeTimeouts
AvailabilityZone This property is required. string
required string → The name of the availability zone of the volume.
Size This property is required. float64
required number → The size of the volume.
VolumeType This property is required. string
required string → The type of the volume.
BlockstorageVolumeId string
string → ID of the resource.
Description string
optional string → The description of the volume.
ImageId string
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Metadata map[string]string
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
Name string
optional string → The name of the volume.
Region string
optional string → Region to create resource in.
SnapshotId string
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
SourceVolId string
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Timeouts BlockstorageVolumeTimeoutsArgs
availabilityZone This property is required. String
required string → The name of the availability zone of the volume.
size This property is required. Double
required number → The size of the volume.
volumeType This property is required. String
required string → The type of the volume.
blockstorageVolumeId String
string → ID of the resource.
description String
optional string → The description of the volume.
imageId String
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata Map<String,String>
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name String
optional string → The name of the volume.
region String
optional string → Region to create resource in.
snapshotId String
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
sourceVolId String
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts BlockstorageVolumeTimeouts
availabilityZone This property is required. string
required string → The name of the availability zone of the volume.
size This property is required. number
required number → The size of the volume.
volumeType This property is required. string
required string → The type of the volume.
blockstorageVolumeId string
string → ID of the resource.
description string
optional string → The description of the volume.
imageId string
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata {[key: string]: string}
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name string
optional string → The name of the volume.
region string
optional string → Region to create resource in.
snapshotId string
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
sourceVolId string
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts BlockstorageVolumeTimeouts
availability_zone This property is required. str
required string → The name of the availability zone of the volume.
size This property is required. float
required number → The size of the volume.
volume_type This property is required. str
required string → The type of the volume.
blockstorage_volume_id str
string → ID of the resource.
description str
optional string → The description of the volume.
image_id str
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata Mapping[str, str]
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name str
optional string → The name of the volume.
region str
optional string → Region to create resource in.
snapshot_id str
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
source_vol_id str
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts BlockstorageVolumeTimeoutsArgs
availabilityZone This property is required. String
required string → The name of the availability zone of the volume.
size This property is required. Number
required number → The size of the volume.
volumeType This property is required. String
required string → The type of the volume.
blockstorageVolumeId String
string → ID of the resource.
description String
optional string → The description of the volume.
imageId String
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata Map<String>
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name String
optional string → The name of the volume.
region String
optional string → Region to create resource in.
snapshotId String
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
sourceVolId String
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts Property Map

Outputs

All input properties are implicitly available as output properties. Additionally, the BlockstorageVolume resource produces the following output properties:

AllMetadata Dictionary<string, string>
map of string → Map of key-value metadata of the volume.New since v0.8.3.
Id string
The provider-assigned unique ID for this managed resource.
AllMetadata map[string]string
map of string → Map of key-value metadata of the volume.New since v0.8.3.
Id string
The provider-assigned unique ID for this managed resource.
allMetadata Map<String,String>
map of string → Map of key-value metadata of the volume.New since v0.8.3.
id String
The provider-assigned unique ID for this managed resource.
allMetadata {[key: string]: string}
map of string → Map of key-value metadata of the volume.New since v0.8.3.
id string
The provider-assigned unique ID for this managed resource.
all_metadata Mapping[str, str]
map of string → Map of key-value metadata of the volume.New since v0.8.3.
id str
The provider-assigned unique ID for this managed resource.
allMetadata Map<String>
map of string → Map of key-value metadata of the volume.New since v0.8.3.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing BlockstorageVolume Resource

Get an existing BlockstorageVolume resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: BlockstorageVolumeState, opts?: CustomResourceOptions): BlockstorageVolume
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        all_metadata: Optional[Mapping[str, str]] = None,
        availability_zone: Optional[str] = None,
        blockstorage_volume_id: Optional[str] = None,
        description: Optional[str] = None,
        image_id: Optional[str] = None,
        metadata: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        region: Optional[str] = None,
        size: Optional[float] = None,
        snapshot_id: Optional[str] = None,
        source_vol_id: Optional[str] = None,
        timeouts: Optional[BlockstorageVolumeTimeoutsArgs] = None,
        volume_type: Optional[str] = None) -> BlockstorageVolume
func GetBlockstorageVolume(ctx *Context, name string, id IDInput, state *BlockstorageVolumeState, opts ...ResourceOption) (*BlockstorageVolume, error)
public static BlockstorageVolume Get(string name, Input<string> id, BlockstorageVolumeState? state, CustomResourceOptions? opts = null)
public static BlockstorageVolume get(String name, Output<String> id, BlockstorageVolumeState state, CustomResourceOptions options)
resources:  _:    type: vkcs:BlockstorageVolume    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AllMetadata Dictionary<string, string>
map of string → Map of key-value metadata of the volume.New since v0.8.3.
AvailabilityZone string
required string → The name of the availability zone of the volume.
BlockstorageVolumeId string
string → ID of the resource.
Description string
optional string → The description of the volume.
ImageId string
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Metadata Dictionary<string, string>
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
Name string
optional string → The name of the volume.
Region string
optional string → Region to create resource in.
Size double
required number → The size of the volume.
SnapshotId string
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
SourceVolId string
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Timeouts BlockstorageVolumeTimeouts
VolumeType string
required string → The type of the volume.
AllMetadata map[string]string
map of string → Map of key-value metadata of the volume.New since v0.8.3.
AvailabilityZone string
required string → The name of the availability zone of the volume.
BlockstorageVolumeId string
string → ID of the resource.
Description string
optional string → The description of the volume.
ImageId string
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Metadata map[string]string
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
Name string
optional string → The name of the volume.
Region string
optional string → Region to create resource in.
Size float64
required number → The size of the volume.
SnapshotId string
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
SourceVolId string
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
Timeouts BlockstorageVolumeTimeoutsArgs
VolumeType string
required string → The type of the volume.
allMetadata Map<String,String>
map of string → Map of key-value metadata of the volume.New since v0.8.3.
availabilityZone String
required string → The name of the availability zone of the volume.
blockstorageVolumeId String
string → ID of the resource.
description String
optional string → The description of the volume.
imageId String
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata Map<String,String>
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name String
optional string → The name of the volume.
region String
optional string → Region to create resource in.
size Double
required number → The size of the volume.
snapshotId String
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
sourceVolId String
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts BlockstorageVolumeTimeouts
volumeType String
required string → The type of the volume.
allMetadata {[key: string]: string}
map of string → Map of key-value metadata of the volume.New since v0.8.3.
availabilityZone string
required string → The name of the availability zone of the volume.
blockstorageVolumeId string
string → ID of the resource.
description string
optional string → The description of the volume.
imageId string
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata {[key: string]: string}
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name string
optional string → The name of the volume.
region string
optional string → Region to create resource in.
size number
required number → The size of the volume.
snapshotId string
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
sourceVolId string
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts BlockstorageVolumeTimeouts
volumeType string
required string → The type of the volume.
all_metadata Mapping[str, str]
map of string → Map of key-value metadata of the volume.New since v0.8.3.
availability_zone str
required string → The name of the availability zone of the volume.
blockstorage_volume_id str
string → ID of the resource.
description str
optional string → The description of the volume.
image_id str
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata Mapping[str, str]
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name str
optional string → The name of the volume.
region str
optional string → Region to create resource in.
size float
required number → The size of the volume.
snapshot_id str
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
source_vol_id str
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts BlockstorageVolumeTimeoutsArgs
volume_type str
required string → The type of the volume.
allMetadata Map<String>
map of string → Map of key-value metadata of the volume.New since v0.8.3.
availabilityZone String
required string → The name of the availability zone of the volume.
blockstorageVolumeId String
string → ID of the resource.
description String
optional string → The description of the volume.
imageId String
optional string → ID of the image to create volume with. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
metadata Map<String>
optional map of string → Key-value map to configure metadata of the volume. Note: Changes to keys that are not in scope, i.e. not configured here, will not be reflected in planned changes, if any, so those keys can be silently removed during an update.
name String
optional string → The name of the volume.
region String
optional string → Region to create resource in.
size Number
required number → The size of the volume.
snapshotId String
optional string → ID of the snapshot of volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
sourceVolId String
optional string → ID of the source volume. Changing this creates a new volume. Only one of snapshot_id, source_volume_id, image_id fields may be set.
timeouts Property Map
volumeType String
required string → The type of the volume.

Supporting Types

BlockstorageVolumeTimeouts
, BlockstorageVolumeTimeoutsArgs

Create string
Create string
create String
create string
create str
create String

Import

Volumes can be imported using the id, e.g.

$ pulumi import vkcs:index/blockstorageVolume:BlockstorageVolume myvolume 64f3cfc5-226e-4388-a9b8-365b1441b94f
Copy

After the import you can use terraform show to view imported fields and write their values to your .tf file.

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
vkcs vk-cs/terraform-provider-vkcs
License
Notes
This Pulumi package is based on the vkcs Terraform Provider.