v0.0.0-...-ae37572 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2020 License: Apache-2.0 Imports: 4 Imported by: 0



Package volumeattach provides the ability to attach and detach volumes from servers.

Example to Attach a Volume

serverID := "7ac8686c-de71-4acb-9600-ec18b1a1ed6d"
volumeID := "87463836-f0e2-4029-abf6-20c8892a3103"

createOpts := volumeattach.CreateOpts{
	Device:   "/dev/vdc",
	VolumeID: volumeID,

result, err := volumeattach.Create(computeClient, serverID, createOpts).Extract()
if err != nil {

Example to Detach a Volume

serverID := "7ac8686c-de71-4acb-9600-ec18b1a1ed6d"
attachmentID := "ed081613-1c9b-4231-aa5e-ebfd4d87f983"

err := volumeattach.Delete(computeClient, serverID, attachmentID).ExtractErr()
if err != nil {



This section is empty.


This section is empty.


func List

func List(client *gophercloud.ServiceClient, serverID string) pagination.Pager

List returns a Pager that allows you to iterate over a collection of VolumeAttachments.


type CreateOpts

type CreateOpts struct {
	// Device is the device that the volume will attach to the instance as.
	// Omit for "auto".
	Device string `json:"device,omitempty"`

	// VolumeID is the ID of the volume to attach to the instance.
	VolumeID string `json:"volumeId" required:"true"`

CreateOpts specifies volume attachment creation or import parameters.

func (CreateOpts) ToVolumeAttachmentCreateMap

func (opts CreateOpts) ToVolumeAttachmentCreateMap() (map[string]interface{}, error)

ToVolumeAttachmentCreateMap constructs a request body from CreateOpts.

type CreateOptsBuilder

type CreateOptsBuilder interface {
	ToVolumeAttachmentCreateMap() (map[string]interface{}, error)

CreateOptsBuilder allows extensions to add parameters to the Create request.

type CreateResult

type CreateResult struct {

CreateResult is the response from a Create operation. Call its Extract method to interpret it as a VolumeAttachment.

func Create

func Create(client *gophercloud.ServiceClient, serverID string, opts CreateOptsBuilder) (r CreateResult)

Create requests the creation of a new volume attachment on the server.

type DeleteResult

type DeleteResult struct {

DeleteResult is the response from a Delete operation. Call its ExtractErr method to determine if the call succeeded or failed.

func Delete

func Delete(client *gophercloud.ServiceClient, serverID, attachmentID string) (r DeleteResult)

Delete requests the deletion of a previous stored VolumeAttachment from the server.

func DeleteWithFlag

func DeleteWithFlag(client *gophercloud.ServiceClient, serverID, volumeID string, deleteFlag int) (r DeleteResult)

DeleteWithFlag requests the deletion of a previous stored VolumeAttachment with delete type flag from the server.

type GetResult

type GetResult struct {

GetResult is the response from a Get operation. Call its Extract method to interpret it as a VolumeAttachment.

func Get

func Get(client *gophercloud.ServiceClient, serverID, attachmentID string) (r GetResult)

Get returns public data about a previously created VolumeAttachment.

type VolumeAttachment

type VolumeAttachment struct {
	// ID is a unique id of the attachment.
	ID string `json:"id"`

	// Device is what device the volume is attached as.
	Device string `json:"device"`

	// VolumeID is the ID of the attached volume.
	VolumeID string `json:"volumeId"`

	// ServerID is the ID of the instance that has the volume attached.
	ServerID string `json:"serverId"`

VolumeAttachment contains attachment information between a volume and server.

func ExtractVolumeAttachments

func ExtractVolumeAttachments(r pagination.Page) ([]VolumeAttachment, error)

ExtractVolumeAttachments interprets a page of results as a slice of VolumeAttachment.

type VolumeAttachmentPage

type VolumeAttachmentPage struct {

VolumeAttachmentPage stores a single page all of VolumeAttachment results from a List call.

func (VolumeAttachmentPage) IsEmpty

func (page VolumeAttachmentPage) IsEmpty() (bool, error)

IsEmpty determines whether or not a VolumeAttachmentPage is empty.

type VolumeAttachmentResult

type VolumeAttachmentResult struct {

VolumeAttachmentResult is the result from a volume attachment operation.

func (VolumeAttachmentResult) Extract

Extract is a method that attempts to interpret any VolumeAttachment resource response as a VolumeAttachment struct.


Path Synopsis
volumeattach unit tests
volumeattach unit tests

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL