diff --git a/builtin/providers/openstack/resource_openstack_blockstorage_volume_v1.go b/builtin/providers/openstack/resource_openstack_blockstorage_volume_v1.go index c83bc538e..74ee1f8d9 100644 --- a/builtin/providers/openstack/resource_openstack_blockstorage_volume_v1.go +++ b/builtin/providers/openstack/resource_openstack_blockstorage_volume_v1.go @@ -43,6 +43,11 @@ func resourceBlockStorageVolumeV1() *schema.Resource { Optional: true, ForceNew: false, }, + "availability_zone": &schema.Schema{ + Type: schema.TypeString, + Optional: true, + ForceNew: true, + }, "metadata": &schema.Schema{ Type: schema.TypeMap, Optional: true, @@ -101,14 +106,15 @@ func resourceBlockStorageVolumeV1Create(d *schema.ResourceData, meta interface{} } createOpts := &volumes.CreateOpts{ - Description: d.Get("description").(string), - Name: d.Get("name").(string), - Size: d.Get("size").(int), - SnapshotID: d.Get("snapshot_id").(string), - SourceVolID: d.Get("source_vol_id").(string), - ImageID: d.Get("image_id").(string), - VolumeType: d.Get("volume_type").(string), - Metadata: resourceContainerMetadataV2(d), + Description: d.Get("description").(string), + Availability: d.Get("availability_zone").(string), + Name: d.Get("name").(string), + Size: d.Get("size").(int), + SnapshotID: d.Get("snapshot_id").(string), + SourceVolID: d.Get("source_vol_id").(string), + ImageID: d.Get("image_id").(string), + VolumeType: d.Get("volume_type").(string), + Metadata: resourceContainerMetadataV2(d), } log.Printf("[DEBUG] Create Options: %#v", createOpts) @@ -160,6 +166,7 @@ func resourceBlockStorageVolumeV1Read(d *schema.ResourceData, meta interface{}) d.Set("size", v.Size) d.Set("description", v.Description) + d.Set("availability_zone", v.AvailabilityZone) d.Set("name", v.Name) d.Set("snapshot_id", v.SnapshotID) d.Set("source_vol_id", v.SourceVolID) diff --git a/website/source/docs/providers/openstack/r/blockstorage_volume_v1.html.markdown b/website/source/docs/providers/openstack/r/blockstorage_volume_v1.html.markdown index 779d67e1c..46dd7a5e2 100644 --- a/website/source/docs/providers/openstack/r/blockstorage_volume_v1.html.markdown +++ b/website/source/docs/providers/openstack/r/blockstorage_volume_v1.html.markdown @@ -38,6 +38,9 @@ The following arguments are supported: * `description` - (Optional) A description of the volume. Changing this updates the volume's description. +* `availability_zone` - (Optional) The availability zone for the volume. + Changing this creates a new volume. + * `image_id` - (Optional) The image ID from which to create the volume. Changing this creates a new volume. @@ -61,6 +64,7 @@ The following attributes are exported: * `size` - See Argument Reference above. * `name` - See Argument Reference above. * `description` - See Argument Reference above. +* `availability_zone` - See Argument Reference above. * `image_id` - See Argument Reference above. * `source_vol_id` - See Argument Reference above. * `snapshot_id` - See Argument Reference above.