This page documents the language specification for the openstack package. If you're looking for help working with the inputs, outputs, or functions of openstack resources in a Pulumi program, please see the resource documentation for examples and API reference.

blockstorage

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-openstack repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-openstack repo.

class pulumi_openstack.blockstorage.AwaitableGetAvailabilityZonesV3Result(id=None, names=None, region=None, state=None)
class pulumi_openstack.blockstorage.AwaitableGetSnapshotV2Result(description=None, id=None, metadata=None, most_recent=None, name=None, region=None, size=None, status=None, volume_id=None)
class pulumi_openstack.blockstorage.AwaitableGetSnapshotV3Result(description=None, id=None, metadata=None, most_recent=None, name=None, region=None, size=None, status=None, volume_id=None)
class pulumi_openstack.blockstorage.AwaitableGetVolumeV2Result(bootable=None, id=None, metadata=None, name=None, region=None, size=None, source_volume_id=None, status=None, volume_type=None)
class pulumi_openstack.blockstorage.AwaitableGetVolumeV3Result(bootable=None, id=None, metadata=None, multiattach=None, name=None, region=None, size=None, source_volume_id=None, status=None, volume_type=None)
class pulumi_openstack.blockstorage.GetAvailabilityZonesV3Result(id=None, names=None, region=None, state=None)

A collection of values returned by getAvailabilityZonesV3.

id = None

The provider-assigned unique ID for this managed resource.

names = None

The names of the availability zones, ordered alphanumerically, that match the queried state.

region = None

See Argument Reference above.

state = None

See Argument Reference above.

class pulumi_openstack.blockstorage.GetSnapshotV2Result(description=None, id=None, metadata=None, most_recent=None, name=None, region=None, size=None, status=None, volume_id=None)

A collection of values returned by getSnapshotV2.

description = None

The snapshot’s description.

id = None

The provider-assigned unique ID for this managed resource.

metadata = None

The snapshot’s metadata.

name = None

See Argument Reference above.

region = None

See Argument Reference above.

size = None

The size of the snapshot.

status = None

See Argument Reference above.

volume_id = None

See Argument Reference above.

class pulumi_openstack.blockstorage.GetSnapshotV3Result(description=None, id=None, metadata=None, most_recent=None, name=None, region=None, size=None, status=None, volume_id=None)

A collection of values returned by getSnapshotV3.

description = None

The snapshot’s description.

id = None

The provider-assigned unique ID for this managed resource.

metadata = None

The snapshot’s metadata.

name = None

See Argument Reference above.

region = None

See Argument Reference above.

size = None

The size of the snapshot.

status = None

See Argument Reference above.

volume_id = None

See Argument Reference above.

class pulumi_openstack.blockstorage.GetVolumeV2Result(bootable=None, id=None, metadata=None, name=None, region=None, size=None, source_volume_id=None, status=None, volume_type=None)

A collection of values returned by getVolumeV2.

bootable = None

Indicates if the volume is bootable.

id = None

The provider-assigned unique ID for this managed resource.

metadata = None

See Argument Reference above.

name = None

See Argument Reference above.

region = None

See Argument Reference above.

size = None

The size of the volume in GBs.

source_volume_id = None

The ID of the volume from which the current volume was created.

status = None

See Argument Reference above.

volume_type = None

The type of the volume.

class pulumi_openstack.blockstorage.GetVolumeV3Result(bootable=None, id=None, metadata=None, multiattach=None, name=None, region=None, size=None, source_volume_id=None, status=None, volume_type=None)

A collection of values returned by getVolumeV3.

bootable = None

Indicates if the volume is bootable.

id = None

The provider-assigned unique ID for this managed resource.

metadata = None

See Argument Reference above.

multiattach = None

Indicates if the volume can be attached to more then one server.

name = None

See Argument Reference above.

region = None

See Argument Reference above.

size = None

The size of the volume in GBs.

source_volume_id = None

The ID of the volume from which the current volume was created.

status = None

See Argument Reference above.

volume_type = None

The type of the volume.

class pulumi_openstack.blockstorage.QuoteSetV2(resource_name, opts=None, backup_gigabytes=None, backups=None, gigabytes=None, groups=None, per_volume_gigabytes=None, project_id=None, region=None, snapshots=None, volumes=None, __props__=None, __name__=None, __opts__=None)

Manages a V2 block storage quotaset resource within OpenStack.

Note: This usually requires admin privileges.

Note: This resource has a no-op deletion so no actual actions will be done against the OpenStack API

in case of delete call.

import pulumi
import pulumi_openstack as openstack

project1 = openstack.identity.Project("project1")
quotaset1 = openstack.blockstorage.QuoteSetV2("quotaset1",
    project_id=project1.id,
    volumes=10,
    snapshots=4,
    gigabytes=100,
    per_volume_gigabytes=10,
    backups=4,
    backup_gigabytes=10,
    groups=100)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • backup_gigabytes (pulumi.Input[float]) – Quota value for backup gigabytes. Changing this updates the existing quotaset.

  • backups (pulumi.Input[float]) – Quota value for backups. Changing this updates the existing quotaset.

  • gigabytes (pulumi.Input[float]) – Quota value for gigabytes. Changing this updates the existing quotaset.

  • groups (pulumi.Input[float]) – Quota value for groups. Changing this updates the existing quotaset.

  • per_volume_gigabytes (pulumi.Input[float]) – Quota value for gigabytes per volume . Changing this updates the existing quotaset.

  • project_id (pulumi.Input[str]) – ID of the project to manage quotas. Changing this creates a new quotaset.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new quotaset.

  • snapshots (pulumi.Input[float]) – Quota value for snapshots. Changing this updates the existing quotaset.

  • volumes (pulumi.Input[float]) – Quota value for volumes. Changing this updates the existing quotaset.

