plugin

package
v4.10.1 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2026 License: Apache-2.0 Imports: 44 Imported by: 0

Documentation

Overview

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Package plugin provide storage function

Index

Constants

View Source
const (
	// CapacityUnit unit of capacity
	CapacityUnit int64 = 1024 * 1024

	// ProtocolDpc protocol DPC string
	ProtocolDpc = "dpc"
)
View Source
const (
	// FusionStorageSan Fusion storage SAN type
	FusionStorageSan = iota
	// FusionStorageNas Fusion storage NAS type
	FusionStorageNas
)
View Source
const (
	// DoradoV6PoolUsageType defines pool usage type of dorado v6
	DoradoV6PoolUsageType = "0"

	// ProtocolNfs defines protocol type nfs
	ProtocolNfs = "nfs"
	// ProtocolNfsPlus defines protocol type nfs+
	ProtocolNfsPlus = "nfs+"

	// SystemVStore default value is 0
	SystemVStore = "0"
)
View Source
const (
	// HyperMetroVstorePairActive defines active status for hyper metro vstore
	HyperMetroVstorePairActive = "0"
	// HyperMetroVstorePairLinkStatusConnected defines connected status for hyper metro vstore
	HyperMetroVstorePairLinkStatusConnected = "1"
	// HyperMetroDomainActive defines active status for hyper metro domain
	HyperMetroDomainActive = "1"
	// HyperMetroDomainRunningStatusNormal defines normal status for hyper metro domain running status
	HyperMetroDomainRunningStatusNormal = "0"

	// ConsistentSnapshotsSpecification defines consistent snapshot limits
	ConsistentSnapshotsSpecification = "128"
)
View Source
const (
	// SectorSize means Sector size
	SectorSize int64 = 512
)

Variables

This section is empty.

Functions

func RegPlugin

func RegPlugin(storageType string, plugin StoragePlugin)

RegPlugin used to register plugin

Types

type CreateASeriesVolumeParameter added in v4.9.0

type CreateASeriesVolumeParameter struct {
	StoragePool     string `json:"storagepool"`
	Qos             string `json:"qos"`
	AuthClient      string `json:"authClient"`
	AuthUser        string `json:"authUser"`
	ApplicationType string `json:"applicationType"`
	AllSquash       string `json:"allSquash"`
	RootSquash      string `json:"rootSquash"`
	AllocType       string `json:"allocType"`
	FsPermission    string `json:"fsPermission"`
	Description     string `json:"description"`
	Size            int64  `json:"size"`
	AdvancedOptions string `json:"advancedOptions"`
}

CreateASeriesVolumeParameter is the parameter for creating a-series volume

type CreateDTreeVolumeParameter added in v4.7.0

type CreateDTreeVolumeParameter struct {
	AccountName  string `json:"accountName"`
	ParentName   string `json:"parentname"`
	AuthClient   string `json:"authClient"`
	AllSquash    string `json:"allSquash"`
	RootSquash   string `json:"rootSquash"`
	AllocType    string `json:"allocType"`
	Description  string `json:"description"`
	FsPermission string `json:"fsPermission"`
	Size         int64  `json:"size"`
	VolumeType   string `json:"volumeType"`
}

CreateDTreeVolumeParameter is the parameter for creating volume

type CreateDmeVolumeParameter added in v4.10.0

type CreateDmeVolumeParameter struct {
	SnapshotDirectoryVisibility string `json:"snapshotDirectoryVisibility"`
	StoragePool                 string `json:"storagepool"`
	AuthClient                  string `json:"authClient"`
	AuthUser                    string `json:"authUser"`
	AllSquash                   string `json:"allSquash"`
	RootSquash                  string `json:"rootSquash"`
	AllocType                   string `json:"allocType"`
	Description                 string `json:"description"`
	Size                        int64  `json:"size"`
}

CreateDmeVolumeParameter is the parameter for creating dme volume

type DMEASeriesPlugin added in v4.10.0

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

DMEASeriesPlugin implements storage StoragePlugin interface

func (*DMEASeriesPlugin) AttachVolume added in v4.10.0

func (p *DMEASeriesPlugin) AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)

func (*DMEASeriesPlugin) CreateSnapshot added in v4.10.0

func (p *DMEASeriesPlugin) CreateSnapshot(context.Context, string, string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*DMEASeriesPlugin) CreateVolume added in v4.10.0

func (p *DMEASeriesPlugin) CreateVolume(ctx context.Context, name string,
	parameters map[string]interface{}) (utils.Volume, error)

CreateVolume used to create volume

func (*DMEASeriesPlugin) DeleteDTreeVolume added in v4.10.0

func (p *DMEASeriesPlugin) DeleteDTreeVolume(context.Context, string, string) error

DeleteDTreeVolume used to delete DTree volume

func (*DMEASeriesPlugin) DeleteSnapshot added in v4.10.0

func (p *DMEASeriesPlugin) DeleteSnapshot(context.Context, string, string) error

DeleteSnapshot used to delete snapshot

func (*DMEASeriesPlugin) DeleteVolume added in v4.10.0

func (p *DMEASeriesPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*DMEASeriesPlugin) DetachVolume added in v4.10.0

func (p *DMEASeriesPlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*DMEASeriesPlugin) ExpandDTreeVolume added in v4.10.0

func (p *DMEASeriesPlugin) ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*DMEASeriesPlugin) ExpandVolume added in v4.10.0

func (p *DMEASeriesPlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*DMEASeriesPlugin) GetDTreeParentName added in v4.10.0

func (p *DMEASeriesPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*DMEASeriesPlugin) GetOnline added in v4.10.0

func (p *DMEASeriesPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*DMEASeriesPlugin) GetSectorSize added in v4.10.0

func (p *DMEASeriesPlugin) GetSectorSize() int64

GetSectorSize gets the sector size of plugin

