drivers

package
v1.31.1 Latest Latest
Warning

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

Go to latest
Published: Sep 11, 2024 License: Apache-2.0 Imports: 46 Imported by: 27

Documentation

Index

Constants

View Source
const (
	// GCEPDCSIDriverName is the name of GCE Persistent Disk CSI driver
	GCEPDCSIDriverName = "pd.csi.storage.gke.io"
	// GCEPDCSIZoneTopologyKey is the key of GCE Persistent Disk CSI zone topology
	GCEPDCSIZoneTopologyKey = "topology.gke.io/zone"
)

Variables

This section is empty.

Functions

func InitAwsDriver

func InitAwsDriver() storageframework.TestDriver

InitAwsDriver returns awsDriver that implements TestDriver interface

func InitAzureDiskDriver added in v1.18.0

func InitAzureDiskDriver() storageframework.TestDriver

InitAzureDiskDriver returns azureDiskDriver that implements TestDriver interface

func InitAzureFileDriver added in v1.24.0

func InitAzureFileDriver() storageframework.TestDriver

InitAzureFileDriver returns azureFileDriver that implements TestDriver interface

func InitCinderDriver

func InitCinderDriver() storageframework.TestDriver

InitCinderDriver returns cinderDriver that implements TestDriver interface

func InitEmptydirDriver

func InitEmptydirDriver() storageframework.TestDriver

InitEmptydirDriver returns emptydirDriver that implements TestDriver interface

func InitGcePDCSIDriver added in v1.13.0

func InitGcePDCSIDriver() storageframework.TestDriver

InitGcePDCSIDriver returns gcePDCSIDriver that implements TestDriver interface

func InitGcePdDriver

func InitGcePdDriver() storageframework.TestDriver

InitGcePdDriver returns gcePdDriver that implements TestDriver interface

func InitHostPathCSIDriver added in v1.13.0

func InitHostPathCSIDriver() storageframework.TestDriver

InitHostPathCSIDriver returns hostpathCSIDriver that implements TestDriver interface

func InitHostPathDriver

func InitHostPathDriver() storageframework.TestDriver

InitHostPathDriver returns hostPathDriver that implements TestDriver interface

func InitHostPathSymlinkDriver

func InitHostPathSymlinkDriver() storageframework.TestDriver

InitHostPathSymlinkDriver returns hostPathSymlinkDriver that implements TestDriver interface

func InitISCSIDriver

func InitISCSIDriver() storageframework.TestDriver

InitISCSIDriver returns iSCSIDriver that implements TestDriver interface

func InitLocalDriverWithVolumeType added in v1.14.0

func InitLocalDriverWithVolumeType(volumeType utils.LocalVolumeType) func() storageframework.TestDriver

InitLocalDriverWithVolumeType initializes the local driver based on the volume type.

func InitNFSDriver

func InitNFSDriver() storageframework.TestDriver

InitNFSDriver returns nfsDriver that implements TestDriver interface

func InitVSphereDriver

func InitVSphereDriver() storageframework.TestDriver

InitVSphereDriver returns vSphereDriver that implements TestDriver interface

func InitWindowsGcePdDriver added in v1.19.9

func InitWindowsGcePdDriver() storageframework.TestDriver

InitWindowsGcePdDriver returns gcePdDriver running on Windows cluster that implements TestDriver interface In current test structure, it first initialize the driver and then set up the new framework, so we cannot get the correct OS here and select which file system is supported. So here uses a separate Windows in-tree gce pd driver

func WaitForCSIDriverRegistrationOnAllNodes added in v1.20.0

func WaitForCSIDriverRegistrationOnAllNodes(ctx context.Context, driverName string, cs clientset.Interface) error

WaitForCSIDriverRegistrationOnAllNodes waits for the CSINode object to be updated with the given driver on all schedulable nodes.

func WaitForCSIDriverRegistrationOnNode added in v1.19.0

