controller

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2018 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetFinalizerName added in v0.4.0

func GetFinalizerName(driver string) string

getFinalizerName returns Attacher name suitable to be used as finalizer

func GetNodeIDFromNode added in v0.4.0

func GetNodeIDFromNode(driver string, node *v1.Node) (string, error)

func GetNodeIDFromNodeInfo added in v0.4.0

func GetNodeIDFromNodeInfo(driver string, nodeInfo *csiapi.CSINodeInfo) (string, bool)

func GetVolumeAttributes added in v0.4.0

func GetVolumeAttributes(pv *v1.PersistentVolume) (map[string]string, error)

func GetVolumeCapabilities added in v0.4.0

func GetVolumeCapabilities(pv *v1.PersistentVolume) (*csi.VolumeCapability, error)

func GetVolumeHandle added in v0.4.0

func GetVolumeHandle(pv *v1.PersistentVolume) (string, bool, error)

func SanitizeDriverName added in v0.4.0

func SanitizeDriverName(driver string) string

Types

type CSIAttachController

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

func NewCSIAttachController

func NewCSIAttachController(client kubernetes.Interface, attacherName string, handler Handler, volumeAttachmentInformer storageinformers.VolumeAttachmentInformer, pvInformer coreinformers.PersistentVolumeInformer) *CSIAttachController

NewCSIAttachController returns a new *CSIAttachController

func (*CSIAttachController) Run

func (ctrl *CSIAttachController) Run(workers int, stopCh <-chan struct{})

type Handler

type Handler interface {
	Init(vaQueue workqueue.RateLimitingInterface, pvQueue workqueue.RateLimitingInterface)

	// SyncNewOrUpdatedVolumeAttachment processes one Add/Updated event from
	// VolumeAttachment informers. It runs in a workqueue, guaranting that only
	// one SyncNewOrUpdatedVolumeAttachment runs for given VA.
	// SyncNewOrUpdatedVolumeAttachment is responsible for marking the
	// VolumeAttachment either as forgotten (resets exponential backoff) or
	// re-queue it into the vaQueue to process it after exponential
	// backoff.
	SyncNewOrUpdatedVolumeAttachment(va *storage.VolumeAttachment)

	SyncNewOrUpdatedPersistentVolume(pv *v1.PersistentVolume)
}

Handler is responsible for handling VolumeAttachment events from informer.

func NewCSIHandler

func NewCSIHandler(
	client kubernetes.Interface,
	attacherName string,
	csiConnection connection.CSIConnection,
	pvLister corelisters.PersistentVolumeLister,
	nodeLister corelisters.NodeLister,
	nodeInfoLister csilisters.CSINodeInfoLister,
	vaLister storagelisters.VolumeAttachmentLister,
	timeout *time.Duration) Handler

NewCSIHandler creates a new CSIHandler.

func NewTrivialHandler

func NewTrivialHandler(client kubernetes.Interface) Handler

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