func (*DMEASeriesPlugin) Init added in v4.10.0

func (p *DMEASeriesPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*DMEASeriesPlugin) Logout added in v4.10.0

func (p *DMEASeriesPlugin) Logout(ctx context.Context)

Logout is to logout the storage session

func (*DMEASeriesPlugin) ModifyVolume added in v4.10.0

ModifyVolume used to modify volume hyperMetro status

func (*DMEASeriesPlugin) NewPlugin added in v4.10.0

func (p *DMEASeriesPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*DMEASeriesPlugin) QueryVolume added in v4.10.0

func (p *DMEASeriesPlugin) QueryVolume(ctx context.Context, name string,
	_ map[string]interface{}) (utils.Volume, error)

QueryVolume used to query volume

func (*DMEASeriesPlugin) ReLogin added in v4.10.0

func (p *DMEASeriesPlugin) ReLogin(ctx context.Context) error

ReLogin will refresh the user session of storage

func (*DMEASeriesPlugin) SetOnline added in v4.10.0

func (p *DMEASeriesPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*DMEASeriesPlugin) SupportQoSParameters added in v4.10.0

func (p *DMEASeriesPlugin) SupportQoSParameters(context.Context, string) error

SupportQoSParameters checks requested QoS parameters support by dme plugin

func (*DMEASeriesPlugin) UpdateBackendCapabilities added in v4.10.0

func (p *DMEASeriesPlugin) UpdateBackendCapabilities(_ context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*DMEASeriesPlugin) UpdateMetroRemotePlugin added in v4.10.0

func (p *DMEASeriesPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*DMEASeriesPlugin) UpdatePoolCapabilities added in v4.10.0

func (p *DMEASeriesPlugin) UpdatePoolCapabilities(ctx context.Context,
	poolNames []string) (map[string]interface{}, error)

UpdatePoolCapabilities used to update pool capabilities

func (*DMEASeriesPlugin) Validate added in v4.10.0

func (p *DMEASeriesPlugin) Validate(ctx context.Context, config map[string]interface{}) error

Validate used to check parameters, include login verification

type DTreeAttachVolumeParameter added in v4.7.0

type DTreeAttachVolumeParameter struct {
	VolumeContext map[string]string `json:"volumeContext"`
}

DTreeAttachVolumeParameter is the parameter for attaching volume

type FusionStorageDTreePlugin added in v4.7.0

type FusionStorageDTreePlugin struct {
	FusionStoragePlugin
	// contains filtered or unexported fields
}

FusionStorageDTreePlugin implements storage StoragePlugin interface for Pacific DTree

func (*FusionStorageDTreePlugin) AttachVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) AttachVolume(_ context.Context, _ string, parameters map[string]any) (map[string]any,
	error)

AttachVolume attach volume to node and return storage mapping info.

func (*FusionStorageDTreePlugin) CreateSnapshot added in v4.7.0

func (p *FusionStorageDTreePlugin) CreateSnapshot(ctx context.Context, s string, s2 string) (map[string]interface{},
	error)

CreateSnapshot used to create snapshot

func (*FusionStorageDTreePlugin) CreateVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) CreateVolume(ctx context.Context, name string,
	parameters map[string]any) (utils.Volume, error)

CreateVolume used to create volume

func (*FusionStorageDTreePlugin) DeleteDTreeVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) DeleteDTreeVolume(ctx context.Context, dTreeName string, parentName string) error

DeleteDTreeVolume used to delete pacific dtree volume

func (*FusionStorageDTreePlugin) DeleteSnapshot added in v4.7.0

func (p *FusionStorageDTreePlugin) DeleteSnapshot(ctx context.Context, s string, s2 string) error

DeleteSnapshot used to delete snapshot

func (*FusionStorageDTreePlugin) DeleteVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) DeleteVolume(ctx context.Context, s string) error

DeleteVolume used to delete volume

func (*FusionStorageDTreePlugin) DetachVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*FusionStorageDTreePlugin) ExpandDTreeVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) ExpandDTreeVolume(ctx context.Context, dTreeName string, parentName string,
	size int64) (bool, error)

ExpandDTreeVolume used to expand pacific dtree volume

func (*FusionStorageDTreePlugin) ExpandVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) ExpandVolume(ctx context.Context, s string, i int64) (bool, error)

ExpandVolume used to expand volume

func (*FusionStorageDTreePlugin) GetDTreeParentName added in v4.7.0

func (p *FusionStorageDTreePlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*FusionStorageDTreePlugin) GetOnline added in v4.7.0

func (p *FusionStorageDTreePlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*FusionStorageDTreePlugin) GetSectorSize added in v4.7.0

func (p *FusionStorageDTreePlugin) GetSectorSize() int64

GetSectorSize get sector size of plugin

func (*FusionStorageDTreePlugin) Init added in v4.7.0

func (p *FusionStorageDTreePlugin) Init(ctx context.Context, config map[string]interface{}, parameters map[string]any,
	keepLogin bool) error

Init used to init the plugin

func (*FusionStorageDTreePlugin) ModifyVolume added in v4.7.0

ModifyVolume used to modify volume attributes

func (*FusionStorageDTreePlugin) NewPlugin added in v4.7.0

func (p *FusionStorageDTreePlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*FusionStorageDTreePlugin) QueryVolume added in v4.7.0

func (p *FusionStorageDTreePlugin) QueryVolume(_ context.Context, _ string, _ map[string]any) (utils.Volume, error)

QueryVolume used to query volume

func (*FusionStorageDTreePlugin) SetOnline added in v4.7.0

func (p *FusionStorageDTreePlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*FusionStorageDTreePlugin) SetParentName added in v4.7.0

func (p *FusionStorageDTreePlugin) SetParentName(parentName string)

SetParentName sets the parentName of Pacific DTree plugin

