Back to godoc.org

Package vpcvolume

v0.0.2
Latest Go to latest

The highest tagged major version is .

Published: Jul 15, 2019 | License: Apache-2.0 | Module: github.com/IBM/ibmcloud-storage-volume-lib

Index

Constants

const (
	// Version of the VPC backend service
	Version = "/v1"
)

type SnapshotManager

type SnapshotManager interface {
	// Create the snapshot on the volume
	CreateSnapshot(volumeID string, snapshotTemplate *models.Snapshot, ctxLogger *zap.Logger) (*models.Snapshot, error)

	// Delete the snapshot
	DeleteSnapshot(volumeID string, snapshotID string, ctxLogger *zap.Logger) error

	// Get the snapshot
	GetSnapshot(volumeID string, snapshotID string, ctxLogger *zap.Logger) (*models.Snapshot, error)

	// List all the  snapshots for a given volume
	ListSnapshots(volumeID string, ctxLogger *zap.Logger) (*models.SnapshotList, error)

	// Set tag for a snapshot
	SetSnapshotTag(volumeID string, snapshotID string, tagName string, ctxLogger *zap.Logger) error

	// Delete tag of a snapshot
	DeleteSnapshotTag(volumeID string, snapshotID string, tagName string, ctxLogger *zap.Logger) error

	// List all tags of a snapshot
	ListSnapshotTags(volumeID string, snapshotID string, ctxLogger *zap.Logger) (*[]string, error)

	// Check if the given tag exists on a snapshot
	CheckSnapshotTag(volumeID string, snapshotID string, tagName string, ctxLogger *zap.Logger) error
}

SnapshotManager operations

func NewSnapshotManager

func NewSnapshotManager(client client.SessionClient) SnapshotManager

NewSnapshotManager ...

type SnapshotService

type SnapshotService struct {
	// contains filtered or unexported fields
}

SnapshotService ...

func (*SnapshotService) CheckSnapshotTag

func (ss *SnapshotService) CheckSnapshotTag(volumeID string, snapshotID string, tagName string, ctxLogger *zap.Logger) error

CheckSnapshotTag checks if the given tag exists on a snapshot

func (*SnapshotService) CreateSnapshot

func (ss *SnapshotService) CreateSnapshot(volumeID string, snapshotTemplate *models.Snapshot, ctxLogger *zap.Logger) (*models.Snapshot, error)

CreateSnapshot POSTs to /volumes

func (*SnapshotService) DeleteSnapshot

func (ss *SnapshotService) DeleteSnapshot(volumeID string, snapshotID string, ctxLogger *zap.Logger) error

DeleteSnapshot DELETEs to /volumes

func (*SnapshotService) DeleteSnapshotTag

func (ss *SnapshotService) DeleteSnapshotTag(volumeID string, snapshotID string, tagName string, ctxLogger *zap.Logger) error

DeleteSnapshotTag deletes tag of a snapshot

func (*SnapshotService) GetSnapshot

func (ss *SnapshotService) GetSnapshot(volumeID string, snapshotID string, ctxLogger *zap.Logger) (*models.Snapshot, error)

GetSnapshot GETs from /volumes

func (*SnapshotService) ListSnapshotTags

func (ss *SnapshotService) ListSnapshotTags(volumeID string, snapshotID string, ctxLogger *zap.Logger) (*[]string, error)

ListSnapshotTags GETs /volumes/snapshots/tags

func (*SnapshotService) ListSnapshots

func (ss *SnapshotService) ListSnapshots(volumeID string, ctxLogger *zap.Logger) (*models.SnapshotList, error)

ListSnapshots GETs /volumes/snapshots

func (*SnapshotService) SetSnapshotTag

func (ss *SnapshotService) SetSnapshotTag(volumeID string, snapshotID string, tagName string, ctxLogger *zap.Logger) error

SetSnapshotTag sets tag for a snapshot

type VolumeManager

type VolumeManager interface {
	// Create the volume with authorisation by passing required information in the volume object
	CreateVolume(volumeTemplate *models.Volume, ctxLogger *zap.Logger) (*models.Volume, error)

	// Delete the volume
	DeleteVolume(volumeID string, ctxLogger *zap.Logger) error

	// Get the volume by using ID
	GetVolume(volumeID string, ctxLogger *zap.Logger) (*models.Volume, error)

	// Get the volume by using volume name
	GetVolumeByName(volumeName string, ctxLogger *zap.Logger) (*models.Volume, error)

	// Others
	// Get volume lists by using snapshot tags
	ListVolumes(limit int, filters *models.ListVolumeFilters, ctxLogger *zap.Logger) (*models.VolumeList, error)

	// Set tag for a volume
	SetVolumeTag(volumeID string, tagName string, ctxLogger *zap.Logger) error

	// Delete tag of a volume
	DeleteVolumeTag(volumeID string, tagName string, ctxLogger *zap.Logger) error

	// List all tags of a volume
	ListVolumeTags(volumeID string, ctxLogger *zap.Logger) (*[]string, error)

	// Check if the given tag exists on a volume
	CheckVolumeTag(volumeID string, tagName string, ctxLogger *zap.Logger) error
}

VolumeManager operations

func New

func New(client client.SessionClient) VolumeManager

New ...

type VolumeService

type VolumeService struct {
	// contains filtered or unexported fields
}

VolumeService ...

func (*VolumeService) CheckVolumeTag

func (vs *VolumeService) CheckVolumeTag(volumeID string, tagName string, ctxLogger *zap.Logger) error

CheckVolumeTag checks if the given tag exists on a volume

func (*VolumeService) CreateVolume

func (vs *VolumeService) CreateVolume(volumeTemplate *models.Volume, ctxLogger *zap.Logger) (*models.Volume, error)

CreateVolume POSTs to /volumes

func (*VolumeService) DeleteVolume

func (vs *VolumeService) DeleteVolume(volumeID string, ctxLogger *zap.Logger) error

DeleteVolume POSTs to /volumes

func (*VolumeService) DeleteVolumeTag

func (vs *VolumeService) DeleteVolumeTag(volumeID string, tagName string, ctxLogger *zap.Logger) error

DeleteVolumeTag deletes tag of a volume

func (*VolumeService) GetVolume

func (vs *VolumeService) GetVolume(volumeID string, ctxLogger *zap.Logger) (*models.Volume, error)

GetVolume POSTs to /volumes

func (*VolumeService) GetVolumeByName

func (vs *VolumeService) GetVolumeByName(volumeName string, ctxLogger *zap.Logger) (*models.Volume, error)

GetVolumeByName GETs /volumes

func (*VolumeService) ListVolumeTags

func (vs *VolumeService) ListVolumeTags(volumeID string, ctxLogger *zap.Logger) (*[]string, error)

ListVolumeTags GETs /volumes/tags

func (*VolumeService) ListVolumes

func (vs *VolumeService) ListVolumes(limit int, filters *models.ListVolumeFilters, ctxLogger *zap.Logger) (*models.VolumeList, error)

ListVolumes GETs /volumes

func (*VolumeService) SetVolumeTag

func (vs *VolumeService) SetVolumeTag(volumeID string, tagName string, ctxLogger *zap.Logger) error

SetVolumeTag sets tag for a volume

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier