kubernetes: k8s.io/kubernetes/pkg/volume/flexvolume Index | Files

package flexvolume

import "k8s.io/kubernetes/pkg/volume/flexvolume"


Package Files

attacher-defaults.go attacher.go detacher-defaults.go detacher.go driver-call.go expander-defaults.go expander.go fake_watcher.go mounter-defaults.go mounter.go plugin-defaults.go plugin.go probe.go unmounter-defaults.go unmounter.go util.go volume.go


const (
    // StatusSuccess represents the successful completion of command.
    StatusSuccess = "Success"
    // StatusNotSupported represents that the command is not supported.
    StatusNotSupported = "Not supported"

func GetDynamicPluginProber Uses

func GetDynamicPluginProber(pluginDir string, runner exec.Interface) volume.DynamicPluginProber

GetDynamicPluginProber creates dynamic plugin prober

type DriverCall Uses

type DriverCall struct {
    Command string
    Timeout time.Duration
    // contains filtered or unexported fields

DriverCall implements the basic contract between FlexVolume and its driver. The caller is responsible for providing the required args.

func (*DriverCall) Append Uses

func (dc *DriverCall) Append(arg string)

Append appends arg into driver call argument list

func (*DriverCall) AppendSpec Uses

func (dc *DriverCall) AppendSpec(spec *volume.Spec, host volume.VolumeHost, extraOptions map[string]string) error

AppendSpec appends volume spec to driver call argument list

func (*DriverCall) Run Uses

func (dc *DriverCall) Run() (*DriverStatus, error)

Run executes the driver call

type DriverCapabilities Uses

type DriverCapabilities struct {
    Attach           bool `json:"attach"`
    SELinuxRelabel   bool `json:"selinuxRelabel"`
    SupportsMetrics  bool `json:"supportsMetrics"`
    FSGroup          bool `json:"fsGroup"`
    RequiresFSResize bool `json:"requiresFSResize"`

DriverCapabilities represents what driver can do

type DriverStatus Uses

type DriverStatus struct {
    // Status of the callout. One of "Success", "Failure" or "Not supported".
    Status string `json:"status"`
    // Reason for success/failure.
    Message string `json:"message,omitempty"`
    // Path to the device attached. This field is valid only for attach calls.
    // ie: /dev/sdx
    DevicePath string `json:"device,omitempty"`
    // Cluster wide unique name of the volume.
    VolumeName string `json:"volumeName,omitempty"`
    // Represents volume is attached on the node
    Attached bool `json:"attached,omitempty"`
    // Returns capabilities of the driver.
    // By default we assume all the capabilities are supported.
    // If the plugin does not support a capability, it can return false for that capability.
    Capabilities *DriverCapabilities `json:",omitempty"`
    // Returns the actual size of the volume after resizing is done, the size is in bytes.
    ActualVolumeSize int64 `json:"volumeNewSize,omitempty"`

DriverStatus represents the return value of the driver callout.

type OptionsForDriver Uses

type OptionsForDriver map[string]string

OptionsForDriver represents the spec given to the driver.

func NewOptionsForDriver Uses

func NewOptionsForDriver(spec *volume.Spec, host volume.VolumeHost, extraOptions map[string]string) (OptionsForDriver, error)

NewOptionsForDriver create driver options given volume spec

type PluginFactory Uses

type PluginFactory interface {
    NewFlexVolumePlugin(pluginDir, driverName string, runner exec.Interface) (volume.VolumePlugin, error)

PluginFactory create flex volume plugin

Package flexvolume imports 23 packages (graph) and is imported by 35 packages. Updated 2020-11-24. Refresh now. Tools for package owners.