func (*FusionStorageDTreePlugin) SetProtocol added in v4.7.0

func (p *FusionStorageDTreePlugin) SetProtocol(protocol string)

SetProtocol sets the protocol of Pacific DTree plugin

func (*FusionStorageDTreePlugin) UpdateBackendCapabilities added in v4.7.0

func (p *FusionStorageDTreePlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities to update the backend capabilities, such as thin, thick, qos etc.

func (*FusionStorageDTreePlugin) UpdateMetroRemotePlugin added in v4.7.0

func (p *FusionStorageDTreePlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*FusionStorageDTreePlugin) UpdatePoolCapabilities added in v4.7.0

func (p *FusionStorageDTreePlugin) UpdatePoolCapabilities(ctx context.Context, poolNames []string) (map[string]any,
	error)

UpdatePoolCapabilities used to update pool capabilities

func (*FusionStorageDTreePlugin) Validate added in v4.7.0

func (p *FusionStorageDTreePlugin) Validate(ctx context.Context, parameters map[string]interface{}) error

Validate used to validate FusionStorageDTreePlugin parameters

type FusionStorageNasPlugin

type FusionStorageNasPlugin struct {
	FusionStoragePlugin
	// contains filtered or unexported fields
}

FusionStorageNasPlugin implements storage StoragePlugin interface

func (*FusionStorageNasPlugin) AttachVolume

func (p *FusionStorageNasPlugin) AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)

func (*FusionStorageNasPlugin) CreateSnapshot

func (p *FusionStorageNasPlugin) CreateSnapshot(ctx context.Context,
	lunName, snapshotName string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*FusionStorageNasPlugin) CreateVolume

func (p *FusionStorageNasPlugin) CreateVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

CreateVolume used to create volume

func (*FusionStorageNasPlugin) DeleteSnapshot

func (p *FusionStorageNasPlugin) DeleteSnapshot(ctx context.Context,
	snapshotParentID, snapshotName string) error

DeleteSnapshot used to delete snapshot

func (*FusionStorageNasPlugin) DeleteVolume

func (p *FusionStorageNasPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*FusionStorageNasPlugin) DetachVolume

func (p *FusionStorageNasPlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*FusionStorageNasPlugin) ExpandVolume

func (p *FusionStorageNasPlugin) ExpandVolume(ctx context.Context,
	name string,
	size int64) (bool, error)

ExpandVolume used to expand volume

func (*FusionStorageNasPlugin) GetDTreeParentName added in v4.7.0

func (p *FusionStorageNasPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*FusionStorageNasPlugin) GetOnline

func (p *FusionStorageNasPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*FusionStorageNasPlugin) GetSectorSize

func (p *FusionStorageNasPlugin) GetSectorSize() int64

GetSectorSize get sector size of plugin

func (*FusionStorageNasPlugin) Init

func (p *FusionStorageNasPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*FusionStorageNasPlugin) NewPlugin

func (p *FusionStorageNasPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*FusionStorageNasPlugin) QueryVolume

func (p *FusionStorageNasPlugin) QueryVolume(ctx context.Context, name string, params map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*FusionStorageNasPlugin) SetOnline

func (p *FusionStorageNasPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*FusionStorageNasPlugin) UpdateBackendCapabilities

func (p *FusionStorageNasPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities to update the backend capabilities, such as thin, thick, qos and etc.

func (*FusionStorageNasPlugin) UpdateMetroRemotePlugin

func (p *FusionStorageNasPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*FusionStorageNasPlugin) UpdatePoolCapabilities

func (p *FusionStorageNasPlugin) UpdatePoolCapabilities(ctx context.Context,
	poolNames []string) (map[string]interface{}, error)

UpdatePoolCapabilities used to update pool capabilities

func (*FusionStorageNasPlugin) Validate

func (p *FusionStorageNasPlugin) Validate(ctx context.Context, param map[string]interface{}) error

Validate used to validate FusionStorageNasPlugin parameters

type FusionStoragePlugin

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

FusionStoragePlugin defines the plugin for Fusion storage

func (*FusionStoragePlugin) AttachVolume

func (p *FusionStoragePlugin) AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)

func (*FusionStoragePlugin) DeleteDTreeVolume

func (p *FusionStoragePlugin) DeleteDTreeVolume(_ context.Context, _ string, _ string) error

DeleteDTreeVolume used to delete DTree volume

func (*FusionStoragePlugin) DetachVolume

func (p *FusionStoragePlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*FusionStoragePlugin) ExpandDTreeVolume

func (p *FusionStoragePlugin) ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*FusionStoragePlugin) GetDTreeParentName added in v4.7.0

func (p *FusionStoragePlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*FusionStoragePlugin) GetOnline

func (p *FusionStoragePlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*FusionStoragePlugin) Logout

func (p *FusionStoragePlugin) Logout(ctx context.Context)

Logout is to logout the storage session

func (*FusionStoragePlugin) ModifyVolume

func (p *FusionStoragePlugin) ModifyVolume(ctx context.Context, volumeName string,
	modifyType pkgVolume.ModifyVolumeType, param map[string]string) error

ModifyVolume used to modify volume hyperMetro status

func (*FusionStoragePlugin) ReLogin added in v4.8.0

func (p *FusionStoragePlugin) ReLogin(ctx context.Context) error

ReLogin will refresh the user session of storage

func (*FusionStoragePlugin) SetCli added in v4.7.0

func (p *FusionStoragePlugin) SetCli(cli client.IRestClient)

SetCli sets the cli for Oceanstor Plugin

func (*FusionStoragePlugin) SetOnline

func (p *FusionStoragePlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*FusionStoragePlugin) SupportQoSParameters

func (p *FusionStoragePlugin) SupportQoSParameters(ctx context.Context, qosConfig string) error

SupportQoSParameters checks requested QoS parameters support by FusionStorage plugin

