Back to godoc.org

Package vpcvolume

v1.0.0-beta4
Latest Go to latest

The latest major version is .

Published: Aug 27, 2020 | License: Apache-2.0 | Module: github.com/IBM/ibmcloud-volume-vpc

Overview

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Package vpcvolume ...

Index

Constants

const (
	//IksV2PathPrefix ...
	IksV2PathPrefix = "v2/storage/"
)
const (
	// Version of the VPC backend service
	Version = "/v1"
)

type IKSVolumeService

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

IKSVolumeService ...

func (*IKSVolumeService) UpdateVolume

func (vs *IKSVolumeService) UpdateVolume(volumeTemplate *models.Volume, ctxLogger *zap.Logger) error

UpdateVolume POSTs to /volumes

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)
	// UpdateVolume updates the volume with authorisation by passing required information in the volume object
	UpdateVolume(volumeTemplate *models.Volume, ctxLogger *zap.Logger) 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, start string, 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 ...

func NewIKSVolumeService

func NewIKSVolumeService(client client.SessionClient) VolumeManager

NewIKSVolumeService ...

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, start string, 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

func (*VolumeService) UpdateVolume

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

UpdateVolume POSTs to /volumes. Riaas/VPC does have volume update support yet

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