backup_gigabytes: pulumi.Output[float] = None

Quota value for backup gigabytes. Changing this updates the existing quotaset.

backups: pulumi.Output[float] = None

Quota value for backups. Changing this updates the existing quotaset.

gigabytes: pulumi.Output[float] = None

Quota value for gigabytes. Changing this updates the existing quotaset.

groups: pulumi.Output[float] = None

Quota value for groups. Changing this updates the existing quotaset.

per_volume_gigabytes: pulumi.Output[float] = None

Quota value for gigabytes per volume . Changing this updates the existing quotaset.

project_id: pulumi.Output[str] = None

ID of the project to manage quotas. Changing this creates a new quotaset.

region: pulumi.Output[str] = None

The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new quotaset.

snapshots: pulumi.Output[float] = None

Quota value for snapshots. Changing this updates the existing quotaset.

volumes: pulumi.Output[float] = None

Quota value for volumes. Changing this updates the existing quotaset.

static get(resource_name, id, opts=None, backup_gigabytes=None, backups=None, gigabytes=None, groups=None, per_volume_gigabytes=None, project_id=None, region=None, snapshots=None, volumes=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • backup_gigabytes (pulumi.Input[float]) – Quota value for backup gigabytes. Changing this updates the existing quotaset.

  • backups (pulumi.Input[float]) – Quota value for backups. Changing this updates the existing quotaset.

  • gigabytes (pulumi.Input[float]) – Quota value for gigabytes. Changing this updates the existing quotaset.

  • groups (pulumi.Input[float]) – Quota value for groups. Changing this updates the existing quotaset.

  • per_volume_gigabytes (pulumi.Input[float]) – Quota value for gigabytes per volume . Changing this updates the existing quotaset.

  • project_id (pulumi.Input[str]) – ID of the project to manage quotas. Changing this creates a new quotaset.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new quotaset.

  • snapshots (pulumi.Input[float]) – Quota value for snapshots. Changing this updates the existing quotaset.

  • volumes (pulumi.Input[float]) – Quota value for volumes. Changing this updates the existing quotaset.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_openstack.blockstorage.QuoteSetV3(resource_name, opts=None, backup_gigabytes=None, backups=None, gigabytes=None, groups=None, per_volume_gigabytes=None, project_id=None, region=None, snapshots=None, volumes=None, __props__=None, __name__=None, __opts__=None)

Manages a V3 block storage quotaset resource within OpenStack.

Note: This usually requires admin privileges.

Note: This resource has a no-op deletion so no actual actions will be done against the OpenStack API

in case of delete call.

import pulumi
import pulumi_openstack as openstack

project1 = openstack.identity.Project("project1")
quotaset1 = openstack.blockstorage.QuoteSetV3("quotaset1",
    project_id=project1.id,
    volumes=10,
    snapshots=4,
    gigabytes=100,
    per_volume_gigabytes=10,
    backups=4,
    backup_gigabytes=10,
    groups=100)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • backup_gigabytes (pulumi.Input[float]) – Quota value for backup gigabytes. Changing this updates the existing quotaset.

  • backups (pulumi.Input[float]) – Quota value for backups. Changing this updates the existing quotaset.

  • gigabytes (pulumi.Input[float]) – Quota value for gigabytes. Changing this updates the existing quotaset.

  • groups (pulumi.Input[float]) – Quota value for groups. Changing this updates the existing quotaset.

  • per_volume_gigabytes (pulumi.Input[float]) – Quota value for gigabytes per volume . Changing this updates the existing quotaset.

  • project_id (pulumi.Input[str]) – ID of the project to manage quotas. Changing this creates a new quotaset.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new quotaset.

  • snapshots (pulumi.Input[float]) – Quota value for snapshots. Changing this updates the existing quotaset.

  • volumes (pulumi.Input[float]) – Quota value for volumes. Changing this updates the existing quotaset.

backup_gigabytes: pulumi.Output[float] = None

Quota value for backup gigabytes. Changing this updates the existing quotaset.

backups: pulumi.Output[float] = None

Quota value for backups. Changing this updates the existing quotaset.

gigabytes: pulumi.Output[float] = None

Quota value for gigabytes. Changing this updates the existing quotaset.

groups: pulumi.Output[float] = None

Quota value for groups. Changing this updates the existing quotaset.

per_volume_gigabytes: pulumi.Output[float] = None

Quota value for gigabytes per volume . Changing this updates the existing quotaset.

project_id: pulumi.Output[str] = None

ID of the project to manage quotas. Changing this creates a new quotaset.

region: pulumi.Output[str] = None

The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new quotaset.

snapshots: pulumi.Output[float] = None

Quota value for snapshots. Changing this updates the existing quotaset.

volumes: pulumi.Output[float] = None

Quota value for volumes. Changing this updates the existing quotaset.

static get(resource_name, id, opts=None, backup_gigabytes=None, backups=None, gigabytes=None, groups=None, per_volume_gigabytes=None, project_id=None, region=None, snapshots=None, volumes=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • backup_gigabytes (pulumi.Input[float]) – Quota value for backup gigabytes. Changing this updates the existing quotaset.

  • backups (pulumi.Input[float]) – Quota value for backups. Changing this updates the existing quotaset.

  • gigabytes (pulumi.Input[float]) – Quota value for gigabytes. Changing this updates the existing quotaset.

  • groups (pulumi.Input[float]) – Quota value for groups. Changing this updates the existing quotaset.

  • per_volume_gigabytes (pulumi.Input[float]) – Quota value for gigabytes per volume . Changing this updates the existing quotaset.

  • project_id (pulumi.Input[str]) – ID of the project to manage quotas. Changing this creates a new quotaset.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new quotaset.

  • snapshots (pulumi.Input[float]) – Quota value for snapshots. Changing this updates the existing quotaset.

  • volumes (pulumi.Input[float]) – Quota value for volumes. Changing this updates the existing quotaset.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_openstack.blockstorage.Volume(resource_name, opts=None, availability_zone=None, consistency_group_id=None, description=None, enable_online_resize=None, image_id=None, metadata=None, multiattach=None, name=None, region=None, scheduler_hints=None, size=None, snapshot_id=None, source_replica=None, source_vol_id=None, volume_type=None, __props__=None, __name__=None, __opts__=None)

Manages a V3 volume resource within OpenStack.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.Volume("volume1",
    description="first test volume",
    region="RegionOne",
    size=3)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • availability_zone (pulumi.Input[str]) – The availability zone for the volume. Changing this creates a new volume.

  • consistency_group_id (pulumi.Input[str]) – The consistency group to place the volume in.

  • description (pulumi.Input[str]) – A description of the volume. Changing this updates the volume’s description.

  • enable_online_resize (pulumi.Input[bool]) – When this option is set it allows extending attached volumes. Note: updating size of an attached volume requires Cinder support for version 3.42 and a compatible storage driver.

  • image_id (pulumi.Input[str]) – The image ID from which to create the volume. Changing this creates a new volume.

  • metadata (pulumi.Input[dict]) – Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • multiattach (pulumi.Input[bool]) – Allow the volume to be attached to more than one Compute instance.

  • name (pulumi.Input[str]) – A unique name for the volume. Changing this updates the volume’s name.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • scheduler_hints (pulumi.Input[list]) – Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

  • size (pulumi.Input[float]) – The size of the volume to create (in gigabytes).

  • snapshot_id (pulumi.Input[str]) – The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_replica (pulumi.Input[str]) – The volume ID to replicate with.

  • source_vol_id (pulumi.Input[str]) – The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type (pulumi.Input[str]) – The type of volume to create. Changing this creates a new volume.

The scheduler_hints object supports the following:

  • additionalProperties (pulumi.Input[dict]) - Arbitrary key/value pairs of additional properties to pass to the scheduler.

  • differentHosts (pulumi.Input[list]) - The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • localToInstance (pulumi.Input[str]) - An instance UUID. The volume should be scheduled on the same host as the instance.

  • query (pulumi.Input[str]) - A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is described here. At this time, only simple queries are supported. Compound queries using and, or, or not are not supported. An example of a simple query is:

  • sameHosts (pulumi.Input[list]) - A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

attachments: pulumi.Output[list] = None

If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.

  • device (str)

  • id (str)

  • instance_id (str)

availability_zone: pulumi.Output[str] = None

The availability zone for the volume. Changing this creates a new volume.

consistency_group_id: pulumi.Output[str] = None

The consistency group to place the volume in.

description: pulumi.Output[str] = None

A description of the volume. Changing this updates the volume’s description.

enable_online_resize: pulumi.Output[bool] = None

When this option is set it allows extending attached volumes. Note: updating size of an attached volume requires Cinder support for version 3.42 and a compatible storage driver.

image_id: pulumi.Output[str] = None

The image ID from which to create the volume. Changing this creates a new volume.

metadata: pulumi.Output[dict] = None

Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

multiattach: pulumi.Output[bool] = None

Allow the volume to be attached to more than one Compute instance.

name: pulumi.Output[str] = None

A unique name for the volume. Changing this updates the volume’s name.

region: pulumi.Output[str] = None

The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

scheduler_hints: pulumi.Output[list] = None

Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

  • additionalProperties (dict) - Arbitrary key/value pairs of additional properties to pass to the scheduler.

  • differentHosts (list) - The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • localToInstance (str) - An instance UUID. The volume should be scheduled on the same host as the instance.

  • query (str) - A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is described here. At this time, only simple queries are supported. Compound queries using and, or, or not are not supported. An example of a simple query is:

  • sameHosts (list) - A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

size: pulumi.Output[float] = None

The size of the volume to create (in gigabytes).

snapshot_id: pulumi.Output[str] = None

The snapshot ID from which to create the volume. Changing this creates a new volume.

source_replica: pulumi.Output[str] = None

The volume ID to replicate with.

source_vol_id: pulumi.Output[str] = None

The volume ID from which to create the volume. Changing this creates a new volume.

volume_type: pulumi.Output[str] = None

The type of volume to create. Changing this creates a new volume.

static get(resource_name, id, opts=None, attachments=None, availability_zone=None, consistency_group_id=None, description=None, enable_online_resize=None, image_id=None, metadata=None, multiattach=None, name=None, region=None, scheduler_hints=None, size=None, snapshot_id=None, source_replica=None, source_vol_id=None, volume_type=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attachments (pulumi.Input[list]) – If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.

  • availability_zone (pulumi.Input[str]) – The availability zone for the volume. Changing this creates a new volume.

  • consistency_group_id (pulumi.Input[str]) – The consistency group to place the volume in.

  • description (pulumi.Input[str]) – A description of the volume. Changing this updates the volume’s description.

  • enable_online_resize (pulumi.Input[bool]) – When this option is set it allows extending attached volumes. Note: updating size of an attached volume requires Cinder support for version 3.42 and a compatible storage driver.

  • image_id (pulumi.Input[str]) – The image ID from which to create the volume. Changing this creates a new volume.

  • metadata (pulumi.Input[dict]) – Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • multiattach (pulumi.Input[bool]) – Allow the volume to be attached to more than one Compute instance.

  • name (pulumi.Input[str]) – A unique name for the volume. Changing this updates the volume’s name.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • scheduler_hints (pulumi.Input[list]) – Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

  • size (pulumi.Input[float]) – The size of the volume to create (in gigabytes).

  • snapshot_id (pulumi.Input[str]) – The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_replica (pulumi.Input[str]) – The volume ID to replicate with.

  • source_vol_id (pulumi.Input[str]) – The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type (pulumi.Input[str]) – The type of volume to create. Changing this creates a new volume.

The attachments object supports the following:

  • device (pulumi.Input[str])

  • id (pulumi.Input[str])

  • instance_id (pulumi.Input[str])

The scheduler_hints object supports the following:

  • additionalProperties (pulumi.Input[dict]) - Arbitrary key/value pairs of additional properties to pass to the scheduler.

  • differentHosts (pulumi.Input[list]) - The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • localToInstance (pulumi.Input[str]) - An instance UUID. The volume should be scheduled on the same host as the instance.

  • query (pulumi.Input[str]) - A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is described here. At this time, only simple queries are supported. Compound queries using and, or, or not are not supported. An example of a simple query is:

  • sameHosts (pulumi.Input[list]) - A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_openstack.blockstorage.VolumeAttach(resource_name, opts=None, attach_mode=None, device=None, host_name=None, initiator=None, ip_address=None, multipath=None, os_type=None, platform=None, region=None, volume_id=None, wwnn=None, wwpns=None, __props__=None, __name__=None, __opts__=None)

This resource is experimental and may be removed in the future! Feedback is requested if you find this resource useful or if you find any problems with it.

Creates a general purpose attachment connection to a Block Storage volume using the OpenStack Block Storage (Cinder) v3 API. Depending on your Block Storage service configuration, this resource can assist in attaching a volume to a non-OpenStack resource such as a bare-metal server or a remote virtual machine in a different cloud provider.

This does not actually attach a volume to an instance. Please use the compute.VolumeAttach resource for that.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.Volume("volume1", size=1)
va1 = openstack.blockstorage.VolumeAttach("va1",
    device="auto",
    host_name="devstack",
    initiator="iqn.1993-08.org.debian:01:e9861fb1859",
    ip_address="192.168.255.10",
    os_type="linux2",
    platform="x86_64",
    volume_id=volume1.id)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attach_mode (pulumi.Input[str]) – Specify whether to attach the volume as Read-Only (ro) or Read-Write (rw). Only values of ro and rw are accepted. If left unspecified, the Block Storage API will apply a default of rw.

  • device (pulumi.Input[str]) – The device to tell the Block Storage service this volume will be attached as. This is purely for informational purposes. You can specify auto or a device such as /dev/vdc.

  • host_name (pulumi.Input[str]) – The host to attach the volume to.

  • initiator (pulumi.Input[str]) – The iSCSI initiator string to make the connection.

  • ip_address (pulumi.Input[str]) – The IP address of the host_name above.

  • multipath (pulumi.Input[bool]) – Whether to connect to this volume via multipath.

  • os_type (pulumi.Input[str]) – The iSCSI initiator OS type.

  • platform (pulumi.Input[str]) – The iSCSI initiator platform.

  • region (pulumi.Input[str]) – The region in which to obtain the V3 Block Storage client. A Block Storage client is needed to create a volume attachment. If omitted, the region argument of the provider is used. Changing this creates a new volume attachment.

  • volume_id (pulumi.Input[str]) – The ID of the Volume to attach to an Instance.

  • wwnn (pulumi.Input[str]) – A wwnn name. Used for Fibre Channel connections.

  • wwpns (pulumi.Input[list]) – An array of wwpn strings. Used for Fibre Channel connections.

attach_mode: pulumi.Output[str] = None

Specify whether to attach the volume as Read-Only (ro) or Read-Write (rw). Only values of ro and rw are accepted. If left unspecified, the Block Storage API will apply a default of rw.

data: pulumi.Output[dict] = None

This is a map of key/value pairs that contain the connection information. You will want to pass this information to a provisioner script to finalize the connection. See below for more information.

device: pulumi.Output[str] = None

The device to tell the Block Storage service this volume will be attached as. This is purely for informational purposes. You can specify auto or a device such as /dev/vdc.

driver_volume_type: pulumi.Output[str] = None

The storage driver that the volume is based on.

host_name: pulumi.Output[str] = None

The host to attach the volume to.

initiator: pulumi.Output[str] = None

The iSCSI initiator string to make the connection.

ip_address: pulumi.Output[str] = None

The IP address of the host_name above.

mount_point_base: pulumi.Output[str] = None

A mount point base name for shared storage.

multipath: pulumi.Output[bool] = None

Whether to connect to this volume via multipath.

os_type: pulumi.Output[str] = None

The iSCSI initiator OS type.

platform: pulumi.Output[str] = None

The iSCSI initiator platform.

region: pulumi.Output[str] = None

The region in which to obtain the V3 Block Storage client. A Block Storage client is needed to create a volume attachment. If omitted, the region argument of the provider is used. Changing this creates a new volume attachment.

volume_id: pulumi.Output[str] = None

The ID of the Volume to attach to an Instance.

wwnn: pulumi.Output[str] = None

A wwnn name. Used for Fibre Channel connections.

wwpns: pulumi.Output[list] = None

An array of wwpn strings. Used for Fibre Channel connections.

static get(resource_name, id, opts=None, attach_mode=None, data=None, device=None, driver_volume_type=None, host_name=None, initiator=None, ip_address=None, mount_point_base=None, multipath=None, os_type=None, platform=None, region=None, volume_id=None, wwnn=None, wwpns=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attach_mode (pulumi.Input[str]) – Specify whether to attach the volume as Read-Only (ro) or Read-Write (rw). Only values of ro and rw are accepted. If left unspecified, the Block Storage API will apply a default of rw.

  • data (pulumi.Input[dict]) – This is a map of key/value pairs that contain the connection information. You will want to pass this information to a provisioner script to finalize the connection. See below for more information.

  • device (pulumi.Input[str]) – The device to tell the Block Storage service this volume will be attached as. This is purely for informational purposes. You can specify auto or a device such as /dev/vdc.

  • driver_volume_type (pulumi.Input[str]) – The storage driver that the volume is based on.

  • host_name (pulumi.Input[str]) – The host to attach the volume to.

  • initiator (pulumi.Input[str]) – The iSCSI initiator string to make the connection.

  • ip_address (pulumi.Input[str]) – The IP address of the host_name above.

  • mount_point_base (pulumi.Input[str]) – A mount point base name for shared storage.

  • multipath (pulumi.Input[bool]) – Whether to connect to this volume via multipath.

  • os_type (pulumi.Input[str]) – The iSCSI initiator OS type.

  • platform (pulumi.Input[str]) – The iSCSI initiator platform.

  • region (pulumi.Input[str]) – The region in which to obtain the V3 Block Storage client. A Block Storage client is needed to create a volume attachment. If omitted, the region argument of the provider is used. Changing this creates a new volume attachment.

  • volume_id (pulumi.Input[str]) – The ID of the Volume to attach to an Instance.

  • wwnn (pulumi.Input[str]) – A wwnn name. Used for Fibre Channel connections.

  • wwpns (pulumi.Input[list]) – An array of wwpn strings. Used for Fibre Channel connections.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_openstack.blockstorage.VolumeAttachV2(resource_name, opts=None, attach_mode=None, device=None, host_name=None, initiator=None, ip_address=None, multipath=None, os_type=None, platform=None, region=None, volume_id=None, wwnn=None, wwpns=None, __props__=None, __name__=None, __opts__=None)

This resource is experimental and may be removed in the future! Feedback is requested if you find this resource useful or if you find any problems with it.

Creates a general purpose attachment connection to a Block Storage volume using the OpenStack Block Storage (Cinder) v2 API. Depending on your Block Storage service configuration, this resource can assist in attaching a volume to a non-OpenStack resource such as a bare-metal server or a remote virtual machine in a different cloud provider.

This does not actually attach a volume to an instance. Please use the compute.VolumeAttach resource for that.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.VolumeV2("volume1", size=1)
va1 = openstack.blockstorage.VolumeAttachV2("va1",
    device="auto",
    host_name="devstack",
    initiator="iqn.1993-08.org.debian:01:e9861fb1859",
    ip_address="192.168.255.10",
    os_type="linux2",
    platform="x86_64",
    volume_id=volume1.id)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attach_mode (pulumi.Input[str]) – Specify whether to attach the volume as Read-Only (ro) or Read-Write (rw). Only values of ro and rw are accepted. If left unspecified, the Block Storage API will apply a default of rw.

  • device (pulumi.Input[str]) – The device to tell the Block Storage service this volume will be attached as. This is purely for informational purposes. You can specify auto or a device such as /dev/vdc.

  • host_name (pulumi.Input[str]) – The host to attach the volume to.

  • initiator (pulumi.Input[str]) – The iSCSI initiator string to make the connection.

  • ip_address (pulumi.Input[str]) – The IP address of the host_name above.

  • multipath (pulumi.Input[bool]) – Whether to connect to this volume via multipath.

  • os_type (pulumi.Input[str]) – The iSCSI initiator OS type.

  • platform (pulumi.Input[str]) – The iSCSI initiator platform.

  • region (pulumi.Input[str]) – The region in which to obtain the V2 Block Storage client. A Block Storage client is needed to create a volume attachment. If omitted, the region argument of the provider is used. Changing this creates a new volume attachment.

  • volume_id (pulumi.Input[str]) – The ID of the Volume to attach to an Instance.

  • wwnn (pulumi.Input[str]) – A wwnn name. Used for Fibre Channel connections.

  • wwpns (pulumi.Input[list]) – An array of wwpn strings. Used for Fibre Channel connections.

attach_mode: pulumi.Output[str] = None

Specify whether to attach the volume as Read-Only (ro) or Read-Write (rw). Only values of ro and rw are accepted. If left unspecified, the Block Storage API will apply a default of rw.

data: pulumi.Output[dict] = None

This is a map of key/value pairs that contain the connection information. You will want to pass this information to a provisioner script to finalize the connection. See below for more information.

device: pulumi.Output[str] = None

The device to tell the Block Storage service this volume will be attached as. This is purely for informational purposes. You can specify auto or a device such as /dev/vdc.

driver_volume_type: pulumi.Output[str] = None

The storage driver that the volume is based on.

host_name: pulumi.Output[str] = None

The host to attach the volume to.

initiator: pulumi.Output[str] = None

The iSCSI initiator string to make the connection.

ip_address: pulumi.Output[str] = None

The IP address of the host_name above.

mount_point_base: pulumi.Output[str] = None

A mount point base name for shared storage.

multipath: pulumi.Output[bool] = None

Whether to connect to this volume via multipath.

os_type: pulumi.Output[str] = None

The iSCSI initiator OS type.

platform: pulumi.Output[str] = None

The iSCSI initiator platform.

region: pulumi.Output[str] = None

The region in which to obtain the V2 Block Storage client. A Block Storage client is needed to create a volume attachment. If omitted, the region argument of the provider is used. Changing this creates a new volume attachment.

volume_id: pulumi.Output[str] = None

The ID of the Volume to attach to an Instance.

wwnn: pulumi.Output[str] = None

A wwnn name. Used for Fibre Channel connections.

wwpns: pulumi.Output[list] = None

An array of wwpn strings. Used for Fibre Channel connections.

static get(resource_name, id, opts=None, attach_mode=None, data=None, device=None, driver_volume_type=None, host_name=None, initiator=None, ip_address=None, mount_point_base=None, multipath=None, os_type=None, platform=None, region=None, volume_id=None, wwnn=None, wwpns=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attach_mode (pulumi.Input[str]) – Specify whether to attach the volume as Read-Only (ro) or Read-Write (rw). Only values of ro and rw are accepted. If left unspecified, the Block Storage API will apply a default of rw.

  • data (pulumi.Input[dict]) – This is a map of key/value pairs that contain the connection information. You will want to pass this information to a provisioner script to finalize the connection. See below for more information.

  • device (pulumi.Input[str]) – The device to tell the Block Storage service this volume will be attached as. This is purely for informational purposes. You can specify auto or a device such as /dev/vdc.

  • driver_volume_type (pulumi.Input[str]) – The storage driver that the volume is based on.

  • host_name (pulumi.Input[str]) – The host to attach the volume to.

  • initiator (pulumi.Input[str]) – The iSCSI initiator string to make the connection.

  • ip_address (pulumi.Input[str]) – The IP address of the host_name above.

  • mount_point_base (pulumi.Input[str]) – A mount point base name for shared storage.

  • multipath (pulumi.Input[bool]) – Whether to connect to this volume via multipath.

  • os_type (pulumi.Input[str]) – The iSCSI initiator OS type.

  • platform (pulumi.Input[str]) – The iSCSI initiator platform.

  • region (pulumi.Input[str]) – The region in which to obtain the V2 Block Storage client. A Block Storage client is needed to create a volume attachment. If omitted, the region argument of the provider is used. Changing this creates a new volume attachment.

  • volume_id (pulumi.Input[str]) – The ID of the Volume to attach to an Instance.

  • wwnn (pulumi.Input[str]) – A wwnn name. Used for Fibre Channel connections.

  • wwpns (pulumi.Input[list]) – An array of wwpn strings. Used for Fibre Channel connections.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_openstack.blockstorage.VolumeV1(resource_name, opts=None, availability_zone=None, description=None, image_id=None, metadata=None, name=None, region=None, size=None, snapshot_id=None, source_vol_id=None, volume_type=None, __props__=None, __name__=None, __opts__=None)

Manages a V1 volume resource within OpenStack.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.VolumeV1("volume1",
    description="first test volume",
    region="RegionOne",
    size=3)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • availability_zone (pulumi.Input[str]) – The availability zone for the volume. Changing this creates a new volume.

  • description (pulumi.Input[str]) – A description of the volume. Changing this updates the volume’s description.

  • image_id (pulumi.Input[str]) – The image ID from which to create the volume. Changing this creates a new volume.

  • metadata (pulumi.Input[dict]) – Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • name (pulumi.Input[str]) – A unique name for the volume. Changing this updates the volume’s name.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • size (pulumi.Input[float]) – The size of the volume to create (in gigabytes). Changing this creates a new volume.

  • snapshot_id (pulumi.Input[str]) – The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_vol_id (pulumi.Input[str]) – The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type (pulumi.Input[str]) – The type of volume to create. Changing this creates a new volume.

attachments: pulumi.Output[list] = None

If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.

  • device (str)

  • id (str)

  • instance_id (str)

availability_zone: pulumi.Output[str] = None

The availability zone for the volume. Changing this creates a new volume.

description: pulumi.Output[str] = None

A description of the volume. Changing this updates the volume’s description.

image_id: pulumi.Output[str] = None

The image ID from which to create the volume. Changing this creates a new volume.

metadata: pulumi.Output[dict] = None

Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

name: pulumi.Output[str] = None

A unique name for the volume. Changing this updates the volume’s name.

region: pulumi.Output[str] = None

The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

size: pulumi.Output[float] = None

The size of the volume to create (in gigabytes). Changing this creates a new volume.

snapshot_id: pulumi.Output[str] = None

The snapshot ID from which to create the volume. Changing this creates a new volume.

source_vol_id: pulumi.Output[str] = None

The volume ID from which to create the volume. Changing this creates a new volume.

volume_type: pulumi.Output[str] = None

The type of volume to create. Changing this creates a new volume.

static get(resource_name, id, opts=None, attachments=None, availability_zone=None, description=None, image_id=None, metadata=None, name=None, region=None, size=None, snapshot_id=None, source_vol_id=None, volume_type=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attachments (pulumi.Input[list]) – If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.

  • availability_zone (pulumi.Input[str]) – The availability zone for the volume. Changing this creates a new volume.

  • description (pulumi.Input[str]) – A description of the volume. Changing this updates the volume’s description.

  • image_id (pulumi.Input[str]) – The image ID from which to create the volume. Changing this creates a new volume.

  • metadata (pulumi.Input[dict]) – Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • name (pulumi.Input[str]) – A unique name for the volume. Changing this updates the volume’s name.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • size (pulumi.Input[float]) – The size of the volume to create (in gigabytes). Changing this creates a new volume.

  • snapshot_id (pulumi.Input[str]) – The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_vol_id (pulumi.Input[str]) – The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type (pulumi.Input[str]) – The type of volume to create. Changing this creates a new volume.

The attachments object supports the following:

  • device (pulumi.Input[str])

  • id (pulumi.Input[str])

  • instance_id (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_openstack.blockstorage.VolumeV2(resource_name, opts=None, availability_zone=None, consistency_group_id=None, description=None, image_id=None, metadata=None, name=None, region=None, scheduler_hints=None, size=None, snapshot_id=None, source_replica=None, source_vol_id=None, volume_type=None, __props__=None, __name__=None, __opts__=None)

Manages a V2 volume resource within OpenStack.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.VolumeV2("volume1",
    description="first test volume",
    region="RegionOne",
    size=3)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • availability_zone (pulumi.Input[str]) – The availability zone for the volume. Changing this creates a new volume.

  • consistency_group_id (pulumi.Input[str]) – The consistency group to place the volume in.

  • description (pulumi.Input[str]) – A description of the volume. Changing this updates the volume’s description.

  • image_id (pulumi.Input[str]) – The image ID from which to create the volume. Changing this creates a new volume.

  • metadata (pulumi.Input[dict]) – Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • name (pulumi.Input[str]) – A unique name for the volume. Changing this updates the volume’s name.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • scheduler_hints (pulumi.Input[list]) – Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

  • size (pulumi.Input[float]) – The size of the volume to create (in gigabytes). Changing this creates a new volume.

  • snapshot_id (pulumi.Input[str]) – The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_replica (pulumi.Input[str]) – The volume ID to replicate with.

  • source_vol_id (pulumi.Input[str]) – The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type (pulumi.Input[str]) – The type of volume to create. Changing this creates a new volume.

The scheduler_hints object supports the following:

  • additionalProperties (pulumi.Input[dict]) - Arbitrary key/value pairs of additional properties to pass to the scheduler.

  • differentHosts (pulumi.Input[list]) - The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • localToInstance (pulumi.Input[str]) - An instance UUID. The volume should be scheduled on the same host as the instance.

  • query (pulumi.Input[str]) - A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is described here. At this time, only simple queries are supported. Compound queries using and, or, or not are not supported. An example of a simple query is:

  • sameHosts (pulumi.Input[list]) - A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

attachments: pulumi.Output[list] = None

If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.

  • device (str)

  • id (str)

  • instance_id (str)

availability_zone: pulumi.Output[str] = None

The availability zone for the volume. Changing this creates a new volume.

consistency_group_id: pulumi.Output[str] = None

The consistency group to place the volume in.

description: pulumi.Output[str] = None

A description of the volume. Changing this updates the volume’s description.

image_id: pulumi.Output[str] = None

The image ID from which to create the volume. Changing this creates a new volume.

metadata: pulumi.Output[dict] = None

Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

name: pulumi.Output[str] = None

A unique name for the volume. Changing this updates the volume’s name.

region: pulumi.Output[str] = None

The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

scheduler_hints: pulumi.Output[list] = None

Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

  • additionalProperties (dict) - Arbitrary key/value pairs of additional properties to pass to the scheduler.

  • differentHosts (list) - The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • localToInstance (str) - An instance UUID. The volume should be scheduled on the same host as the instance.

  • query (str) - A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is described here. At this time, only simple queries are supported. Compound queries using and, or, or not are not supported. An example of a simple query is:

  • sameHosts (list) - A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

size: pulumi.Output[float] = None

The size of the volume to create (in gigabytes). Changing this creates a new volume.

snapshot_id: pulumi.Output[str] = None

The snapshot ID from which to create the volume. Changing this creates a new volume.

source_replica: pulumi.Output[str] = None

The volume ID to replicate with.

source_vol_id: pulumi.Output[str] = None

The volume ID from which to create the volume. Changing this creates a new volume.

volume_type: pulumi.Output[str] = None

The type of volume to create. Changing this creates a new volume.

static get(resource_name, id, opts=None, attachments=None, availability_zone=None, consistency_group_id=None, description=None, image_id=None, metadata=None, name=None, region=None, scheduler_hints=None, size=None, snapshot_id=None, source_replica=None, source_vol_id=None, volume_type=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • attachments (pulumi.Input[list]) – If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.

  • availability_zone (pulumi.Input[str]) – The availability zone for the volume. Changing this creates a new volume.

  • consistency_group_id (pulumi.Input[str]) – The consistency group to place the volume in.

  • description (pulumi.Input[str]) – A description of the volume. Changing this updates the volume’s description.

  • image_id (pulumi.Input[str]) – The image ID from which to create the volume. Changing this creates a new volume.

  • metadata (pulumi.Input[dict]) – Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • name (pulumi.Input[str]) – A unique name for the volume. Changing this updates the volume’s name.

  • region (pulumi.Input[str]) – The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • scheduler_hints (pulumi.Input[list]) – Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

  • size (pulumi.Input[float]) – The size of the volume to create (in gigabytes). Changing this creates a new volume.

  • snapshot_id (pulumi.Input[str]) – The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_replica (pulumi.Input[str]) – The volume ID to replicate with.

  • source_vol_id (pulumi.Input[str]) – The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type (pulumi.Input[str]) – The type of volume to create. Changing this creates a new volume.

The attachments object supports the following:

  • device (pulumi.Input[str])

  • id (pulumi.Input[str])

  • instance_id (pulumi.Input[str])

The scheduler_hints object supports the following:

  • additionalProperties (pulumi.Input[dict]) - Arbitrary key/value pairs of additional properties to pass to the scheduler.

  • differentHosts (pulumi.Input[list]) - The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • localToInstance (pulumi.Input[str]) - An instance UUID. The volume should be scheduled on the same host as the instance.

  • query (pulumi.Input[str]) - A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is described here. At this time, only simple queries are supported. Compound queries using and, or, or not are not supported. An example of a simple query is:

  • sameHosts (pulumi.Input[list]) - A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

pulumi_openstack.blockstorage.get_availability_zones_v3(region=None, state=None, opts=None)

Use this data source to get a list of Block Storage availability zones from OpenStack

import pulumi
import pulumi_openstack as openstack

zones = openstack.blockstorage.get_availability_zones_v3()
Parameters
  • region (str) – The region in which to obtain the Block Storage client. If omitted, the region argument of the provider is used.

  • state (str) – The state of the availability zones to match. Can either be available or unavailable. Default is available.

pulumi_openstack.blockstorage.get_snapshot_v2(most_recent=None, name=None, region=None, status=None, volume_id=None, opts=None)

Use this data source to get information about an existing snapshot.

import pulumi
import pulumi_openstack as openstack

snapshot1 = openstack.blockstorage.get_snapshot_v2(most_recent=True,
    name="snapshot_1")
Parameters
  • most_recent (bool) – Pick the most recently created snapshot if there are multiple results.

  • name (str) – The name of the snapshot.

  • region (str) – The region in which to obtain the V2 Block Storage client. If omitted, the region argument of the provider is used.

  • status (str) – The status of the snapshot.

  • volume_id (str) – The ID of the snapshot’s volume.

pulumi_openstack.blockstorage.get_snapshot_v3(most_recent=None, name=None, region=None, status=None, volume_id=None, opts=None)

Use this data source to get information about an existing snapshot.

import pulumi
import pulumi_openstack as openstack

snapshot1 = openstack.blockstorage.get_snapshot_v3(most_recent=True,
    name="snapshot_1")
Parameters
  • most_recent (bool) – Pick the most recently created snapshot if there are multiple results.

  • name (str) – The name of the snapshot.

  • region (str) – The region in which to obtain the V3 Block Storage client. If omitted, the region argument of the provider is used.

  • status (str) – The status of the snapshot.

  • volume_id (str) – The ID of the snapshot’s volume.

pulumi_openstack.blockstorage.get_volume_v2(bootable=None, metadata=None, name=None, region=None, status=None, volume_type=None, opts=None)

Use this data source to get information about an existing volume.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.get_volume_v2(name="volume_1")
Parameters
  • bootable (str) – Indicates if the volume is bootable.

  • metadata (dict) – Metadata key/value pairs associated with the volume.

  • name (str) – The name of the volume.

  • region (str) – The region in which to obtain the V2 Block Storage client. If omitted, the region argument of the provider is used.

  • status (str) – The status of the volume.

  • volume_type (str) – The type of the volume.

pulumi_openstack.blockstorage.get_volume_v3(bootable=None, metadata=None, name=None, region=None, status=None, volume_type=None, opts=None)

Use this data source to get information about an existing volume.

import pulumi
import pulumi_openstack as openstack

volume1 = openstack.blockstorage.get_volume_v3(name="volume_1")
Parameters
  • bootable (str) – Indicates if the volume is bootable.

  • metadata (dict) – Metadata key/value pairs associated with the volume.

  • name (str) – The name of the volume.

  • region (str) – The region in which to obtain the V3 Block Storage client. If omitted, the region argument of the provider is used.

  • status (str) – The status of the volume.

  • volume_type (str) – The type of the volume.