func (*FusionStoragePlugin) UpdateBackendCapabilities

func (p *FusionStoragePlugin) UpdateBackendCapabilities() (map[string]interface{}, map[string]interface{}, error)

UpdateBackendCapabilities is used to update backend capabilities

func (*FusionStoragePlugin) UpdateMetroRemotePlugin

func (p *FusionStoragePlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

type FusionStorageSanPlugin

type FusionStorageSanPlugin struct {
	FusionStoragePlugin
	// contains filtered or unexported fields
}

FusionStorageSanPlugin implements storage StoragePlugin interface

func (*FusionStorageSanPlugin) AttachVolume

func (p *FusionStorageSanPlugin) AttachVolume(ctx context.Context, name string,
	parameters map[string]interface{}) (map[string]interface{}, error)

AttachVolume attach volume to node and return storage mapping info.

func (*FusionStorageSanPlugin) CreateSnapshot

func (p *FusionStorageSanPlugin) CreateSnapshot(ctx context.Context,
	lunName, snapshotName string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*FusionStorageSanPlugin) CreateVolume

func (p *FusionStorageSanPlugin) CreateVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

CreateVolume used to create volume

func (*FusionStorageSanPlugin) DeleteSnapshot

func (p *FusionStorageSanPlugin) DeleteSnapshot(ctx context.Context,
	snapshotParentID, snapshotName string) error

DeleteSnapshot used to delete snapshot

func (*FusionStorageSanPlugin) DeleteVolume

func (p *FusionStorageSanPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*FusionStorageSanPlugin) DetachVolume

func (p *FusionStorageSanPlugin) DetachVolume(ctx context.Context,
	name string,
	parameters map[string]interface{}) error

DetachVolume used to detach volume from node

func (*FusionStorageSanPlugin) ExpandVolume

func (p *FusionStorageSanPlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*FusionStorageSanPlugin) GetDTreeParentName added in v4.7.0

func (p *FusionStorageSanPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*FusionStorageSanPlugin) GetOnline

func (p *FusionStorageSanPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*FusionStorageSanPlugin) GetSectorSize

func (p *FusionStorageSanPlugin) GetSectorSize() int64

GetSectorSize get sector size of plugin

func (*FusionStorageSanPlugin) Init

func (p *FusionStorageSanPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*FusionStorageSanPlugin) NewPlugin

func (p *FusionStorageSanPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*FusionStorageSanPlugin) QueryVolume

func (p *FusionStorageSanPlugin) QueryVolume(ctx context.Context, name string, params map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*FusionStorageSanPlugin) SetOnline

func (p *FusionStorageSanPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*FusionStorageSanPlugin) UpdateBackendCapabilities

func (p *FusionStorageSanPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*FusionStorageSanPlugin) UpdateMetroRemotePlugin

func (p *FusionStorageSanPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*FusionStorageSanPlugin) UpdatePoolCapabilities

func (p *FusionStorageSanPlugin) UpdatePoolCapabilities(ctx context.Context,
	poolNames []string) (map[string]interface{}, error)

UpdatePoolCapabilities used to update pool capabilities

func (*FusionStorageSanPlugin) Validate

func (p *FusionStorageSanPlugin) Validate(ctx context.Context, param map[string]interface{}) error

Validate used to validate FusionStorageSanPlugin parameters

type NfsAutoAuthClient added in v4.10.0

type NfsAutoAuthClient struct {
	Enabled bool
	CIDRs   []string
}

NfsAutoAuthClient represents the nfs auto auth client feature.

type OceandiskPlugin

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

OceandiskPlugin provides oceandisk plugin base operations

func (*OceandiskPlugin) AttachVolume

func (p *OceandiskPlugin) AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)

func (*OceandiskPlugin) DetachVolume

func (p *OceandiskPlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*OceandiskPlugin) GetDTreeParentName added in v4.7.0

func (p *OceandiskPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceandiskPlugin) GetOnline

func (p *OceandiskPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceandiskPlugin) Logout

func (p *OceandiskPlugin) Logout(ctx context.Context)

Logout is to logout the storage session

func (*OceandiskPlugin) ReLogin added in v4.8.0

func (p *OceandiskPlugin) ReLogin(ctx context.Context) error

ReLogin will refresh the user session of storage

func (*OceandiskPlugin) SetOnline

func (p *OceandiskPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceandiskPlugin) SupportQoSParameters

func (p *OceandiskPlugin) SupportQoSParameters(ctx context.Context, qosConfig string) error

SupportQoSParameters checks requested QoS parameters support by Oceandisk plugin

func (*OceandiskPlugin) UpdateBackendCapabilities

func (p *OceandiskPlugin) UpdateBackendCapabilities() (map[string]interface{}, map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*OceandiskPlugin) UpdateMetroRemotePlugin

func (p *OceandiskPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

type OceandiskSanPlugin

type OceandiskSanPlugin struct {
	OceandiskPlugin
	// contains filtered or unexported fields
}

OceandiskSanPlugin implements storage StoragePlugin interface

func (*OceandiskSanPlugin) AttachVolume

func (p *OceandiskSanPlugin) AttachVolume(ctx context.Context, name string,
	parameters map[string]interface{}) (map[string]interface{}, error)

AttachVolume attach volume to node,return storage mapping info.

func (*OceandiskSanPlugin) CreateSnapshot

func (p *OceandiskSanPlugin) CreateSnapshot(ctx context.Context,
	namespaceName, snapshotName string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*OceandiskSanPlugin) CreateVolume

func (p *OceandiskSanPlugin) CreateVolume(ctx context.Context, name string,
	parameters map[string]interface{}) (utils.Volume, error)

CreateVolume used to create volume

func (*OceandiskSanPlugin) DeleteDTreeVolume

func (p *OceandiskSanPlugin) DeleteDTreeVolume(_ context.Context, _ string, _ string) error

DeleteDTreeVolume used to delete DTree volume

func (*OceandiskSanPlugin) DeleteSnapshot

func (p *OceandiskSanPlugin) DeleteSnapshot(ctx context.Context,
	snapshotParentID, snapshotName string) error

DeleteSnapshot used to delete snapshot

func (*OceandiskSanPlugin) DeleteVolume

func (p *OceandiskSanPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*OceandiskSanPlugin) DetachVolume

func (p *OceandiskSanPlugin) DetachVolume(ctx context.Context, name string, parameters map[string]interface{}) error

DetachVolume used to detach volume from node

func (*OceandiskSanPlugin) ExpandDTreeVolume

func (p *OceandiskSanPlugin) ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*OceandiskSanPlugin) ExpandVolume

