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.