Documentation ¶
Index ¶
- Variables
- func DeleteVolume(ctx context.Context, vID string) error
- func InitializeClient(identity string) error
- func InitializeFactory(paths []string)
- func Provision(volumeID string) (string, error)
- func Unprovision(path string) error
- type Access
- type AccessType
- type BlockAccessType
- type FsType
- type MountAccessType
- type MountFlag
- type MountOption
- type Volume
- func (v *Volume) Bind(ctx context.Context, targetPath string, readOnly bool, ...) error
- func (v *Volume) ContainsTargetPaths(targetPath string) (AccessType, bool)
- func (in *Volume) DeepCopy() *Volume
- func (in *Volume) DeepCopyInto(out *Volume)
- func (in *Volume) DeepCopyObject() runtime.Object
- func (v *Volume) IsBlockAccessible() bool
- func (v *Volume) IsMountAccessible() bool
- func (v *Volume) Mount(ctx context.Context, targetPath string, fsType string, mountFlags []string, ...) error
- func (v *Volume) StageVolume(ctx context.Context, volumeID, stagePath string) error
- func (v *Volume) UnpublishVolume(ctx context.Context, targetPath string) error
- func (v *Volume) UnstageVolume(ctx context.Context, volumeID, stagePath string) error
- type VolumeAccessMode
- type VolumeList
- type VolumeSource
- type VolumeSourceType
- type VolumeStatus
Constants ¶
This section is empty.
Variables ¶
View Source
var ( GroupVersion = schema.GroupVersion{ Group: group, Version: version, } SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func InitializeClient ¶
func InitializeFactory ¶
func InitializeFactory(paths []string)
func Unprovision ¶
Types ¶
type AccessType ¶
type AccessType interface {
Matches(*csi.NodePublishVolumeRequest) bool
}
type BlockAccessType ¶
type BlockAccessType struct { Device string `json:"device"` Link string `json:"link,omitempty"` Access Access `json:"access,omitempty"` }
func (*BlockAccessType) DeepCopyInto ¶
func (in *BlockAccessType) DeepCopyInto(out *BlockAccessType)
func (BlockAccessType) Matches ¶
func (b BlockAccessType) Matches(req *csi.NodePublishVolumeRequest) bool
type MountAccessType ¶
type MountAccessType struct { FsType FsType `json:"fsType"` MountFlags []MountFlag `json:"mountFlags"` MountPoint string `json:"mountpoint"` Access Access `json:"access,omitempty"` }
func (*MountAccessType) DeepCopyInto ¶
func (in *MountAccessType) DeepCopyInto(out *MountAccessType)
func (MountAccessType) Matches ¶
func (m MountAccessType) Matches(req *csi.NodePublishVolumeRequest) bool
type Volume ¶
type Volume struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` VolumeID string `json:"volumeID"` Name string `json:"name,omitempty"` VolumeSource VolumeSource `json:"volumeSource,omitempty"` VolumeStatus VolumeStatus `json:"volumeStatus"` NodeID string `json:"nodeID,omitempty"` StagingPath string `json:"stagingPath"` VolumeAccessMode VolumeAccessMode `json:"volumeAccessMode"` BlockAccess []BlockAccessType `json:"blockAccess,omitempty"` MountAccess []MountAccessType `json:"mountAccess,omitempty"` PublishContext map[string]string `json:"publishContext,omitempty"` Parameters map[string]string `json:"parameters,omitempty"` TopologyConstraint *topology.TopologyConstraint `json:"topologyConstraint,omitempty"` AuditTrail map[time.Time]VolumeStatus `json:"auditTrail,omitempty"` }
func (*Volume) Bind ¶
func (v *Volume) Bind(ctx context.Context, targetPath string, readOnly bool, volContext map[string]string) error
Bind binds the volume to a symlink and presents it as a block device inside the container. All access modes are only enforced while provisioning. It is assumed that the container will honor these privileges in good faith
func (*Volume) ContainsTargetPaths ¶
func (v *Volume) ContainsTargetPaths(targetPath string) (AccessType, bool)
func (*Volume) DeepCopyInto ¶
func (*Volume) DeepCopyObject ¶
func (*Volume) IsBlockAccessible ¶
func (*Volume) IsMountAccessible ¶
func (*Volume) StageVolume ¶
func (*Volume) UnpublishVolume ¶
type VolumeAccessMode ¶
type VolumeAccessMode int
const ( VolumeAccessModeUnknown VolumeAccessMode = iota VolumeAccessModeSingleNodeWriter VolumeAccessModeSingleNodeReadOnly VolumeAccessModeMultiNodeReadOnly VolumeAccessModeMultiNodeSingleWriter VolumeAccessModeMultiNodeMultiWriter )
func (VolumeAccessMode) IgnoreMarshalJSON ¶
func (v VolumeAccessMode) IgnoreMarshalJSON() ([]byte, error)
func (VolumeAccessMode) IgnoreUnmarshalJSON ¶
func (v VolumeAccessMode) IgnoreUnmarshalJSON(value []byte) error
type VolumeList ¶
type VolumeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Volume `json:"items"` }
func (*VolumeList) DeepCopy ¶
func (in *VolumeList) DeepCopy() *VolumeList
func (*VolumeList) DeepCopyInto ¶
func (in *VolumeList) DeepCopyInto(out *VolumeList)
func (*VolumeList) DeepCopyObject ¶
func (in *VolumeList) DeepCopyObject() runtime.Object
type VolumeSource ¶
type VolumeSource struct { VolumeSourceType VolumeSourceType `json:"volumeSourceType"` VolumeSourcePath string `json:"volumeSourcePath"` }
func (*VolumeSource) DeepCopyInto ¶
func (in *VolumeSource) DeepCopyInto(out *VolumeSource)
type VolumeSourceType ¶
type VolumeSourceType string
const ( VolumeSourceTypeBlockDevice VolumeSourceType = "BlockDevice" VolumeSourceTypeDirectory VolumeSourceType = "Directory" )
type VolumeStatus ¶
type VolumeStatus string
const ( VolumeStatusCreated VolumeStatus = "created" VolumeStatusNodeReady VolumeStatus = "node-ready" VolumeStatusVolReady VolumeStatus = "vol-ready" VolumeStatusPublished VolumeStatus = "published" )
Click to show internal directories.
Click to hide internal directories.