func (p *OceandiskSanPlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*OceandiskSanPlugin) GetDTreeParentName added in v4.7.0

func (p *OceandiskSanPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceandiskSanPlugin) GetOnline

func (p *OceandiskSanPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceandiskSanPlugin) GetSectorSize

func (p *OceandiskSanPlugin) GetSectorSize() int64

GetSectorSize gets the sector size of plugin

func (*OceandiskSanPlugin) Init

func (p *OceandiskSanPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*OceandiskSanPlugin) ModifyVolume

func (p *OceandiskSanPlugin) ModifyVolume(ctx context.Context, volumeName string,
	modifyType pkgVolume.ModifyVolumeType, param map[string]string) error

ModifyVolume used to modify volume hyperMetro status

func (*OceandiskSanPlugin) NewPlugin

func (p *OceandiskSanPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*OceandiskSanPlugin) QueryVolume

func (p *OceandiskSanPlugin) QueryVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*OceandiskSanPlugin) SetOnline

func (p *OceandiskSanPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceandiskSanPlugin) UpdateBackendCapabilities

func (p *OceandiskSanPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities to update the block storage capabilities

func (*OceandiskSanPlugin) UpdateMetroRemotePlugin

func (p *OceandiskSanPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*OceandiskSanPlugin) UpdatePoolCapabilities

func (p *OceandiskSanPlugin) UpdatePoolCapabilities(ctx context.Context,
	poolNames []string) (map[string]interface{}, error)

UpdatePoolCapabilities used to update pool capabilities

func (*OceandiskSanPlugin) Validate

func (p *OceandiskSanPlugin) Validate(ctx context.Context, param map[string]interface{}) error

Validate used to validate OceandiskSanPlugin parameters

type OceanstorASeriesPlugin added in v4.9.0

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

OceanstorASeriesPlugin implements storage StoragePlugin interface

func (*OceanstorASeriesPlugin) AttachVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)

func (*OceanstorASeriesPlugin) CreateSnapshot added in v4.9.0

func (p *OceanstorASeriesPlugin) CreateSnapshot(ctx context.Context,
	fsName, snapshotName string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*OceanstorASeriesPlugin) CreateVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) CreateVolume(ctx context.Context, name string,
	parameters map[string]interface{}) (utils.Volume, error)

CreateVolume used to create volume

func (*OceanstorASeriesPlugin) DeleteDTreeVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) DeleteDTreeVolume(context.Context, string, string) error

DeleteDTreeVolume used to delete DTree volume

func (*OceanstorASeriesPlugin) DeleteSnapshot added in v4.9.0

func (p *OceanstorASeriesPlugin) DeleteSnapshot(ctx context.Context, snapshotParentId, snapshotName string) error

DeleteSnapshot used to delete snapshot

func (*OceanstorASeriesPlugin) DeleteVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*OceanstorASeriesPlugin) DetachVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*OceanstorASeriesPlugin) ExpandDTreeVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*OceanstorASeriesPlugin) ExpandVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*OceanstorASeriesPlugin) GetDTreeParentName added in v4.9.0

func (p *OceanstorASeriesPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceanstorASeriesPlugin) GetOnline added in v4.9.0

func (p *OceanstorASeriesPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceanstorASeriesPlugin) GetSectorSize added in v4.9.0

func (p *OceanstorASeriesPlugin) GetSectorSize() int64

GetSectorSize gets the sector size of plugin

func (*OceanstorASeriesPlugin) Init added in v4.9.0

func (p *OceanstorASeriesPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*OceanstorASeriesPlugin) Logout added in v4.9.0

func (p *OceanstorASeriesPlugin) Logout(ctx context.Context)

Logout is to logout the storage session

func (*OceanstorASeriesPlugin) ModifyVolume added in v4.9.0

ModifyVolume used to modify volume hyperMetro status

func (*OceanstorASeriesPlugin) NewPlugin added in v4.9.0

func (p *OceanstorASeriesPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*OceanstorASeriesPlugin) QueryVolume added in v4.9.0

func (p *OceanstorASeriesPlugin) QueryVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*OceanstorASeriesPlugin) ReLogin added in v4.9.0

func (p *OceanstorASeriesPlugin) ReLogin(ctx context.Context) error

ReLogin will refresh the user session of storage

func (*OceanstorASeriesPlugin) SetOnline added in v4.9.0

func (p *OceanstorASeriesPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceanstorASeriesPlugin) SupportQoSParameters added in v4.9.0

func (p *OceanstorASeriesPlugin) SupportQoSParameters(ctx context.Context, qosConfig string) error

SupportQoSParameters checks requested QoS parameters support by A-series plugin

func (*OceanstorASeriesPlugin) UpdateBackendCapabilities added in v4.9.0

func (p *OceanstorASeriesPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*OceanstorASeriesPlugin) UpdateMetroRemotePlugin added in v4.9.0

func (p *OceanstorASeriesPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*OceanstorASeriesPlugin) UpdatePoolCapabilities added in v4.9.0

