Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Driver ¶
type Driver interface {
// Init initializes the volume driver.
Init(interface{}) error
// String returns the string name of this driver.
String() string
// InspectVolume returns information about a volume.
InspectVolume(volumeID string) (*Info, error)
// GetNodes Get the list of nodes where the driver is available
GetNodes() ([]*NodeInfo, error)
// GetPodVolumes Get all the volumes used by a pod
GetPodVolumes(*v1.Pod) ([]*Info, error)
// GetSnapshotPlugin Get the snapshot plugin to be used for the driver
GetSnapshotPlugin() snapshotVolume.Plugin
}
Driver defines an external volume driver interface. Any driver that wants to be used with stork needs to implement these interfaces.
type ErrPVCPending ¶
type ErrPVCPending struct {
// Name of the PVC
Name string
}
ErrPVCPending PVC hasn't been bound yet
func (*ErrPVCPending) Error ¶
func (e *ErrPVCPending) Error() string
type Info ¶
type Info struct {
// VolumeID is a unique identifier for the volume
VolumeID string
// VolumeName is the name for the volume
VolumeName string
// DataNodes is a list of nodes where the data for the volume resides
DataNodes []string
// Size is the size of the volume in GB
Size uint64
// ParentID points to the ID of the parent volume for snapshots
ParentID string
}
Info Information about a volume
type NodeInfo ¶
type NodeInfo struct {
// ID is a unique identifier for the node
ID string
// Hostname of the node
Hostname string
// IPs List of IPs associated with the node
IPs []string
// Status of the node
Status NodeStatus
}
NodeInfo Information about a node
type NodeStatus ¶
type NodeStatus string
NodeStatus Status of driver on a node
const ( // NodeOnline Node is online NodeOnline NodeStatus = "Online" // NodeOffline Node is Offline NodeOffline NodeStatus = "Offline" // NodeDegraded Node is in degraded state NodeDegraded NodeStatus = "Degraded" )
Click to show internal directories.
Click to hide internal directories.