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 backed by the driver GetPodVolumes(*v1.PodSpec, string) ([]*Info, error) // GetVolumeClaimTemplates Get all the volume templates from the list backed by // the driver GetVolumeClaimTemplates([]v1.PersistentVolumeClaim) ([]v1.PersistentVolumeClaim, error) // GetSnapshotPlugin Get the snapshot plugin to be used for the driver GetSnapshotPlugin() snapshotVolume.Plugin // Stop the driver Stop() error }
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 // Labels are user applied labels on the volume Labels map[string]string // VolumeSourceRef is a optional reference to the source of the volume VolumeSourceRef interface{} }
Info Information about a volume
type NodeInfo ¶
type NodeInfo struct { // ID is a unique identifier for the node ID string // Hostname of the node. Should be in lower case because Kubernetes // converts it to lower case Hostname string // IPs List of IPs associated with the node IPs []string // Rack Specifies the rack within the datacenter where the node is located Rack string // Zone Specifies the zone where the rack is located Zone string // Region Specifies the region where the datacenter is located Region 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.