func (p *OceanstorASeriesPlugin) UpdatePoolCapabilities(ctx context.Context,
	poolNames []string) (map[string]interface{}, error)

UpdatePoolCapabilities used to update pool capabilities

func (*OceanstorASeriesPlugin) Validate added in v4.9.0

func (p *OceanstorASeriesPlugin) Validate(ctx context.Context, config map[string]interface{}) error

Validate used to validate OceanstorASeriesPlugin parameters

type OceanstorDTreePlugin

type OceanstorDTreePlugin struct {
	OceanstorPlugin
	// contains filtered or unexported fields
}

OceanstorDTreePlugin implements storage StoragePlugin interface

func (*OceanstorDTreePlugin) AttachVolume

func (p *OceanstorDTreePlugin) AttachVolume(ctx context.Context, volume string,
	parameters map[string]any) (map[string]any, error)

AttachVolume attach volume to node and return storage mapping info.

func (*OceanstorDTreePlugin) CreateSnapshot

func (p *OceanstorDTreePlugin) CreateSnapshot(ctx context.Context, s, s2 string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*OceanstorDTreePlugin) CreateVolume

func (p *OceanstorDTreePlugin) CreateVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

CreateVolume used to create volume

func (*OceanstorDTreePlugin) DeleteDTreeVolume

func (p *OceanstorDTreePlugin) DeleteDTreeVolume(ctx context.Context, dTreeName, parentName string) error

DeleteDTreeVolume used to delete DTree volume

func (*OceanstorDTreePlugin) DeleteSnapshot

func (p *OceanstorDTreePlugin) DeleteSnapshot(ctx context.Context, s, s2 string) error

DeleteSnapshot used to delete snapshot

func (*OceanstorDTreePlugin) DeleteVolume

func (p *OceanstorDTreePlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*OceanstorDTreePlugin) DetachVolume

func (p *OceanstorDTreePlugin) DetachVolume(ctx context.Context, volume string,
	parameters map[string]interface{}) error

DetachVolume detach volume from node

func (*OceanstorDTreePlugin) ExpandDTreeVolume

func (p *OceanstorDTreePlugin) ExpandDTreeVolume(ctx context.Context,
	dTreeName, parentName string, spaceHardQuota int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*OceanstorDTreePlugin) ExpandVolume

func (p *OceanstorDTreePlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*OceanstorDTreePlugin) GetDTreeParentName added in v4.7.0

func (p *OceanstorDTreePlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceanstorDTreePlugin) GetOnline

func (p *OceanstorDTreePlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceanstorDTreePlugin) Init

func (p *OceanstorDTreePlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*OceanstorDTreePlugin) ModifyVolume

func (p *OceanstorDTreePlugin) ModifyVolume(ctx context.Context, volumeName string,
	modifyType pkgVolume.ModifyVolumeType, param map[string]string) error

ModifyVolume used to modify volume hyperMetro status

func (*OceanstorDTreePlugin) NewPlugin

func (p *OceanstorDTreePlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*OceanstorDTreePlugin) QueryVolume

func (p *OceanstorDTreePlugin) QueryVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*OceanstorDTreePlugin) SetNfsAutoAuthClient added in v4.10.0

func (p *OceanstorDTreePlugin) SetNfsAutoAuthClient(enabled bool, cidrs []string)

SetNfsAutoAuthClient sets the nfsAutoAuthClient of Oceanstor DTree plugin

func (*OceanstorDTreePlugin) SetOnline

func (p *OceanstorDTreePlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceanstorDTreePlugin) SetParentName added in v4.7.0

func (p *OceanstorDTreePlugin) SetParentName(parentName string)

SetParentName sets the parentName of Oceanstor DTree plugin

func (*OceanstorDTreePlugin) UpdateBackendCapabilities

func (p *OceanstorDTreePlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*OceanstorDTreePlugin) UpdateMetroRemotePlugin

func (p *OceanstorDTreePlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

func (*OceanstorDTreePlugin) UpdatePoolCapabilities

func (p *OceanstorDTreePlugin) UpdatePoolCapabilities(ctx context.Context, poolNames []string) (map[string]interface{},
	error)

UpdatePoolCapabilities used to update pool capabilities

func (*OceanstorDTreePlugin) Validate

func (p *OceanstorDTreePlugin) Validate(ctx context.Context, param map[string]interface{}) error

Validate used to validate OceanstorDTreePlugin parameters

type OceanstorNasPlugin

type OceanstorNasPlugin struct {
	OceanstorPlugin
	// contains filtered or unexported fields
}

OceanstorNasPlugin implements storage StoragePlugin interface

func (*OceanstorNasPlugin) AttachVolume

func (p *OceanstorNasPlugin) AttachVolume(ctx context.Context, volume string, params map[string]any) (map[string]any,
	error)

AttachVolume establishes the mapping relationship between the host and storage.

func (*OceanstorNasPlugin) CreateSnapshot

func (p *OceanstorNasPlugin) CreateSnapshot(ctx context.Context,
	fsName, snapshotName string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*OceanstorNasPlugin) CreateVolume

func (p *OceanstorNasPlugin) CreateVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

CreateVolume used to create volume

func (*OceanstorNasPlugin) DeleteDTreeVolume

func (p *OceanstorNasPlugin) DeleteDTreeVolume(_ context.Context, _ string, _ string) error

DeleteDTreeVolume used to delete DTree volume

func (*OceanstorNasPlugin) DeleteSnapshot

func (p *OceanstorNasPlugin) DeleteSnapshot(ctx context.Context, snapshotParentId, snapshotName string) error

DeleteSnapshot used to delete snapshot

func (*OceanstorNasPlugin) DeleteVolume

func (p *OceanstorNasPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*OceanstorNasPlugin) DetachVolume

func (p *OceanstorNasPlugin) DetachVolume(ctx context.Context, volume string, params map[string]any) error

DetachVolume cancels the mapping relationship between the host and storage.

func (*OceanstorNasPlugin) ExpandDTreeVolume

func (p *OceanstorNasPlugin) ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*OceanstorNasPlugin) ExpandVolume

