linodebs

package
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2023 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

Types

type LinodeControllerServer

type LinodeControllerServer struct {
	Driver          *LinodeDriver
	CloudProvider   linodeclient.LinodeClient
	MetadataService metadataservice.MetadataService
}

func NewControllerServer

func NewControllerServer(linodeDriver *LinodeDriver, cloudProvider linodeclient.LinodeClient, meta metadata.MetadataService) *LinodeControllerServer

func (*LinodeControllerServer) ControllerExpandVolume added in v0.1.7

func (*LinodeControllerServer) ControllerGetCapabilities

ControllerGetCapabilities returns the supported capabilities of controller service provided by this Plugin

func (*LinodeControllerServer) ControllerGetVolume added in v0.2.0

ControllerGetVolume allows probing for health status

func (*LinodeControllerServer) ControllerPublishVolume

ControllerPublishVolume attaches the given volume to the node

func (*LinodeControllerServer) ControllerUnpublishVolume

ControllerUnpublishVolume deattaches the given volume from the node

func (*LinodeControllerServer) CreateSnapshot

func (*LinodeControllerServer) CreateVolume

CreateVolume will be called by the CO to provision a new volume on behalf of a user (to be consumed as either a block device or a mounted filesystem). This operation is idempotent.

func (*LinodeControllerServer) DeleteSnapshot

func (*LinodeControllerServer) DeleteVolume

DeleteVolume deletes the given volume. The function is idempotent.

func (*LinodeControllerServer) GetCapacity

func (*LinodeControllerServer) ListSnapshots

func (*LinodeControllerServer) ListVolumes

ListVolumes shall return information about all the volumes the provider knows about

func (*LinodeControllerServer) ValidateVolumeCapabilities

ValidateVolumeCapabilities checks whether the volume capabilities requested are supported.

type LinodeDriver

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

func GetLinodeDriver

func GetLinodeDriver() *LinodeDriver

func (*LinodeDriver) AddControllerServiceCapabilities

func (linodeDriver *LinodeDriver) AddControllerServiceCapabilities(cl []csi.ControllerServiceCapability_RPC_Type) error

func (*LinodeDriver) AddNodeServiceCapabilities

func (linodeDriver *LinodeDriver) AddNodeServiceCapabilities(nl []csi.NodeServiceCapability_RPC_Type) error

func (*LinodeDriver) AddVolumeCapabilityAccessModes

func (linodeDriver *LinodeDriver) AddVolumeCapabilityAccessModes(vc []csi.VolumeCapability_AccessMode_Mode) error

func (*LinodeDriver) Run

func (linodeDriver *LinodeDriver) Run(endpoint string)

func (*LinodeDriver) SetupLinodeDriver

func (linodeDriver *LinodeDriver) SetupLinodeDriver(linodeClient linodeclient.LinodeClient, mounter *mount.SafeFormatAndMount,
	deviceUtils mountmanager.DeviceUtils, metadata metadata.MetadataService, name, vendorVersion, bsPrefix string) error

func (*LinodeDriver) ValidateControllerServiceRequest

func (linodeDriver *LinodeDriver) ValidateControllerServiceRequest(c csi.ControllerServiceCapability_RPC_Type) error

type LinodeIdentityServer

type LinodeIdentityServer struct {
	Driver *LinodeDriver
}

func NewIdentityServer

func NewIdentityServer(linodeDriver *LinodeDriver) *LinodeIdentityServer

func (*LinodeIdentityServer) GetPluginCapabilities

func (linodeIdentity *LinodeIdentityServer) GetPluginCapabilities(ctx context.Context, req *csi.GetPluginCapabilitiesRequest) (*csi.GetPluginCapabilitiesResponse, error)

func (*LinodeIdentityServer) GetPluginInfo

func (linodeIdentity *LinodeIdentityServer) GetPluginInfo(ctx context.Context, req *csi.GetPluginInfoRequest) (*csi.GetPluginInfoResponse, error)

GetPluginInfo(context.Context, *GetPluginInfoRequest) (*GetPluginInfoResponse, error)

func (*LinodeIdentityServer) Probe

func (linodeIdentity *LinodeIdentityServer) Probe(ctx context.Context, req *csi.ProbeRequest) (*csi.ProbeResponse, error)

type LinodeNodeServer

type LinodeNodeServer struct {
	Driver          *LinodeDriver
	Mounter         *mount.SafeFormatAndMount
	DeviceUtils     mountmanager.DeviceUtils
	CloudProvider   linodeclient.LinodeClient
	MetadataService metadata.MetadataService
	// contains filtered or unexported fields
}

func NewNodeServer

func NewNodeServer(linodeDriver *LinodeDriver, mounter *mount.SafeFormatAndMount, deviceUtils mountmanager.DeviceUtils, cloudProvider linodeclient.LinodeClient, meta metadata.MetadataService) *LinodeNodeServer

func (*LinodeNodeServer) NodeExpandVolume added in v0.1.7

func (*LinodeNodeServer) NodeGetCapabilities

func (*LinodeNodeServer) NodeGetInfo

func (*LinodeNodeServer) NodeGetVolumeStats

func (*LinodeNodeServer) NodePublishVolume

func (*LinodeNodeServer) NodeStageVolume

func (*LinodeNodeServer) NodeUnpublishVolume

func (*LinodeNodeServer) NodeUnstageVolume

type NonBlockingGRPCServer

type NonBlockingGRPCServer interface {
	// Start services at the endpoint
	Start(endpoint string, ids csi.IdentityServer, cs csi.ControllerServer, ns csi.NodeServer)
	// Waits for the service to stop
	Wait()
	// Stops the service gracefully
	Stop()
	// Stops the service forcefully
	ForceStop()
}

Defines Non blocking GRPC server interfaces

func NewNonBlockingGRPCServer

func NewNonBlockingGRPCServer() NonBlockingGRPCServer

Jump to

Keyboard shortcuts

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