volumeserver

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Apr 3, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MonitorsKey = "monitors"
	ImageKey    = "image"
	UserIDKey   = "userID"
	UserKeyKey  = "userKey"
	DriverName  = "ceph"
)
View Source
const (
	EncryptionSecretDataPassphraseKey = "encryptionKey"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Options

type Options struct {
	IDGen idgen.IDGen

	BurstFactor            int64
	BurstDurationInSeconds int64
}

type Server

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

func New

func New(imageStore store.Store[*api.Image],
	snapshotStore store.Store[*api.Snapshot],
	volumeClassRegistry VolumeClassRegistry,
	keyEncryption encryption.Encryptor,
	cephCommandClient ceph.Command,
	opts Options,
) (*Server, error)

func (*Server) CreateVolume

func (s *Server) CreateVolume(ctx context.Context, req *iriv1alpha1.CreateVolumeRequest) (res *iriv1alpha1.CreateVolumeResponse, retErr error)

func (*Server) DeleteVolume

func (s *Server) DeleteVolume(ctx context.Context, req *iri.DeleteVolumeRequest) (*iri.DeleteVolumeResponse, error)

func (*Server) ExpandVolume

func (s *Server) ExpandVolume(ctx context.Context, req *iri.ExpandVolumeRequest) (*iri.ExpandVolumeResponse, error)

func (*Server) ListVolumes

func (s *Server) ListVolumes(ctx context.Context, req *iri.ListVolumesRequest) (*iri.ListVolumesResponse, error)

func (*Server) Status

func (s *Server) Status(ctx context.Context, req *iri.StatusRequest) (*iri.StatusResponse, error)

type VolumeClassRegistry

type VolumeClassRegistry interface {
	Get(volumeClassName string) (*iri.VolumeClass, bool)
	List() []*iri.VolumeClass
}

Jump to

Keyboard shortcuts

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