func (p *OceanstorNasPlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*OceanstorNasPlugin) GetDTreeParentName added in v4.7.0

func (p *OceanstorNasPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceanstorNasPlugin) GetLocal2HyperMetroParameters

func (p *OceanstorNasPlugin) GetLocal2HyperMetroParameters(ctx context.Context, VolumeId string,
	parameters map[string]string) (map[string]interface{}, error)

GetLocal2HyperMetroParameters used to get local -> hyperMetro parameters

func (*OceanstorNasPlugin) GetOnline

func (p *OceanstorNasPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceanstorNasPlugin) Init

func (p *OceanstorNasPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*OceanstorNasPlugin) ModifyVolume

func (p *OceanstorNasPlugin) ModifyVolume(ctx context.Context, VolumeId string, modifyType pkgVolume.ModifyVolumeType,
	param map[string]string) error

ModifyVolume used to modify volume hyperMetro status

func (*OceanstorNasPlugin) NewPlugin

func (p *OceanstorNasPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*OceanstorNasPlugin) QueryVolume

func (p *OceanstorNasPlugin) QueryVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*OceanstorNasPlugin) SetNfsAutoAuthClient added in v4.10.0

func (p *OceanstorNasPlugin) SetNfsAutoAuthClient(enabled bool, cidrs []string)

SetNfsAutoAuthClient sets the nfsAutoAuthClient of Oceanstor nas plugin

func (*OceanstorNasPlugin) SetOnline

func (p *OceanstorNasPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceanstorNasPlugin) UpdateBackendCapabilities

func (p *OceanstorNasPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*OceanstorNasPlugin) UpdateMetroRemotePlugin

func (p *OceanstorNasPlugin) UpdateMetroRemotePlugin(ctx context.Context, remote StoragePlugin)

UpdateMetroRemotePlugin used to convert metroRemotePlugin to OceanstorSanPlugin

func (*OceanstorNasPlugin) UpdatePoolCapabilities

func (p *OceanstorNasPlugin) UpdatePoolCapabilities(ctx context.Context,
	poolNames []string) (map[string]interface{}, error)

UpdatePoolCapabilities used to update pool capabilities

func (*OceanstorNasPlugin) UpdateSupportMetroByRemoteLicense

func (p *OceanstorNasPlugin) UpdateSupportMetroByRemoteLicense(ctx context.Context,
	capabilities map[string]interface{})

UpdateSupportMetroByRemoteLicense updates the support metro capability by remote storage license

func (*OceanstorNasPlugin) Validate

func (p *OceanstorNasPlugin) Validate(ctx context.Context, param map[string]interface{}) error

Validate used to validate OceanstorNasPlugin parameters

type OceanstorPlugin

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

OceanstorPlugin provides oceanstor plugin base operations

func (*OceanstorPlugin) AttachVolume

func (p *OceanstorPlugin) AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)

func (*OceanstorPlugin) DetachVolume

func (p *OceanstorPlugin) DetachVolume(context.Context, string, map[string]interface{}) error

func (*OceanstorPlugin) GetDTreeParentName added in v4.7.0

func (p *OceanstorPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceanstorPlugin) GetOnline

func (p *OceanstorPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceanstorPlugin) GetSectorSize

func (p *OceanstorPlugin) GetSectorSize() int64

GetSectorSize get sector size of plugin

func (*OceanstorPlugin) Logout

func (p *OceanstorPlugin) Logout(ctx context.Context)

Logout is to logout the storage session

func (*OceanstorPlugin) ReLogin added in v4.8.0

func (p *OceanstorPlugin) ReLogin(ctx context.Context) error

ReLogin will refresh the user session of storage

func (*OceanstorPlugin) SetCli added in v4.7.0

SetCli sets the cli for Oceanstor Plugin

func (*OceanstorPlugin) SetOnline

func (p *OceanstorPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceanstorPlugin) SetProduct added in v4.8.0

func (p *OceanstorPlugin) SetProduct(product constants.OceanstorVersion)

SetProduct sets the product for Oceanstor Plugin

func (*OceanstorPlugin) SupportQoSParameters

func (p *OceanstorPlugin) SupportQoSParameters(ctx context.Context, qosConfig string) error

SupportQoSParameters checks requested QoS parameters support by Oceanstor plugin

func (*OceanstorPlugin) UpdateBackendCapabilities

func (p *OceanstorPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities used to update backend capabilities

func (*OceanstorPlugin) UpdateMetroRemotePlugin

func (p *OceanstorPlugin) UpdateMetroRemotePlugin(context.Context, StoragePlugin)

type OceanstorSanPlugin

type OceanstorSanPlugin struct {
	OceanstorPlugin
	// contains filtered or unexported fields
}

OceanstorSanPlugin implements storage StoragePlugin interface

func (*OceanstorSanPlugin) AttachVolume

func (p *OceanstorSanPlugin) AttachVolume(ctx context.Context, name string,
	parameters map[string]interface{}) (map[string]interface{}, error)

AttachVolume attach volume to node,return storage mapping info.

func (*OceanstorSanPlugin) CreateSnapshot

func (p *OceanstorSanPlugin) CreateSnapshot(ctx context.Context,
	lunName, snapshotName string) (map[string]interface{}, error)

CreateSnapshot used to create snapshot

func (*OceanstorSanPlugin) CreateVolume

func (p *OceanstorSanPlugin) CreateVolume(ctx context.Context,
	name string, parameters map[string]interface{}) (utils.Volume, error)

CreateVolume used to create volume

func (*OceanstorSanPlugin) DeleteDTreeVolume

func (p *OceanstorSanPlugin) DeleteDTreeVolume(_ context.Context, _ string, _ string) error

DeleteDTreeVolume used to delete DTree volume

func (*OceanstorSanPlugin) DeleteSnapshot

func (p *OceanstorSanPlugin) DeleteSnapshot(ctx context.Context,
	snapshotParentID, snapshotName string) error

DeleteSnapshot used to delete snapshot

func (*OceanstorSanPlugin) DeleteVolume

func (p *OceanstorSanPlugin) DeleteVolume(ctx context.Context, name string) error

DeleteVolume used to delete volume

func (*OceanstorSanPlugin) DetachVolume

func (p *OceanstorSanPlugin) DetachVolume(ctx context.Context, name string, parameters map[string]interface{}) error

DetachVolume used to detach volume from node

func (*OceanstorSanPlugin) ExpandDTreeVolume

func (p *OceanstorSanPlugin) ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)

