driver

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Dec 2, 2025 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// MinVolumeSize is the minimum volume size (1 GB)
	MinVolumeSize = 1 * 1024 * 1024 * 1024
	// MaxVolumeSize is the maximum volume size (10 TB)
	MaxVolumeSize = 10 * 1024 * 1024 * 1024 * 1024
	// DefaultVolumeSize is the default volume size (10 GB)
	DefaultVolumeSize = 10 * 1024 * 1024 * 1024

	// Storage types
	StorageTypeDSSD     = "dssd"
	StorageTypeMagnetic = "zadara"
)
View Source
const (
	// DriverName is the name of the CSI driver
	DriverName = "csi.cloudsigma.com"

	// DriverVersion is the version of the CSI driver
	DriverVersion = "0.1.0"

	// TopologyKey is the topology key for CloudSigma region
	TopologyKey = "topology.cloudsigma.com/region"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Name     string
	Version  string
	NodeID   string
	Region   string
	Endpoint string
	Mode     Mode

	CloudSigmaUsername string
	CloudSigmaPassword string
}

Config holds the driver configuration

type Driver

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

Driver represents the CloudSigma CSI driver

func NewDriver

func NewDriver(cfg *Config) (*Driver, error)

NewDriver creates a new CloudSigma CSI driver

func (*Driver) ControllerExpandVolume

ControllerExpandVolume expands a volume

func (*Driver) ControllerGetCapabilities

ControllerGetCapabilities returns the capabilities of the controller

func (*Driver) ControllerGetVolume

ControllerGetVolume is not implemented

func (*Driver) ControllerModifyVolume

ControllerModifyVolume is not implemented

func (*Driver) ControllerPublishVolume

ControllerPublishVolume attaches a volume to a node

func (*Driver) ControllerUnpublishVolume

ControllerUnpublishVolume detaches a volume from a node

func (*Driver) CreateSnapshot

CreateSnapshot is not implemented yet

func (*Driver) CreateVolume

func (d *Driver) CreateVolume(ctx context.Context, req *csi.CreateVolumeRequest) (*csi.CreateVolumeResponse, error)

CreateVolume creates a new CloudSigma drive

func (*Driver) DeleteSnapshot

DeleteSnapshot is not implemented yet

func (*Driver) DeleteVolume

func (d *Driver) DeleteVolume(ctx context.Context, req *csi.DeleteVolumeRequest) (*csi.DeleteVolumeResponse, error)

DeleteVolume deletes a CloudSigma drive

func (*Driver) GetCapacity

func (d *Driver) GetCapacity(ctx context.Context, req *csi.GetCapacityRequest) (*csi.GetCapacityResponse, error)

GetCapacity is not implemented

func (*Driver) GetPluginCapabilities

GetPluginCapabilities returns the capabilities of the plugin

func (*Driver) GetPluginInfo

func (d *Driver) GetPluginInfo(ctx context.Context, req *csi.GetPluginInfoRequest) (*csi.GetPluginInfoResponse, error)

GetPluginInfo returns metadata about the plugin

func (*Driver) ListSnapshots

func (d *Driver) ListSnapshots(ctx context.Context, req *csi.ListSnapshotsRequest) (*csi.ListSnapshotsResponse, error)

ListSnapshots is not implemented

func (*Driver) ListVolumes

func (d *Driver) ListVolumes(ctx context.Context, req *csi.ListVolumesRequest) (*csi.ListVolumesResponse, error)

ListVolumes is not implemented

func (*Driver) NodeExpandVolume

NodeExpandVolume expands the filesystem on the node

func (*Driver) NodeGetCapabilities

NodeGetCapabilities returns the capabilities of the node server

func (*Driver) NodeGetInfo

func (d *Driver) NodeGetInfo(ctx context.Context, req *csi.NodeGetInfoRequest) (*csi.NodeGetInfoResponse, error)

NodeGetInfo returns information about the node

func (*Driver) NodeGetVolumeStats

NodeGetVolumeStats returns volume statistics

func (*Driver) NodePublishVolume

NodePublishVolume bind mounts the staged volume to the target path

func (*Driver) NodeStageVolume

NodeStageVolume mounts the volume to a staging path

func (*Driver) NodeUnpublishVolume

NodeUnpublishVolume unmounts the volume from the target path

func (*Driver) NodeUnstageVolume

NodeUnstageVolume unmounts the volume from the staging path

func (*Driver) Probe

func (d *Driver) Probe(ctx context.Context, req *csi.ProbeRequest) (*csi.ProbeResponse, error)

Probe checks if the plugin is healthy and ready

func (*Driver) Run

func (d *Driver) Run() error

Run starts the CSI driver gRPC server

func (*Driver) Stop

func (d *Driver) Stop()

Stop gracefully stops the driver

func (*Driver) ValidateVolumeCapabilities

ValidateVolumeCapabilities validates the requested capabilities

type Mode

type Mode string

Mode represents the mode the driver is running in

const (
	// ControllerMode indicates the driver is running as a controller
	ControllerMode Mode = "controller"
	// NodeMode indicates the driver is running as a node plugin
	NodeMode Mode = "node"
	// AllMode indicates the driver is running in both modes
	AllMode Mode = "all"
)

Jump to

Keyboard shortcuts

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