func WaitForCSIDriverRegistrationOnNode(ctx context.Context, nodeName string, driverName string, cs clientset.Interface) error

WaitForCSIDriverRegistrationOnNode waits for the CSINode object generated by the node-registrar on a certain node

Types

type CSIMockDriverOpts added in v1.14.0

type CSIMockDriverOpts struct {
	RegisterDriver                bool
	DisableAttach                 bool
	PodInfo                       *bool
	StorageCapacity               *bool
	AttachLimit                   int
	EnableTopology                bool
	EnableResizing                bool
	EnableNodeExpansion           bool
	EnableSnapshot                bool
	EnableVolumeMountGroup        bool
	TokenRequests                 []storagev1.TokenRequest
	RequiresRepublish             *bool
	FSGroupPolicy                 *storagev1.FSGroupPolicy
	EnableSELinuxMount            *bool
	EnableRecoverExpansionFailure bool
	EnableHonorPVReclaimPolicy    bool

	// Embedded defines whether the CSI mock driver runs
	// inside the cluster (false, the default) or just a proxy
	// runs inside the cluster and all gRPC calls are handled
	// inside the e2e.test binary.
	Embedded bool

	// Hooks that will be called if (and only if!) the embedded
	// mock driver is used. Beware that hooks are invoked
	// asynchronously in different goroutines.
	Hooks Hooks
}

CSIMockDriverOpts defines options used for csi driver

type Hooks added in v1.21.0

type Hooks struct {
	// Pre is called before invoking the mock driver's implementation of a method.
	// If either a non-nil reply or error are returned, then those are returned to the caller.
	Pre func(ctx context.Context, method string, request interface{}) (reply interface{}, err error)

	// Post is called after invoking the mock driver's implementation of a method.
	// What it returns is used as actual result.
	Post func(ctx context.Context, method string, request, reply interface{}, err error) (finalReply interface{}, finalErr error)
}

Hooks to be run to execute while handling gRPC calls.

At the moment, only generic pre- and post-function call hooks are implemented. Those hooks can cast the request and response values if needed. More hooks inside specific functions could be added if needed.

type MockCSICall added in v1.21.0

type MockCSICall struct {
	Method  string
	Request struct {
		VolumeContext map[string]string `json:"volume_context"`
		Secrets       map[string]string `json:"secrets"`
	}
	FullError struct {
		Code    codes.Code `json:"code"`
		Message string     `json:"message"`
	}
	Error string
	// contains filtered or unexported fields
}

Dummy structure that parses just volume_attributes and error code out of logged CSI call

type MockCSICalls added in v1.21.0

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

MockCSICalls is a Thread-safe storage for MockCSICall instances.

func (*MockCSICalls) Add added in v1.21.0

func (c *MockCSICalls) Add(call MockCSICall)

Add appends one new call at the end.

func (*MockCSICalls) Get added in v1.21.0

func (c *MockCSICalls) Get() []MockCSICall

Get returns all currently recorded calls.

func (*MockCSICalls) LogGRPC added in v1.21.0

func (c *MockCSICalls) LogGRPC(method string, request, reply interface{}, err error)

LogGRPC takes individual parameters from the mock CSI driver and adds them.

type MockCSITestDriver added in v1.21.0

type MockCSITestDriver interface {
	storageframework.DynamicPVTestDriver

	// GetCalls returns all currently observed gRPC calls. Only valid
	// after PrepareTest.
	GetCalls(ctx context.Context) ([]MockCSICall, error)
}

MockCSITestDriver provides additional functions specific to the CSI mock driver.

func InitMockCSIDriver added in v1.14.0

func InitMockCSIDriver(driverOpts CSIMockDriverOpts) MockCSITestDriver

InitMockCSIDriver returns a mockCSIDriver that implements TestDriver interface

Directories

Path Synopsis
csi-test

Jump to

Keyboard shortcuts

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