ExpandDTreeVolume used to expand DTree volume

func (*OceanstorSanPlugin) ExpandVolume

func (p *OceanstorSanPlugin) ExpandVolume(ctx context.Context, name string, size int64) (bool, error)

ExpandVolume used to expand volume

func (*OceanstorSanPlugin) GetDTreeParentName added in v4.7.0

func (p *OceanstorSanPlugin) GetDTreeParentName() string

GetDTreeParentName gets the parent name of dtree plugin

func (*OceanstorSanPlugin) GetOnline

func (p *OceanstorSanPlugin) GetOnline() bool

GetOnline gets the online status of plugin

func (*OceanstorSanPlugin) Init

func (p *OceanstorSanPlugin) Init(ctx context.Context, config map[string]interface{},
	parameters map[string]interface{}, keepLogin bool) error

Init used to init the plugin

func (*OceanstorSanPlugin) ModifyVolume

func (p *OceanstorSanPlugin) ModifyVolume(ctx context.Context, volumeName string,
	modifyType pkgVolume.ModifyVolumeType, param map[string]string) error

ModifyVolume used to modify volume hyperMetro status

func (*OceanstorSanPlugin) NewPlugin

func (p *OceanstorSanPlugin) NewPlugin() StoragePlugin

NewPlugin used to create new plugin

func (*OceanstorSanPlugin) QueryVolume

func (p *OceanstorSanPlugin) QueryVolume(ctx context.Context, name string, parameters map[string]interface{}) (
	utils.Volume, error)

QueryVolume used to query volume

func (*OceanstorSanPlugin) SetOnline

func (p *OceanstorSanPlugin) SetOnline(online bool)

SetOnline sets the online status of plugin

func (*OceanstorSanPlugin) UpdateBackendCapabilities

func (p *OceanstorSanPlugin) UpdateBackendCapabilities(ctx context.Context) (map[string]interface{},
	map[string]interface{}, error)

UpdateBackendCapabilities to update the block storage capabilities

func (*OceanstorSanPlugin) UpdateMetroRemotePlugin

func (p *OceanstorSanPlugin) UpdateMetroRemotePlugin(ctx context.Context, remote StoragePlugin)

UpdateMetroRemotePlugin used to convert metroRemotePlugin to OceanstorSanPlugin

func (*OceanstorSanPlugin) UpdatePoolCapabilities

func (p *OceanstorSanPlugin) UpdatePoolCapabilities(ctx context.Context, poolNames []string) (map[string]interface{},
	error)

UpdatePoolCapabilities used to update pool capabilities

func (*OceanstorSanPlugin) Validate

func (p *OceanstorSanPlugin) Validate(ctx context.Context, param map[string]interface{}) error

Validate used to validate OceanstorSanPlugin parameters

type SmartXQoSQuery

type SmartXQoSQuery interface {
	// SupportQoSParameters checks requested QoS parameters support by StoragePlugin
	SupportQoSParameters(ctx context.Context, qos string) error
}

SmartXQoSQuery provides Quality of Service(QoS) Query operations

type StoragePlugin

type StoragePlugin interface {
	NewPlugin() StoragePlugin
	Init(context.Context, map[string]interface{}, map[string]interface{}, bool) error
	CreateVolume(context.Context, string, map[string]interface{}) (utils.Volume, error)
	QueryVolume(context.Context, string, map[string]interface{}) (utils.Volume, error)
	DeleteVolume(context.Context, string) error
	ExpandVolume(context.Context, string, int64) (bool, error)
	AttachVolume(context.Context, string, map[string]interface{}) (map[string]interface{}, error)
	DetachVolume(context.Context, string, map[string]interface{}) error
	ModifyVolume(context.Context, string, pkgVolume.ModifyVolumeType, map[string]string) error

	UpdateBackendCapabilities(context.Context) (map[string]interface{}, map[string]interface{}, error)
	UpdatePoolCapabilities(context.Context, []string) (map[string]interface{}, error)
	UpdateMetroRemotePlugin(context.Context, StoragePlugin)
	CreateSnapshot(context.Context, string, string) (map[string]interface{}, error)
	DeleteSnapshot(context.Context, string, string) error
	SmartXQoSQuery
	Logout(context.Context)
	ReLogin(ctx context.Context) error
	// Validate used to check parameters, include login verification
	Validate(context.Context, map[string]interface{}) error

	DeleteDTreeVolume(context.Context, string, string) error
	ExpandDTreeVolume(context.Context, string, string, int64) (bool, error)
	GetDTreeParentName() string

	// SetOnline sets the online status of plugin
	SetOnline(bool)
	// GetOnline gets the online status of plugin
	GetOnline() bool
	// GetSectorSize gets the sector size of plugin
	GetSectorSize() int64
}

StoragePlugin defines storage plugin interfaces

func GetPlugin

func GetPlugin(storageType string) StoragePlugin

GetPlugin used to get plugin by storage type

Jump to

Keyboard shortcuts

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