csi

package
v0.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 2, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ControllerServiceCapability_RPC_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "CREATE_DELETE_VOLUME",
	2: "PUBLISH_UNPUBLISH_VOLUME",
	3: "LIST_VOLUMES",
	4: "GET_CAPACITY",
	5: "CREATE_DELETE_SNAPSHOT",
	6: "LIST_SNAPSHOTS",
	7: "CLONE_VOLUME",
	8: "PUBLISH_READONLY",
}
View Source
var ControllerServiceCapability_RPC_Type_value = map[string]int32{
	"UNKNOWN":                  0,
	"CREATE_DELETE_VOLUME":     1,
	"PUBLISH_UNPUBLISH_VOLUME": 2,
	"LIST_VOLUMES":             3,
	"GET_CAPACITY":             4,
	"CREATE_DELETE_SNAPSHOT":   5,
	"LIST_SNAPSHOTS":           6,
	"CLONE_VOLUME":             7,
	"PUBLISH_READONLY":         8,
}
View Source
var E_CsiSecret = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.FieldOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1059,
	Name:          "csi.v1.csi_secret",
	Tag:           "varint,1059,opt,name=csi_secret,json=csiSecret",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var NodeServiceCapability_RPC_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "STAGE_UNSTAGE_VOLUME",
	2: "GET_VOLUME_STATS",
}
View Source
var NodeServiceCapability_RPC_Type_value = map[string]int32{
	"UNKNOWN":              0,
	"STAGE_UNSTAGE_VOLUME": 1,
	"GET_VOLUME_STATS":     2,
}
View Source
var PluginCapability_Service_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "CONTROLLER_SERVICE",
	2: "VOLUME_ACCESSIBILITY_CONSTRAINTS",
}
View Source
var PluginCapability_Service_Type_value = map[string]int32{
	"UNKNOWN":                          0,
	"CONTROLLER_SERVICE":               1,
	"VOLUME_ACCESSIBILITY_CONSTRAINTS": 2,
}
View Source
var VolumeCapability_AccessMode_Mode_name = map[int32]string{
	0: "UNKNOWN",
	1: "SINGLE_NODE_WRITER",
	2: "SINGLE_NODE_READER_ONLY",
	3: "MULTI_NODE_READER_ONLY",
	4: "MULTI_NODE_SINGLE_WRITER",
	5: "MULTI_NODE_MULTI_WRITER",
}
View Source
var VolumeCapability_AccessMode_Mode_value = map[string]int32{
	"UNKNOWN":                  0,
	"SINGLE_NODE_WRITER":       1,
	"SINGLE_NODE_READER_ONLY":  2,
	"MULTI_NODE_READER_ONLY":   3,
	"MULTI_NODE_SINGLE_WRITER": 4,
	"MULTI_NODE_MULTI_WRITER":  5,
}
View Source
var VolumeUsage_Unit_name = map[int32]string{
	0: "UNKNOWN",
	1: "BYTES",
	2: "INODES",
}
View Source
var VolumeUsage_Unit_value = map[string]int32{
	"UNKNOWN": 0,
	"BYTES":   1,
	"INODES":  2,
}

Functions

func RegisterControllerServer

func RegisterControllerServer(s *grpc.Server, srv ControllerServer)

func RegisterIdentityServer

func RegisterIdentityServer(s *grpc.Server, srv IdentityServer)

func RegisterNodeServer

func RegisterNodeServer(s *grpc.Server, srv NodeServer)

Types

type CapacityRange

type CapacityRange struct {
	// Volume MUST be at least this big. This field is OPTIONAL.
	// A value of 0 is equal to an unspecified field value.
	// The value of this field MUST NOT be negative.
	RequiredBytes int64 `protobuf:"varint,1,opt,name=required_bytes,json=requiredBytes,proto3" json:"required_bytes,omitempty"`
	// Volume MUST not be bigger than this. This field is OPTIONAL.
	// A value of 0 is equal to an unspecified field value.
	// The value of this field MUST NOT be negative.
	LimitBytes           int64    `protobuf:"varint,2,opt,name=limit_bytes,json=limitBytes,proto3" json:"limit_bytes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

The capacity of the storage space in bytes. To specify an exact size, `required_bytes` and `limit_bytes` SHALL be set to the same value. At least one of the these fields MUST be specified.

func (*CapacityRange) Descriptor

func (*CapacityRange) Descriptor() ([]byte, []int)

func (*CapacityRange) GetLimitBytes

func (m *CapacityRange) GetLimitBytes() int64

func (*CapacityRange) GetRequiredBytes

func (m *CapacityRange) GetRequiredBytes() int64

func (*CapacityRange) ProtoMessage

func (*CapacityRange) ProtoMessage()

func (*CapacityRange) Reset

func (m *CapacityRange) Reset()

func (*CapacityRange) String

func (m *CapacityRange) String() string

func (*CapacityRange) XXX_DiscardUnknown

func (m *CapacityRange) XXX_DiscardUnknown()

func (*CapacityRange) XXX_Marshal

func (m *CapacityRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CapacityRange) XXX_Merge

func (dst *CapacityRange) XXX_Merge(src proto.Message)

func (*CapacityRange) XXX_Size

func (m *CapacityRange) XXX_Size() int

func (*CapacityRange) XXX_Unmarshal

func (m *CapacityRange) XXX_Unmarshal(b []byte) error

type ControllerClient

ControllerClient is the client API for Controller service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewControllerClient

func NewControllerClient(cc *grpc.ClientConn) ControllerClient

type ControllerGetCapabilitiesRequest

type ControllerGetCapabilitiesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ControllerGetCapabilitiesRequest) Descriptor

func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int)

func (*ControllerGetCapabilitiesRequest) ProtoMessage

func (*ControllerGetCapabilitiesRequest) ProtoMessage()

func (*ControllerGetCapabilitiesRequest) Reset

func (*ControllerGetCapabilitiesRequest) String

func (*ControllerGetCapabilitiesRequest) XXX_DiscardUnknown

func (m *ControllerGetCapabilitiesRequest) XXX_DiscardUnknown()

func (*ControllerGetCapabilitiesRequest) XXX_Marshal

func (m *ControllerGetCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerGetCapabilitiesRequest) XXX_Merge

func (dst *ControllerGetCapabilitiesRequest) XXX_Merge(src proto.Message)

func (*ControllerGetCapabilitiesRequest) XXX_Size

func (m *ControllerGetCapabilitiesRequest) XXX_Size() int

func (*ControllerGetCapabilitiesRequest) XXX_Unmarshal

func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error

type ControllerGetCapabilitiesResponse

type ControllerGetCapabilitiesResponse struct {
	// All the capabilities that the controller service supports. This
	// field is OPTIONAL.
	Capabilities         []*ControllerServiceCapability `protobuf:"bytes,1,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (*ControllerGetCapabilitiesResponse) Descriptor

func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int)

func (*ControllerGetCapabilitiesResponse) GetCapabilities

func (*ControllerGetCapabilitiesResponse) ProtoMessage

func (*ControllerGetCapabilitiesResponse) ProtoMessage()

func (*ControllerGetCapabilitiesResponse) Reset

func (*ControllerGetCapabilitiesResponse) String

func (*ControllerGetCapabilitiesResponse) XXX_DiscardUnknown

func (m *ControllerGetCapabilitiesResponse) XXX_DiscardUnknown()

func (*ControllerGetCapabilitiesResponse) XXX_Marshal

func (m *ControllerGetCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerGetCapabilitiesResponse) XXX_Merge

func (dst *ControllerGetCapabilitiesResponse) XXX_Merge(src proto.Message)

func (*ControllerGetCapabilitiesResponse) XXX_Size

func (m *ControllerGetCapabilitiesResponse) XXX_Size() int

func (*ControllerGetCapabilitiesResponse) XXX_Unmarshal

func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error

type ControllerPublishVolumeRequest

type ControllerPublishVolumeRequest struct {
	// The ID of the volume to be used on a node.
	// This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// The ID of the node. This field is REQUIRED. The CO SHALL set this
	// field to match the node ID returned by `NodeGetInfo`.
	NodeId string `protobuf:"bytes,2,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	// Volume capability describing how the CO intends to use this volume.
	// SP MUST ensure the CO can use the published volume as described.
	// Otherwise SP MUST return the appropriate gRPC error code.
	// This is a REQUIRED field.
	VolumeCapability *VolumeCapability `protobuf:"bytes,3,opt,name=volume_capability,json=volumeCapability,proto3" json:"volume_capability,omitempty"`
	// Indicates SP MUST publish the volume in readonly mode.
	// CO MUST set this field to false if SP does not have the
	// PUBLISH_READONLY controller capability.
	// This is a REQUIRED field.
	Readonly bool `protobuf:"varint,4,opt,name=readonly,proto3" json:"readonly,omitempty"`
	// Secrets required by plugin to complete controller publish volume
	// request. This field is OPTIONAL. Refer to the
	// `Secrets Requirements` section on how to use this field.
	Secrets map[string]string `` /* 155-byte string literal not displayed */
	// Volume context as returned by CO in CreateVolumeRequest. This field
	// is OPTIONAL and MUST match the volume_context of the volume
	// identified by `volume_id`.
	VolumeContext        map[string]string `` /* 188-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ControllerPublishVolumeRequest) Descriptor

func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int)

func (*ControllerPublishVolumeRequest) GetNodeId

func (m *ControllerPublishVolumeRequest) GetNodeId() string

func (*ControllerPublishVolumeRequest) GetReadonly

func (m *ControllerPublishVolumeRequest) GetReadonly() bool

func (*ControllerPublishVolumeRequest) GetSecrets

func (m *ControllerPublishVolumeRequest) GetSecrets() map[string]string

func (*ControllerPublishVolumeRequest) GetVolumeCapability

func (m *ControllerPublishVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*ControllerPublishVolumeRequest) GetVolumeContext

func (m *ControllerPublishVolumeRequest) GetVolumeContext() map[string]string

func (*ControllerPublishVolumeRequest) GetVolumeId

func (m *ControllerPublishVolumeRequest) GetVolumeId() string

func (*ControllerPublishVolumeRequest) ProtoMessage

func (*ControllerPublishVolumeRequest) ProtoMessage()

func (*ControllerPublishVolumeRequest) Reset

func (m *ControllerPublishVolumeRequest) Reset()

func (*ControllerPublishVolumeRequest) String

func (*ControllerPublishVolumeRequest) XXX_DiscardUnknown

func (m *ControllerPublishVolumeRequest) XXX_DiscardUnknown()

func (*ControllerPublishVolumeRequest) XXX_Marshal

func (m *ControllerPublishVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerPublishVolumeRequest) XXX_Merge

func (dst *ControllerPublishVolumeRequest) XXX_Merge(src proto.Message)

func (*ControllerPublishVolumeRequest) XXX_Size

func (m *ControllerPublishVolumeRequest) XXX_Size() int

func (*ControllerPublishVolumeRequest) XXX_Unmarshal

func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error

type ControllerPublishVolumeResponse

type ControllerPublishVolumeResponse struct {
	// Opaque static publish properties of the volume. SP MAY use this
	// field to ensure subsequent `NodeStageVolume` or `NodePublishVolume`
	// calls calls have contextual information.
	// The contents of this field SHALL be opaque to a CO.
	// The contents of this field SHALL NOT be mutable.
	// The contents of this field SHALL be safe for the CO to cache.
	// The contents of this field SHOULD NOT contain sensitive
	// information.
	// The contents of this field SHOULD NOT be used for uniquely
	// identifying a volume. The `volume_id` alone SHOULD be sufficient to
	// identify the volume.
	// This field is OPTIONAL and when present MUST be passed to
	// subsequent `NodeStageVolume` or `NodePublishVolume` calls
	PublishContext       map[string]string `` /* 191-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ControllerPublishVolumeResponse) Descriptor

func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int)

func (*ControllerPublishVolumeResponse) GetPublishContext

func (m *ControllerPublishVolumeResponse) GetPublishContext() map[string]string

func (*ControllerPublishVolumeResponse) ProtoMessage

func (*ControllerPublishVolumeResponse) ProtoMessage()

func (*ControllerPublishVolumeResponse) Reset

func (*ControllerPublishVolumeResponse) String

func (*ControllerPublishVolumeResponse) XXX_DiscardUnknown

func (m *ControllerPublishVolumeResponse) XXX_DiscardUnknown()

func (*ControllerPublishVolumeResponse) XXX_Marshal

func (m *ControllerPublishVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerPublishVolumeResponse) XXX_Merge

func (dst *ControllerPublishVolumeResponse) XXX_Merge(src proto.Message)

func (*ControllerPublishVolumeResponse) XXX_Size

func (m *ControllerPublishVolumeResponse) XXX_Size() int

func (*ControllerPublishVolumeResponse) XXX_Unmarshal

func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error

type ControllerServiceCapability

type ControllerServiceCapability struct {
	// Types that are valid to be assigned to Type:
	//	*ControllerServiceCapability_Rpc
	Type                 isControllerServiceCapability_Type `protobuf_oneof:"type"`
	XXX_NoUnkeyedLiteral struct{}                           `json:"-"`
	XXX_unrecognized     []byte                             `json:"-"`
	XXX_sizecache        int32                              `json:"-"`
}

Specifies a capability of the controller service.

func (*ControllerServiceCapability) Descriptor

func (*ControllerServiceCapability) Descriptor() ([]byte, []int)

func (*ControllerServiceCapability) GetRpc

func (*ControllerServiceCapability) GetType

func (m *ControllerServiceCapability) GetType() isControllerServiceCapability_Type

func (*ControllerServiceCapability) ProtoMessage

func (*ControllerServiceCapability) ProtoMessage()

func (*ControllerServiceCapability) Reset

func (m *ControllerServiceCapability) Reset()

func (*ControllerServiceCapability) String

func (m *ControllerServiceCapability) String() string

func (*ControllerServiceCapability) XXX_DiscardUnknown

func (m *ControllerServiceCapability) XXX_DiscardUnknown()

func (*ControllerServiceCapability) XXX_Marshal

func (m *ControllerServiceCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerServiceCapability) XXX_Merge

func (dst *ControllerServiceCapability) XXX_Merge(src proto.Message)

func (*ControllerServiceCapability) XXX_OneofFuncs

func (*ControllerServiceCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*ControllerServiceCapability) XXX_Size

func (m *ControllerServiceCapability) XXX_Size() int

func (*ControllerServiceCapability) XXX_Unmarshal

func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error

type ControllerServiceCapability_RPC

type ControllerServiceCapability_RPC struct {
	Type                 ControllerServiceCapability_RPC_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.ControllerServiceCapability_RPC_Type" json:"type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                             `json:"-"`
	XXX_unrecognized     []byte                               `json:"-"`
	XXX_sizecache        int32                                `json:"-"`
}

func (*ControllerServiceCapability_RPC) Descriptor

func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int)

func (*ControllerServiceCapability_RPC) GetType

func (*ControllerServiceCapability_RPC) ProtoMessage

func (*ControllerServiceCapability_RPC) ProtoMessage()

func (*ControllerServiceCapability_RPC) Reset

func (*ControllerServiceCapability_RPC) String

func (*ControllerServiceCapability_RPC) XXX_DiscardUnknown

func (m *ControllerServiceCapability_RPC) XXX_DiscardUnknown()

func (*ControllerServiceCapability_RPC) XXX_Marshal

func (m *ControllerServiceCapability_RPC) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerServiceCapability_RPC) XXX_Merge

func (dst *ControllerServiceCapability_RPC) XXX_Merge(src proto.Message)

func (*ControllerServiceCapability_RPC) XXX_Size

func (m *ControllerServiceCapability_RPC) XXX_Size() int

func (*ControllerServiceCapability_RPC) XXX_Unmarshal

func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error

type ControllerServiceCapability_RPC_Type

type ControllerServiceCapability_RPC_Type int32
const (
	ControllerServiceCapability_RPC_UNKNOWN                  ControllerServiceCapability_RPC_Type = 0
	ControllerServiceCapability_RPC_CREATE_DELETE_VOLUME     ControllerServiceCapability_RPC_Type = 1
	ControllerServiceCapability_RPC_PUBLISH_UNPUBLISH_VOLUME ControllerServiceCapability_RPC_Type = 2
	ControllerServiceCapability_RPC_LIST_VOLUMES             ControllerServiceCapability_RPC_Type = 3
	ControllerServiceCapability_RPC_GET_CAPACITY             ControllerServiceCapability_RPC_Type = 4
	// Currently the only way to consume a snapshot is to create
	// a volume from it. Therefore plugins supporting
	// CREATE_DELETE_SNAPSHOT MUST support creating volume from
	// snapshot.
	ControllerServiceCapability_RPC_CREATE_DELETE_SNAPSHOT ControllerServiceCapability_RPC_Type = 5
	ControllerServiceCapability_RPC_LIST_SNAPSHOTS         ControllerServiceCapability_RPC_Type = 6
	// Plugins supporting volume cloning at the storage level MAY
	// report this capability. The source volume MUST be managed by
	// the same plugin. Not all volume sources and parameters
	// combinations MAY work.
	ControllerServiceCapability_RPC_CLONE_VOLUME ControllerServiceCapability_RPC_Type = 7
	// Indicates the SP supports ControllerPublishVolume.readonly
	// field.
	ControllerServiceCapability_RPC_PUBLISH_READONLY ControllerServiceCapability_RPC_Type = 8
)

func (ControllerServiceCapability_RPC_Type) EnumDescriptor

func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int)

func (ControllerServiceCapability_RPC_Type) String

type ControllerServiceCapability_Rpc

type ControllerServiceCapability_Rpc struct {
	Rpc *ControllerServiceCapability_RPC `protobuf:"bytes,1,opt,name=rpc,proto3,oneof"`
}

type ControllerUnpublishVolumeRequest

type ControllerUnpublishVolumeRequest struct {
	// The ID of the volume. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// The ID of the node. This field is OPTIONAL. The CO SHOULD set this
	// field to match the node ID returned by `NodeGetInfo` or leave it
	// unset. If the value is set, the SP MUST unpublish the volume from
	// the specified node. If the value is unset, the SP MUST unpublish
	// the volume from all nodes it is published to.
	NodeId string `protobuf:"bytes,2,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	// Secrets required by plugin to complete controller unpublish volume
	// request. This SHOULD be the same secrets passed to the
	// ControllerPublishVolume call for the specified volume.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets              map[string]string `` /* 155-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ControllerUnpublishVolumeRequest) Descriptor

func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int)

func (*ControllerUnpublishVolumeRequest) GetNodeId

func (*ControllerUnpublishVolumeRequest) GetSecrets

func (m *ControllerUnpublishVolumeRequest) GetSecrets() map[string]string

func (*ControllerUnpublishVolumeRequest) GetVolumeId

func (m *ControllerUnpublishVolumeRequest) GetVolumeId() string

func (*ControllerUnpublishVolumeRequest) ProtoMessage

func (*ControllerUnpublishVolumeRequest) ProtoMessage()

func (*ControllerUnpublishVolumeRequest) Reset

func (*ControllerUnpublishVolumeRequest) String

func (*ControllerUnpublishVolumeRequest) XXX_DiscardUnknown

func (m *ControllerUnpublishVolumeRequest) XXX_DiscardUnknown()

func (*ControllerUnpublishVolumeRequest) XXX_Marshal

func (m *ControllerUnpublishVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerUnpublishVolumeRequest) XXX_Merge

func (dst *ControllerUnpublishVolumeRequest) XXX_Merge(src proto.Message)

func (*ControllerUnpublishVolumeRequest) XXX_Size

func (m *ControllerUnpublishVolumeRequest) XXX_Size() int

func (*ControllerUnpublishVolumeRequest) XXX_Unmarshal

func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error

type ControllerUnpublishVolumeResponse

type ControllerUnpublishVolumeResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ControllerUnpublishVolumeResponse) Descriptor

func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int)

func (*ControllerUnpublishVolumeResponse) ProtoMessage

func (*ControllerUnpublishVolumeResponse) ProtoMessage()

func (*ControllerUnpublishVolumeResponse) Reset

func (*ControllerUnpublishVolumeResponse) String

func (*ControllerUnpublishVolumeResponse) XXX_DiscardUnknown

func (m *ControllerUnpublishVolumeResponse) XXX_DiscardUnknown()

func (*ControllerUnpublishVolumeResponse) XXX_Marshal

func (m *ControllerUnpublishVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ControllerUnpublishVolumeResponse) XXX_Merge

func (dst *ControllerUnpublishVolumeResponse) XXX_Merge(src proto.Message)

func (*ControllerUnpublishVolumeResponse) XXX_Size

func (m *ControllerUnpublishVolumeResponse) XXX_Size() int

func (*ControllerUnpublishVolumeResponse) XXX_Unmarshal

func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error

type CreateSnapshotRequest

type CreateSnapshotRequest struct {
	// The ID of the source volume to be snapshotted.
	// This field is REQUIRED.
	SourceVolumeId string `protobuf:"bytes,1,opt,name=source_volume_id,json=sourceVolumeId,proto3" json:"source_volume_id,omitempty"`
	// The suggested name for the snapshot. This field is REQUIRED for
	// idempotency.
	// Any Unicode string that conforms to the length limit is allowed
	// except those containing the following banned characters:
	// U+0000-U+0008, U+000B, U+000C, U+000E-U+001F, U+007F-U+009F.
	// (These are control characters other than commonly used whitespace.)
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Secrets required by plugin to complete snapshot creation request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets map[string]string `` /* 155-byte string literal not displayed */
	// Plugin specific parameters passed in as opaque key-value pairs.
	// This field is OPTIONAL. The Plugin is responsible for parsing and
	// validating these parameters. COs will treat these as opaque.
	// Use cases for opaque parameters:
	// - Specify a policy to automatically clean up the snapshot.
	// - Specify an expiration date for the snapshot.
	// - Specify whether the snapshot is readonly or read/write.
	// - Specify if the snapshot should be replicated to some place.
	// - Specify primary or secondary for replication systems that
	//   support snapshotting only on primary.
	Parameters           map[string]string `` /* 161-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*CreateSnapshotRequest) Descriptor

func (*CreateSnapshotRequest) Descriptor() ([]byte, []int)

func (*CreateSnapshotRequest) GetName

func (m *CreateSnapshotRequest) GetName() string

func (*CreateSnapshotRequest) GetParameters

func (m *CreateSnapshotRequest) GetParameters() map[string]string

func (*CreateSnapshotRequest) GetSecrets

func (m *CreateSnapshotRequest) GetSecrets() map[string]string

func (*CreateSnapshotRequest) GetSourceVolumeId

func (m *CreateSnapshotRequest) GetSourceVolumeId() string

func (*CreateSnapshotRequest) ProtoMessage

func (*CreateSnapshotRequest) ProtoMessage()

func (*CreateSnapshotRequest) Reset

func (m *CreateSnapshotRequest) Reset()

func (*CreateSnapshotRequest) String

func (m *CreateSnapshotRequest) String() string

func (*CreateSnapshotRequest) XXX_DiscardUnknown

func (m *CreateSnapshotRequest) XXX_DiscardUnknown()

func (*CreateSnapshotRequest) XXX_Marshal

func (m *CreateSnapshotRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CreateSnapshotRequest) XXX_Merge

func (dst *CreateSnapshotRequest) XXX_Merge(src proto.Message)

func (*CreateSnapshotRequest) XXX_Size

func (m *CreateSnapshotRequest) XXX_Size() int

func (*CreateSnapshotRequest) XXX_Unmarshal

func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error

type CreateSnapshotResponse

type CreateSnapshotResponse struct {
	// Contains all attributes of the newly created snapshot that are
	// relevant to the CO along with information required by the Plugin
	// to uniquely identify the snapshot. This field is REQUIRED.
	Snapshot             *Snapshot `protobuf:"bytes,1,opt,name=snapshot,proto3" json:"snapshot,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*CreateSnapshotResponse) Descriptor

func (*CreateSnapshotResponse) Descriptor() ([]byte, []int)

func (*CreateSnapshotResponse) GetSnapshot

func (m *CreateSnapshotResponse) GetSnapshot() *Snapshot

func (*CreateSnapshotResponse) ProtoMessage

func (*CreateSnapshotResponse) ProtoMessage()

func (*CreateSnapshotResponse) Reset

func (m *CreateSnapshotResponse) Reset()

func (*CreateSnapshotResponse) String

func (m *CreateSnapshotResponse) String() string

func (*CreateSnapshotResponse) XXX_DiscardUnknown

func (m *CreateSnapshotResponse) XXX_DiscardUnknown()

func (*CreateSnapshotResponse) XXX_Marshal

func (m *CreateSnapshotResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CreateSnapshotResponse) XXX_Merge

func (dst *CreateSnapshotResponse) XXX_Merge(src proto.Message)

func (*CreateSnapshotResponse) XXX_Size

func (m *CreateSnapshotResponse) XXX_Size() int

func (*CreateSnapshotResponse) XXX_Unmarshal

func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error

type CreateVolumeRequest

type CreateVolumeRequest struct {
	// The suggested name for the storage space. This field is REQUIRED.
	// It serves two purposes:
	// 1) Idempotency - This name is generated by the CO to achieve
	//    idempotency.  The Plugin SHOULD ensure that multiple
	//    `CreateVolume` calls for the same name do not result in more
	//    than one piece of storage provisioned corresponding to that
	//    name. If a Plugin is unable to enforce idempotency, the CO's
	//    error recovery logic could result in multiple (unused) volumes
	//    being provisioned.
	//    In the case of error, the CO MUST handle the gRPC error codes
	//    per the recovery behavior defined in the "CreateVolume Errors"
	//    section below.
	//    The CO is responsible for cleaning up volumes it provisioned
	//    that it no longer needs. If the CO is uncertain whether a volume
	//    was provisioned or not when a `CreateVolume` call fails, the CO
	//    MAY call `CreateVolume` again, with the same name, to ensure the
	//    volume exists and to retrieve the volume's `volume_id` (unless
	//    otherwise prohibited by "CreateVolume Errors").
	// 2) Suggested name - Some storage systems allow callers to specify
	//    an identifier by which to refer to the newly provisioned
	//    storage. If a storage system supports this, it can optionally
	//    use this name as the identifier for the new volume.
	// Any Unicode string that conforms to the length limit is allowed
	// except those containing the following banned characters:
	// U+0000-U+0008, U+000B, U+000C, U+000E-U+001F, U+007F-U+009F.
	// (These are control characters other than commonly used whitespace.)
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// This field is OPTIONAL. This allows the CO to specify the capacity
	// requirement of the volume to be provisioned. If not specified, the
	// Plugin MAY choose an implementation-defined capacity range. If
	// specified it MUST always be honored, even when creating volumes
	// from a source; which MAY force some backends to internally extend
	// the volume after creating it.
	CapacityRange *CapacityRange `protobuf:"bytes,2,opt,name=capacity_range,json=capacityRange,proto3" json:"capacity_range,omitempty"`
	// The capabilities that the provisioned volume MUST have. SP MUST
	// provision a volume that will satisfy ALL of the capabilities
	// specified in this list. Otherwise SP MUST return the appropriate
	// gRPC error code.
	// The Plugin MUST assume that the CO MAY use the provisioned volume
	// with ANY of the capabilities specified in this list.
	// For example, a CO MAY specify two volume capabilities: one with
	// access mode SINGLE_NODE_WRITER and another with access mode
	// MULTI_NODE_READER_ONLY. In this case, the SP MUST verify that the
	// provisioned volume can be used in either mode.
	// This also enables the CO to do early validation: If ANY of the
	// specified volume capabilities are not supported by the SP, the call
	// MUST return the appropriate gRPC error code.
	// This field is REQUIRED.
	VolumeCapabilities []*VolumeCapability `protobuf:"bytes,3,rep,name=volume_capabilities,json=volumeCapabilities,proto3" json:"volume_capabilities,omitempty"`
	// Plugin specific parameters passed in as opaque key-value pairs.
	// This field is OPTIONAL. The Plugin is responsible for parsing and
	// validating these parameters. COs will treat these as opaque.
	Parameters map[string]string `` /* 161-byte string literal not displayed */
	// Secrets required by plugin to complete volume creation request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets map[string]string `` /* 155-byte string literal not displayed */
	// If specified, the new volume will be pre-populated with data from
	// this source. This field is OPTIONAL.
	VolumeContentSource *VolumeContentSource `protobuf:"bytes,6,opt,name=volume_content_source,json=volumeContentSource,proto3" json:"volume_content_source,omitempty"`
	// Specifies where (regions, zones, racks, etc.) the provisioned
	// volume MUST be accessible from.
	// An SP SHALL advertise the requirements for topological
	// accessibility information in documentation. COs SHALL only specify
	// topological accessibility information supported by the SP.
	// This field is OPTIONAL.
	// This field SHALL NOT be specified unless the SP has the
	// VOLUME_ACCESSIBILITY_CONSTRAINTS plugin capability.
	// If this field is not specified and the SP has the
	// VOLUME_ACCESSIBILITY_CONSTRAINTS plugin capability, the SP MAY
	// choose where the provisioned volume is accessible from.
	AccessibilityRequirements *TopologyRequirement `` /* 136-byte string literal not displayed */
	XXX_NoUnkeyedLiteral      struct{}             `json:"-"`
	XXX_unrecognized          []byte               `json:"-"`
	XXX_sizecache             int32                `json:"-"`
}

func (*CreateVolumeRequest) Descriptor

func (*CreateVolumeRequest) Descriptor() ([]byte, []int)

func (*CreateVolumeRequest) GetAccessibilityRequirements

func (m *CreateVolumeRequest) GetAccessibilityRequirements() *TopologyRequirement

func (*CreateVolumeRequest) GetCapacityRange

func (m *CreateVolumeRequest) GetCapacityRange() *CapacityRange

func (*CreateVolumeRequest) GetName

func (m *CreateVolumeRequest) GetName() string

func (*CreateVolumeRequest) GetParameters

func (m *CreateVolumeRequest) GetParameters() map[string]string

func (*CreateVolumeRequest) GetSecrets

func (m *CreateVolumeRequest) GetSecrets() map[string]string

func (*CreateVolumeRequest) GetVolumeCapabilities

func (m *CreateVolumeRequest) GetVolumeCapabilities() []*VolumeCapability

func (*CreateVolumeRequest) GetVolumeContentSource

func (m *CreateVolumeRequest) GetVolumeContentSource() *VolumeContentSource

func (*CreateVolumeRequest) ProtoMessage

func (*CreateVolumeRequest) ProtoMessage()

func (*CreateVolumeRequest) Reset

func (m *CreateVolumeRequest) Reset()

func (*CreateVolumeRequest) String

func (m *CreateVolumeRequest) String() string

func (*CreateVolumeRequest) XXX_DiscardUnknown

func (m *CreateVolumeRequest) XXX_DiscardUnknown()

func (*CreateVolumeRequest) XXX_Marshal

func (m *CreateVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CreateVolumeRequest) XXX_Merge

func (dst *CreateVolumeRequest) XXX_Merge(src proto.Message)

func (*CreateVolumeRequest) XXX_Size

func (m *CreateVolumeRequest) XXX_Size() int

func (*CreateVolumeRequest) XXX_Unmarshal

func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error

type CreateVolumeResponse

type CreateVolumeResponse struct {
	// Contains all attributes of the newly created volume that are
	// relevant to the CO along with information required by the Plugin
	// to uniquely identify the volume. This field is REQUIRED.
	Volume               *Volume  `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*CreateVolumeResponse) Descriptor

func (*CreateVolumeResponse) Descriptor() ([]byte, []int)

func (*CreateVolumeResponse) GetVolume

func (m *CreateVolumeResponse) GetVolume() *Volume

func (*CreateVolumeResponse) ProtoMessage

func (*CreateVolumeResponse) ProtoMessage()

func (*CreateVolumeResponse) Reset

func (m *CreateVolumeResponse) Reset()

func (*CreateVolumeResponse) String

func (m *CreateVolumeResponse) String() string

func (*CreateVolumeResponse) XXX_DiscardUnknown

func (m *CreateVolumeResponse) XXX_DiscardUnknown()

func (*CreateVolumeResponse) XXX_Marshal

func (m *CreateVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CreateVolumeResponse) XXX_Merge

func (dst *CreateVolumeResponse) XXX_Merge(src proto.Message)

func (*CreateVolumeResponse) XXX_Size

func (m *CreateVolumeResponse) XXX_Size() int

func (*CreateVolumeResponse) XXX_Unmarshal

func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error

type DeleteSnapshotRequest

type DeleteSnapshotRequest struct {
	// The ID of the snapshot to be deleted.
	// This field is REQUIRED.
	SnapshotId string `protobuf:"bytes,1,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	// Secrets required by plugin to complete snapshot deletion request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets              map[string]string `` /* 155-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*DeleteSnapshotRequest) Descriptor

func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int)

func (*DeleteSnapshotRequest) GetSecrets

func (m *DeleteSnapshotRequest) GetSecrets() map[string]string

func (*DeleteSnapshotRequest) GetSnapshotId

func (m *DeleteSnapshotRequest) GetSnapshotId() string

func (*DeleteSnapshotRequest) ProtoMessage

func (*DeleteSnapshotRequest) ProtoMessage()

func (*DeleteSnapshotRequest) Reset

func (m *DeleteSnapshotRequest) Reset()

func (*DeleteSnapshotRequest) String

func (m *DeleteSnapshotRequest) String() string

func (*DeleteSnapshotRequest) XXX_DiscardUnknown

func (m *DeleteSnapshotRequest) XXX_DiscardUnknown()

func (*DeleteSnapshotRequest) XXX_Marshal

func (m *DeleteSnapshotRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DeleteSnapshotRequest) XXX_Merge

func (dst *DeleteSnapshotRequest) XXX_Merge(src proto.Message)

func (*DeleteSnapshotRequest) XXX_Size

func (m *DeleteSnapshotRequest) XXX_Size() int

func (*DeleteSnapshotRequest) XXX_Unmarshal

func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error

type DeleteSnapshotResponse

type DeleteSnapshotResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*DeleteSnapshotResponse) Descriptor

func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int)

func (*DeleteSnapshotResponse) ProtoMessage

func (*DeleteSnapshotResponse) ProtoMessage()

func (*DeleteSnapshotResponse) Reset

func (m *DeleteSnapshotResponse) Reset()

func (*DeleteSnapshotResponse) String

func (m *DeleteSnapshotResponse) String() string

func (*DeleteSnapshotResponse) XXX_DiscardUnknown

func (m *DeleteSnapshotResponse) XXX_DiscardUnknown()

func (*DeleteSnapshotResponse) XXX_Marshal

func (m *DeleteSnapshotResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DeleteSnapshotResponse) XXX_Merge

func (dst *DeleteSnapshotResponse) XXX_Merge(src proto.Message)

func (*DeleteSnapshotResponse) XXX_Size

func (m *DeleteSnapshotResponse) XXX_Size() int

func (*DeleteSnapshotResponse) XXX_Unmarshal

func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error

type DeleteVolumeRequest

type DeleteVolumeRequest struct {
	// The ID of the volume to be deprovisioned.
	// This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// Secrets required by plugin to complete volume deletion request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets              map[string]string `` /* 155-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*DeleteVolumeRequest) Descriptor

func (*DeleteVolumeRequest) Descriptor() ([]byte, []int)

func (*DeleteVolumeRequest) GetSecrets

func (m *DeleteVolumeRequest) GetSecrets() map[string]string

func (*DeleteVolumeRequest) GetVolumeId

func (m *DeleteVolumeRequest) GetVolumeId() string

func (*DeleteVolumeRequest) ProtoMessage

func (*DeleteVolumeRequest) ProtoMessage()

func (*DeleteVolumeRequest) Reset

func (m *DeleteVolumeRequest) Reset()

func (*DeleteVolumeRequest) String

func (m *DeleteVolumeRequest) String() string

func (*DeleteVolumeRequest) XXX_DiscardUnknown

func (m *DeleteVolumeRequest) XXX_DiscardUnknown()

func (*DeleteVolumeRequest) XXX_Marshal

func (m *DeleteVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DeleteVolumeRequest) XXX_Merge

func (dst *DeleteVolumeRequest) XXX_Merge(src proto.Message)

func (*DeleteVolumeRequest) XXX_Size

func (m *DeleteVolumeRequest) XXX_Size() int

func (*DeleteVolumeRequest) XXX_Unmarshal

func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error

type DeleteVolumeResponse

type DeleteVolumeResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*DeleteVolumeResponse) Descriptor

func (*DeleteVolumeResponse) Descriptor() ([]byte, []int)

func (*DeleteVolumeResponse) ProtoMessage

func (*DeleteVolumeResponse) ProtoMessage()

func (*DeleteVolumeResponse) Reset

func (m *DeleteVolumeResponse) Reset()

func (*DeleteVolumeResponse) String

func (m *DeleteVolumeResponse) String() string

func (*DeleteVolumeResponse) XXX_DiscardUnknown

func (m *DeleteVolumeResponse) XXX_DiscardUnknown()

func (*DeleteVolumeResponse) XXX_Marshal

func (m *DeleteVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DeleteVolumeResponse) XXX_Merge

func (dst *DeleteVolumeResponse) XXX_Merge(src proto.Message)

func (*DeleteVolumeResponse) XXX_Size

func (m *DeleteVolumeResponse) XXX_Size() int

func (*DeleteVolumeResponse) XXX_Unmarshal

func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error

type GetCapacityRequest

type GetCapacityRequest struct {
	// If specified, the Plugin SHALL report the capacity of the storage
	// that can be used to provision volumes that satisfy ALL of the
	// specified `volume_capabilities`. These are the same
	// `volume_capabilities` the CO will use in `CreateVolumeRequest`.
	// This field is OPTIONAL.
	VolumeCapabilities []*VolumeCapability `protobuf:"bytes,1,rep,name=volume_capabilities,json=volumeCapabilities,proto3" json:"volume_capabilities,omitempty"`
	// If specified, the Plugin SHALL report the capacity of the storage
	// that can be used to provision volumes with the given Plugin
	// specific `parameters`. These are the same `parameters` the CO will
	// use in `CreateVolumeRequest`. This field is OPTIONAL.
	Parameters map[string]string `` /* 161-byte string literal not displayed */
	// If specified, the Plugin SHALL report the capacity of the storage
	// that can be used to provision volumes that in the specified
	// `accessible_topology`. This is the same as the
	// `accessible_topology` the CO returns in a `CreateVolumeResponse`.
	// This field is OPTIONAL. This field SHALL NOT be set unless the
	// plugin advertises the VOLUME_ACCESSIBILITY_CONSTRAINTS capability.
	AccessibleTopology   *Topology `protobuf:"bytes,3,opt,name=accessible_topology,json=accessibleTopology,proto3" json:"accessible_topology,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetCapacityRequest) Descriptor

func (*GetCapacityRequest) Descriptor() ([]byte, []int)

func (*GetCapacityRequest) GetAccessibleTopology

func (m *GetCapacityRequest) GetAccessibleTopology() *Topology

func (*GetCapacityRequest) GetParameters

func (m *GetCapacityRequest) GetParameters() map[string]string

func (*GetCapacityRequest) GetVolumeCapabilities

func (m *GetCapacityRequest) GetVolumeCapabilities() []*VolumeCapability

func (*GetCapacityRequest) ProtoMessage

func (*GetCapacityRequest) ProtoMessage()

func (*GetCapacityRequest) Reset

func (m *GetCapacityRequest) Reset()

func (*GetCapacityRequest) String

func (m *GetCapacityRequest) String() string

func (*GetCapacityRequest) XXX_DiscardUnknown

func (m *GetCapacityRequest) XXX_DiscardUnknown()

func (*GetCapacityRequest) XXX_Marshal

func (m *GetCapacityRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetCapacityRequest) XXX_Merge

func (dst *GetCapacityRequest) XXX_Merge(src proto.Message)

func (*GetCapacityRequest) XXX_Size

func (m *GetCapacityRequest) XXX_Size() int

func (*GetCapacityRequest) XXX_Unmarshal

func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error

type GetCapacityResponse

type GetCapacityResponse struct {
	// The available capacity, in bytes, of the storage that can be used
	// to provision volumes. If `volume_capabilities` or `parameters` is
	// specified in the request, the Plugin SHALL take those into
	// consideration when calculating the available capacity of the
	// storage. This field is REQUIRED.
	// The value of this field MUST NOT be negative.
	AvailableCapacity    int64    `protobuf:"varint,1,opt,name=available_capacity,json=availableCapacity,proto3" json:"available_capacity,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetCapacityResponse) Descriptor

func (*GetCapacityResponse) Descriptor() ([]byte, []int)

func (*GetCapacityResponse) GetAvailableCapacity

func (m *GetCapacityResponse) GetAvailableCapacity() int64

func (*GetCapacityResponse) ProtoMessage

func (*GetCapacityResponse) ProtoMessage()

func (*GetCapacityResponse) Reset

func (m *GetCapacityResponse) Reset()

func (*GetCapacityResponse) String

func (m *GetCapacityResponse) String() string

func (*GetCapacityResponse) XXX_DiscardUnknown

func (m *GetCapacityResponse) XXX_DiscardUnknown()

func (*GetCapacityResponse) XXX_Marshal

func (m *GetCapacityResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetCapacityResponse) XXX_Merge

func (dst *GetCapacityResponse) XXX_Merge(src proto.Message)

func (*GetCapacityResponse) XXX_Size

func (m *GetCapacityResponse) XXX_Size() int

func (*GetCapacityResponse) XXX_Unmarshal

func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error

type GetPluginCapabilitiesRequest

type GetPluginCapabilitiesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetPluginCapabilitiesRequest) Descriptor

func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int)

func (*GetPluginCapabilitiesRequest) ProtoMessage

func (*GetPluginCapabilitiesRequest) ProtoMessage()

func (*GetPluginCapabilitiesRequest) Reset

func (m *GetPluginCapabilitiesRequest) Reset()

func (*GetPluginCapabilitiesRequest) String

func (*GetPluginCapabilitiesRequest) XXX_DiscardUnknown

func (m *GetPluginCapabilitiesRequest) XXX_DiscardUnknown()

func (*GetPluginCapabilitiesRequest) XXX_Marshal

func (m *GetPluginCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetPluginCapabilitiesRequest) XXX_Merge

func (dst *GetPluginCapabilitiesRequest) XXX_Merge(src proto.Message)

func (*GetPluginCapabilitiesRequest) XXX_Size

func (m *GetPluginCapabilitiesRequest) XXX_Size() int

func (*GetPluginCapabilitiesRequest) XXX_Unmarshal

func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error

type GetPluginCapabilitiesResponse

type GetPluginCapabilitiesResponse struct {
	// All the capabilities that the controller service supports. This
	// field is OPTIONAL.
	Capabilities         []*PluginCapability `protobuf:"bytes,1,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (*GetPluginCapabilitiesResponse) Descriptor

func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int)

func (*GetPluginCapabilitiesResponse) GetCapabilities

func (m *GetPluginCapabilitiesResponse) GetCapabilities() []*PluginCapability

func (*GetPluginCapabilitiesResponse) ProtoMessage

func (*GetPluginCapabilitiesResponse) ProtoMessage()

func (*GetPluginCapabilitiesResponse) Reset

func (m *GetPluginCapabilitiesResponse) Reset()

func (*GetPluginCapabilitiesResponse) String

func (*GetPluginCapabilitiesResponse) XXX_DiscardUnknown

func (m *GetPluginCapabilitiesResponse) XXX_DiscardUnknown()

func (*GetPluginCapabilitiesResponse) XXX_Marshal

func (m *GetPluginCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetPluginCapabilitiesResponse) XXX_Merge

func (dst *GetPluginCapabilitiesResponse) XXX_Merge(src proto.Message)

func (*GetPluginCapabilitiesResponse) XXX_Size

func (m *GetPluginCapabilitiesResponse) XXX_Size() int

func (*GetPluginCapabilitiesResponse) XXX_Unmarshal

func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error

type GetPluginInfoRequest

type GetPluginInfoRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetPluginInfoRequest) Descriptor

func (*GetPluginInfoRequest) Descriptor() ([]byte, []int)

func (*GetPluginInfoRequest) ProtoMessage

func (*GetPluginInfoRequest) ProtoMessage()

func (*GetPluginInfoRequest) Reset

func (m *GetPluginInfoRequest) Reset()

func (*GetPluginInfoRequest) String

func (m *GetPluginInfoRequest) String() string

func (*GetPluginInfoRequest) XXX_DiscardUnknown

func (m *GetPluginInfoRequest) XXX_DiscardUnknown()

func (*GetPluginInfoRequest) XXX_Marshal

func (m *GetPluginInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetPluginInfoRequest) XXX_Merge

func (dst *GetPluginInfoRequest) XXX_Merge(src proto.Message)

func (*GetPluginInfoRequest) XXX_Size

func (m *GetPluginInfoRequest) XXX_Size() int

func (*GetPluginInfoRequest) XXX_Unmarshal

func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error

type GetPluginInfoResponse

type GetPluginInfoResponse struct {
	// The name MUST follow domain name notation format
	// (https://tools.ietf.org/html/rfc1035#section-2.3.1). It SHOULD
	// include the plugin's host company name and the plugin name,
	// to minimize the possibility of collisions. It MUST be 63
	// characters or less, beginning and ending with an alphanumeric
	// character ([a-z0-9A-Z]) with dashes (-), dots (.), and
	// alphanumerics between. This field is REQUIRED.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// This field is REQUIRED. Value of this field is opaque to the CO.
	VendorVersion string `protobuf:"bytes,2,opt,name=vendor_version,json=vendorVersion,proto3" json:"vendor_version,omitempty"`
	// This field is OPTIONAL. Values are opaque to the CO.
	Manifest             map[string]string `` /* 157-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*GetPluginInfoResponse) Descriptor

func (*GetPluginInfoResponse) Descriptor() ([]byte, []int)

func (*GetPluginInfoResponse) GetManifest

func (m *GetPluginInfoResponse) GetManifest() map[string]string

func (*GetPluginInfoResponse) GetName

func (m *GetPluginInfoResponse) GetName() string

func (*GetPluginInfoResponse) GetVendorVersion

func (m *GetPluginInfoResponse) GetVendorVersion() string

func (*GetPluginInfoResponse) ProtoMessage

func (*GetPluginInfoResponse) ProtoMessage()

func (*GetPluginInfoResponse) Reset

func (m *GetPluginInfoResponse) Reset()

func (*GetPluginInfoResponse) String

func (m *GetPluginInfoResponse) String() string

func (*GetPluginInfoResponse) XXX_DiscardUnknown

func (m *GetPluginInfoResponse) XXX_DiscardUnknown()

func (*GetPluginInfoResponse) XXX_Marshal

func (m *GetPluginInfoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetPluginInfoResponse) XXX_Merge

func (dst *GetPluginInfoResponse) XXX_Merge(src proto.Message)

func (*GetPluginInfoResponse) XXX_Size

func (m *GetPluginInfoResponse) XXX_Size() int

func (*GetPluginInfoResponse) XXX_Unmarshal

func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error

type IdentityClient

type IdentityClient interface {
	GetPluginInfo(ctx context.Context, in *GetPluginInfoRequest, opts ...grpc.CallOption) (*GetPluginInfoResponse, error)
	GetPluginCapabilities(ctx context.Context, in *GetPluginCapabilitiesRequest, opts ...grpc.CallOption) (*GetPluginCapabilitiesResponse, error)
	Probe(ctx context.Context, in *ProbeRequest, opts ...grpc.CallOption) (*ProbeResponse, error)
}

IdentityClient is the client API for Identity service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewIdentityClient

func NewIdentityClient(cc *grpc.ClientConn) IdentityClient

type IdentityServer

IdentityServer is the server API for Identity service.

type ListSnapshotsRequest

type ListSnapshotsRequest struct {
	// If specified (non-zero value), the Plugin MUST NOT return more
	// entries than this number in the response. If the actual number of
	// entries is more than this number, the Plugin MUST set `next_token`
	// in the response which can be used to get the next page of entries
	// in the subsequent `ListSnapshots` call. This field is OPTIONAL. If
	// not specified (zero value), it means there is no restriction on the
	// number of entries that can be returned.
	// The value of this field MUST NOT be negative.
	MaxEntries int32 `protobuf:"varint,1,opt,name=max_entries,json=maxEntries,proto3" json:"max_entries,omitempty"`
	// A token to specify where to start paginating. Set this field to
	// `next_token` returned by a previous `ListSnapshots` call to get the
	// next page of entries. This field is OPTIONAL.
	// An empty string is equal to an unspecified field value.
	StartingToken string `protobuf:"bytes,2,opt,name=starting_token,json=startingToken,proto3" json:"starting_token,omitempty"`
	// Identity information for the source volume. This field is OPTIONAL.
	// It can be used to list snapshots by volume.
	SourceVolumeId string `protobuf:"bytes,3,opt,name=source_volume_id,json=sourceVolumeId,proto3" json:"source_volume_id,omitempty"`
	// Identity information for a specific snapshot. This field is
	// OPTIONAL. It can be used to list only a specific snapshot.
	// ListSnapshots will return with current snapshot information
	// and will not block if the snapshot is being processed after
	// it is cut.
	SnapshotId           string   `protobuf:"bytes,4,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

List all snapshots on the storage system regardless of how they were created.

func (*ListSnapshotsRequest) Descriptor

func (*ListSnapshotsRequest) Descriptor() ([]byte, []int)

func (*ListSnapshotsRequest) GetMaxEntries

func (m *ListSnapshotsRequest) GetMaxEntries() int32

func (*ListSnapshotsRequest) GetSnapshotId

func (m *ListSnapshotsRequest) GetSnapshotId() string

func (*ListSnapshotsRequest) GetSourceVolumeId

func (m *ListSnapshotsRequest) GetSourceVolumeId() string

func (*ListSnapshotsRequest) GetStartingToken

func (m *ListSnapshotsRequest) GetStartingToken() string

func (*ListSnapshotsRequest) ProtoMessage

func (*ListSnapshotsRequest) ProtoMessage()

func (*ListSnapshotsRequest) Reset

func (m *ListSnapshotsRequest) Reset()

func (*ListSnapshotsRequest) String

func (m *ListSnapshotsRequest) String() string

func (*ListSnapshotsRequest) XXX_DiscardUnknown

func (m *ListSnapshotsRequest) XXX_DiscardUnknown()

func (*ListSnapshotsRequest) XXX_Marshal

func (m *ListSnapshotsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListSnapshotsRequest) XXX_Merge

func (dst *ListSnapshotsRequest) XXX_Merge(src proto.Message)

func (*ListSnapshotsRequest) XXX_Size

func (m *ListSnapshotsRequest) XXX_Size() int

func (*ListSnapshotsRequest) XXX_Unmarshal

func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error

type ListSnapshotsResponse

type ListSnapshotsResponse struct {
	Entries []*ListSnapshotsResponse_Entry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	// This token allows you to get the next page of entries for
	// `ListSnapshots` request. If the number of entries is larger than
	// `max_entries`, use the `next_token` as a value for the
	// `starting_token` field in the next `ListSnapshots` request. This
	// field is OPTIONAL.
	// An empty string is equal to an unspecified field value.
	NextToken            string   `protobuf:"bytes,2,opt,name=next_token,json=nextToken,proto3" json:"next_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ListSnapshotsResponse) Descriptor

func (*ListSnapshotsResponse) Descriptor() ([]byte, []int)

func (*ListSnapshotsResponse) GetEntries

func (*ListSnapshotsResponse) GetNextToken

func (m *ListSnapshotsResponse) GetNextToken() string

func (*ListSnapshotsResponse) ProtoMessage

func (*ListSnapshotsResponse) ProtoMessage()

func (*ListSnapshotsResponse) Reset

func (m *ListSnapshotsResponse) Reset()

func (*ListSnapshotsResponse) String

func (m *ListSnapshotsResponse) String() string

func (*ListSnapshotsResponse) XXX_DiscardUnknown

func (m *ListSnapshotsResponse) XXX_DiscardUnknown()

func (*ListSnapshotsResponse) XXX_Marshal

func (m *ListSnapshotsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListSnapshotsResponse) XXX_Merge

func (dst *ListSnapshotsResponse) XXX_Merge(src proto.Message)

func (*ListSnapshotsResponse) XXX_Size

func (m *ListSnapshotsResponse) XXX_Size() int

func (*ListSnapshotsResponse) XXX_Unmarshal

func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error

type ListSnapshotsResponse_Entry

type ListSnapshotsResponse_Entry struct {
	Snapshot             *Snapshot `protobuf:"bytes,1,opt,name=snapshot,proto3" json:"snapshot,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*ListSnapshotsResponse_Entry) Descriptor

func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int)

func (*ListSnapshotsResponse_Entry) GetSnapshot

func (m *ListSnapshotsResponse_Entry) GetSnapshot() *Snapshot

func (*ListSnapshotsResponse_Entry) ProtoMessage

func (*ListSnapshotsResponse_Entry) ProtoMessage()

func (*ListSnapshotsResponse_Entry) Reset

func (m *ListSnapshotsResponse_Entry) Reset()

func (*ListSnapshotsResponse_Entry) String

func (m *ListSnapshotsResponse_Entry) String() string

func (*ListSnapshotsResponse_Entry) XXX_DiscardUnknown

func (m *ListSnapshotsResponse_Entry) XXX_DiscardUnknown()

func (*ListSnapshotsResponse_Entry) XXX_Marshal

func (m *ListSnapshotsResponse_Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListSnapshotsResponse_Entry) XXX_Merge

func (dst *ListSnapshotsResponse_Entry) XXX_Merge(src proto.Message)

func (*ListSnapshotsResponse_Entry) XXX_Size

func (m *ListSnapshotsResponse_Entry) XXX_Size() int

func (*ListSnapshotsResponse_Entry) XXX_Unmarshal

func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error

type ListVolumesRequest

type ListVolumesRequest struct {
	// If specified (non-zero value), the Plugin MUST NOT return more
	// entries than this number in the response. If the actual number of
	// entries is more than this number, the Plugin MUST set `next_token`
	// in the response which can be used to get the next page of entries
	// in the subsequent `ListVolumes` call. This field is OPTIONAL. If
	// not specified (zero value), it means there is no restriction on the
	// number of entries that can be returned.
	// The value of this field MUST NOT be negative.
	MaxEntries int32 `protobuf:"varint,1,opt,name=max_entries,json=maxEntries,proto3" json:"max_entries,omitempty"`
	// A token to specify where to start paginating. Set this field to
	// `next_token` returned by a previous `ListVolumes` call to get the
	// next page of entries. This field is OPTIONAL.
	// An empty string is equal to an unspecified field value.
	StartingToken        string   `protobuf:"bytes,2,opt,name=starting_token,json=startingToken,proto3" json:"starting_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ListVolumesRequest) Descriptor

func (*ListVolumesRequest) Descriptor() ([]byte, []int)

func (*ListVolumesRequest) GetMaxEntries

func (m *ListVolumesRequest) GetMaxEntries() int32

func (*ListVolumesRequest) GetStartingToken

func (m *ListVolumesRequest) GetStartingToken() string

func (*ListVolumesRequest) ProtoMessage

func (*ListVolumesRequest) ProtoMessage()

func (*ListVolumesRequest) Reset

func (m *ListVolumesRequest) Reset()

func (*ListVolumesRequest) String

func (m *ListVolumesRequest) String() string

func (*ListVolumesRequest) XXX_DiscardUnknown

func (m *ListVolumesRequest) XXX_DiscardUnknown()

func (*ListVolumesRequest) XXX_Marshal

func (m *ListVolumesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListVolumesRequest) XXX_Merge

func (dst *ListVolumesRequest) XXX_Merge(src proto.Message)

func (*ListVolumesRequest) XXX_Size

func (m *ListVolumesRequest) XXX_Size() int

func (*ListVolumesRequest) XXX_Unmarshal

func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error

type ListVolumesResponse

type ListVolumesResponse struct {
	Entries []*ListVolumesResponse_Entry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	// This token allows you to get the next page of entries for
	// `ListVolumes` request. If the number of entries is larger than
	// `max_entries`, use the `next_token` as a value for the
	// `starting_token` field in the next `ListVolumes` request. This
	// field is OPTIONAL.
	// An empty string is equal to an unspecified field value.
	NextToken            string   `protobuf:"bytes,2,opt,name=next_token,json=nextToken,proto3" json:"next_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ListVolumesResponse) Descriptor

func (*ListVolumesResponse) Descriptor() ([]byte, []int)

func (*ListVolumesResponse) GetEntries

func (*ListVolumesResponse) GetNextToken

func (m *ListVolumesResponse) GetNextToken() string

func (*ListVolumesResponse) ProtoMessage

func (*ListVolumesResponse) ProtoMessage()

func (*ListVolumesResponse) Reset

func (m *ListVolumesResponse) Reset()

func (*ListVolumesResponse) String

func (m *ListVolumesResponse) String() string

func (*ListVolumesResponse) XXX_DiscardUnknown

func (m *ListVolumesResponse) XXX_DiscardUnknown()

func (*ListVolumesResponse) XXX_Marshal

func (m *ListVolumesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListVolumesResponse) XXX_Merge

func (dst *ListVolumesResponse) XXX_Merge(src proto.Message)

func (*ListVolumesResponse) XXX_Size

func (m *ListVolumesResponse) XXX_Size() int

func (*ListVolumesResponse) XXX_Unmarshal

func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error

type ListVolumesResponse_Entry

type ListVolumesResponse_Entry struct {
	Volume               *Volume  `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ListVolumesResponse_Entry) Descriptor

func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int)

func (*ListVolumesResponse_Entry) GetVolume

func (m *ListVolumesResponse_Entry) GetVolume() *Volume

func (*ListVolumesResponse_Entry) ProtoMessage

func (*ListVolumesResponse_Entry) ProtoMessage()

func (*ListVolumesResponse_Entry) Reset

func (m *ListVolumesResponse_Entry) Reset()

func (*ListVolumesResponse_Entry) String

func (m *ListVolumesResponse_Entry) String() string

func (*ListVolumesResponse_Entry) XXX_DiscardUnknown

func (m *ListVolumesResponse_Entry) XXX_DiscardUnknown()

func (*ListVolumesResponse_Entry) XXX_Marshal

func (m *ListVolumesResponse_Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListVolumesResponse_Entry) XXX_Merge

func (dst *ListVolumesResponse_Entry) XXX_Merge(src proto.Message)

func (*ListVolumesResponse_Entry) XXX_Size

func (m *ListVolumesResponse_Entry) XXX_Size() int

func (*ListVolumesResponse_Entry) XXX_Unmarshal

func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error

type NodeClient

NodeClient is the client API for Node service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewNodeClient

func NewNodeClient(cc *grpc.ClientConn) NodeClient

type NodeGetCapabilitiesRequest

type NodeGetCapabilitiesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeGetCapabilitiesRequest) Descriptor

func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int)

func (*NodeGetCapabilitiesRequest) ProtoMessage

func (*NodeGetCapabilitiesRequest) ProtoMessage()

func (*NodeGetCapabilitiesRequest) Reset

func (m *NodeGetCapabilitiesRequest) Reset()

func (*NodeGetCapabilitiesRequest) String

func (m *NodeGetCapabilitiesRequest) String() string

func (*NodeGetCapabilitiesRequest) XXX_DiscardUnknown

func (m *NodeGetCapabilitiesRequest) XXX_DiscardUnknown()

func (*NodeGetCapabilitiesRequest) XXX_Marshal

func (m *NodeGetCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeGetCapabilitiesRequest) XXX_Merge

func (dst *NodeGetCapabilitiesRequest) XXX_Merge(src proto.Message)

func (*NodeGetCapabilitiesRequest) XXX_Size

func (m *NodeGetCapabilitiesRequest) XXX_Size() int

func (*NodeGetCapabilitiesRequest) XXX_Unmarshal

func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error

type NodeGetCapabilitiesResponse

type NodeGetCapabilitiesResponse struct {
	// All the capabilities that the node service supports. This field
	// is OPTIONAL.
	Capabilities         []*NodeServiceCapability `protobuf:"bytes,1,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (*NodeGetCapabilitiesResponse) Descriptor

func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int)

func (*NodeGetCapabilitiesResponse) GetCapabilities

func (m *NodeGetCapabilitiesResponse) GetCapabilities() []*NodeServiceCapability

func (*NodeGetCapabilitiesResponse) ProtoMessage

func (*NodeGetCapabilitiesResponse) ProtoMessage()

func (*NodeGetCapabilitiesResponse) Reset

func (m *NodeGetCapabilitiesResponse) Reset()

func (*NodeGetCapabilitiesResponse) String

func (m *NodeGetCapabilitiesResponse) String() string

func (*NodeGetCapabilitiesResponse) XXX_DiscardUnknown

func (m *NodeGetCapabilitiesResponse) XXX_DiscardUnknown()

func (*NodeGetCapabilitiesResponse) XXX_Marshal

func (m *NodeGetCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeGetCapabilitiesResponse) XXX_Merge

func (dst *NodeGetCapabilitiesResponse) XXX_Merge(src proto.Message)

func (*NodeGetCapabilitiesResponse) XXX_Size

func (m *NodeGetCapabilitiesResponse) XXX_Size() int

func (*NodeGetCapabilitiesResponse) XXX_Unmarshal

func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error

type NodeGetInfoRequest

type NodeGetInfoRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeGetInfoRequest) Descriptor

func (*NodeGetInfoRequest) Descriptor() ([]byte, []int)

func (*NodeGetInfoRequest) ProtoMessage

func (*NodeGetInfoRequest) ProtoMessage()

func (*NodeGetInfoRequest) Reset

func (m *NodeGetInfoRequest) Reset()

func (*NodeGetInfoRequest) String

func (m *NodeGetInfoRequest) String() string

func (*NodeGetInfoRequest) XXX_DiscardUnknown

func (m *NodeGetInfoRequest) XXX_DiscardUnknown()

func (*NodeGetInfoRequest) XXX_Marshal

func (m *NodeGetInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeGetInfoRequest) XXX_Merge

func (dst *NodeGetInfoRequest) XXX_Merge(src proto.Message)

func (*NodeGetInfoRequest) XXX_Size

func (m *NodeGetInfoRequest) XXX_Size() int

func (*NodeGetInfoRequest) XXX_Unmarshal

func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error

type NodeGetInfoResponse

type NodeGetInfoResponse struct {
	// The identifier of the node as understood by the SP.
	// This field is REQUIRED.
	// This field MUST contain enough information to uniquely identify
	// this specific node vs all other nodes supported by this plugin.
	// This field SHALL be used by the CO in subsequent calls, including
	// `ControllerPublishVolume`, to refer to this node.
	// The SP is NOT responsible for global uniqueness of node_id across
	// multiple SPs.
	NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	// Maximum number of volumes that controller can publish to the node.
	// If value is not set or zero CO SHALL decide how many volumes of
	// this type can be published by the controller to the node. The
	// plugin MUST NOT set negative values here.
	// This field is OPTIONAL.
	MaxVolumesPerNode int64 `protobuf:"varint,2,opt,name=max_volumes_per_node,json=maxVolumesPerNode,proto3" json:"max_volumes_per_node,omitempty"`
	// Specifies where (regions, zones, racks, etc.) the node is
	// accessible from.
	// A plugin that returns this field MUST also set the
	// VOLUME_ACCESSIBILITY_CONSTRAINTS plugin capability.
	// COs MAY use this information along with the topology information
	// returned in CreateVolumeResponse to ensure that a given volume is
	// accessible from a given node when scheduling workloads.
	// This field is OPTIONAL. If it is not specified, the CO MAY assume
	// the node is not subject to any topological constraint, and MAY
	// schedule workloads that reference any volume V, such that there are
	// no topological constraints declared for V.
	//
	// Example 1:
	//   accessible_topology =
	//     {"region": "R1", "zone": "R2"}
	// Indicates the node exists within the "region" "R1" and the "zone"
	// "Z2".
	AccessibleTopology   *Topology `protobuf:"bytes,3,opt,name=accessible_topology,json=accessibleTopology,proto3" json:"accessible_topology,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*NodeGetInfoResponse) Descriptor

func (*NodeGetInfoResponse) Descriptor() ([]byte, []int)

func (*NodeGetInfoResponse) GetAccessibleTopology

func (m *NodeGetInfoResponse) GetAccessibleTopology() *Topology

func (*NodeGetInfoResponse) GetMaxVolumesPerNode

func (m *NodeGetInfoResponse) GetMaxVolumesPerNode() int64

func (*NodeGetInfoResponse) GetNodeId

func (m *NodeGetInfoResponse) GetNodeId() string

func (*NodeGetInfoResponse) ProtoMessage

func (*NodeGetInfoResponse) ProtoMessage()

func (*NodeGetInfoResponse) Reset

func (m *NodeGetInfoResponse) Reset()

func (*NodeGetInfoResponse) String

func (m *NodeGetInfoResponse) String() string

func (*NodeGetInfoResponse) XXX_DiscardUnknown

func (m *NodeGetInfoResponse) XXX_DiscardUnknown()

func (*NodeGetInfoResponse) XXX_Marshal

func (m *NodeGetInfoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeGetInfoResponse) XXX_Merge

func (dst *NodeGetInfoResponse) XXX_Merge(src proto.Message)

func (*NodeGetInfoResponse) XXX_Size

func (m *NodeGetInfoResponse) XXX_Size() int

func (*NodeGetInfoResponse) XXX_Unmarshal

func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error

type NodeGetVolumeStatsRequest

type NodeGetVolumeStatsRequest struct {
	// The ID of the volume. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// It can be any valid path where volume was previously
	// staged or published.
	// It MUST be an absolute path in the root filesystem of
	// the process serving this request.
	// This is a REQUIRED field.
	VolumePath           string   `protobuf:"bytes,2,opt,name=volume_path,json=volumePath,proto3" json:"volume_path,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeGetVolumeStatsRequest) Descriptor

func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int)

func (*NodeGetVolumeStatsRequest) GetVolumeId

func (m *NodeGetVolumeStatsRequest) GetVolumeId() string

func (*NodeGetVolumeStatsRequest) GetVolumePath

func (m *NodeGetVolumeStatsRequest) GetVolumePath() string

func (*NodeGetVolumeStatsRequest) ProtoMessage

func (*NodeGetVolumeStatsRequest) ProtoMessage()

func (*NodeGetVolumeStatsRequest) Reset

func (m *NodeGetVolumeStatsRequest) Reset()

func (*NodeGetVolumeStatsRequest) String

func (m *NodeGetVolumeStatsRequest) String() string

func (*NodeGetVolumeStatsRequest) XXX_DiscardUnknown

func (m *NodeGetVolumeStatsRequest) XXX_DiscardUnknown()

func (*NodeGetVolumeStatsRequest) XXX_Marshal

func (m *NodeGetVolumeStatsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeGetVolumeStatsRequest) XXX_Merge

func (dst *NodeGetVolumeStatsRequest) XXX_Merge(src proto.Message)

func (*NodeGetVolumeStatsRequest) XXX_Size

func (m *NodeGetVolumeStatsRequest) XXX_Size() int

func (*NodeGetVolumeStatsRequest) XXX_Unmarshal

func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error

type NodeGetVolumeStatsResponse

type NodeGetVolumeStatsResponse struct {
	// This field is OPTIONAL.
	Usage                []*VolumeUsage `protobuf:"bytes,1,rep,name=usage,proto3" json:"usage,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*NodeGetVolumeStatsResponse) Descriptor

func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int)

func (*NodeGetVolumeStatsResponse) GetUsage

func (m *NodeGetVolumeStatsResponse) GetUsage() []*VolumeUsage

func (*NodeGetVolumeStatsResponse) ProtoMessage

func (*NodeGetVolumeStatsResponse) ProtoMessage()

func (*NodeGetVolumeStatsResponse) Reset

func (m *NodeGetVolumeStatsResponse) Reset()

func (*NodeGetVolumeStatsResponse) String

func (m *NodeGetVolumeStatsResponse) String() string

func (*NodeGetVolumeStatsResponse) XXX_DiscardUnknown

func (m *NodeGetVolumeStatsResponse) XXX_DiscardUnknown()

func (*NodeGetVolumeStatsResponse) XXX_Marshal

func (m *NodeGetVolumeStatsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeGetVolumeStatsResponse) XXX_Merge

func (dst *NodeGetVolumeStatsResponse) XXX_Merge(src proto.Message)

func (*NodeGetVolumeStatsResponse) XXX_Size

func (m *NodeGetVolumeStatsResponse) XXX_Size() int

func (*NodeGetVolumeStatsResponse) XXX_Unmarshal

func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error

type NodePublishVolumeRequest

type NodePublishVolumeRequest struct {
	// The ID of the volume to publish. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// The CO SHALL set this field to the value returned by
	// `ControllerPublishVolume` if the corresponding Controller Plugin
	// has `PUBLISH_UNPUBLISH_VOLUME` controller capability, and SHALL be
	// left unset if the corresponding Controller Plugin does not have
	// this capability. This is an OPTIONAL field.
	PublishContext map[string]string `` /* 191-byte string literal not displayed */
	// The path to which the volume was staged by `NodeStageVolume`.
	// It MUST be an absolute path in the root filesystem of the process
	// serving this request.
	// It MUST be set if the Node Plugin implements the
	// `STAGE_UNSTAGE_VOLUME` node capability.
	// This is an OPTIONAL field.
	StagingTargetPath string `protobuf:"bytes,3,opt,name=staging_target_path,json=stagingTargetPath,proto3" json:"staging_target_path,omitempty"`
	// The path to which the volume will be published. It MUST be an
	// absolute path in the root filesystem of the process serving this
	// request. The CO SHALL ensure uniqueness of target_path per volume.
	// The CO SHALL ensure that the parent directory of this path exists
	// and that the process serving the request has `read` and `write`
	// permissions to that parent directory.
	// For volumes with an access type of block, the SP SHALL place the
	// block device at target_path.
	// For volumes with an access type of mount, the SP SHALL place the
	// mounted directory at target_path.
	// Creation of target_path is the responsibility of the SP.
	// This is a REQUIRED field.
	TargetPath string `protobuf:"bytes,4,opt,name=target_path,json=targetPath,proto3" json:"target_path,omitempty"`
	// Volume capability describing how the CO intends to use this volume.
	// SP MUST ensure the CO can use the published volume as described.
	// Otherwise SP MUST return the appropriate gRPC error code.
	// This is a REQUIRED field.
	VolumeCapability *VolumeCapability `protobuf:"bytes,5,opt,name=volume_capability,json=volumeCapability,proto3" json:"volume_capability,omitempty"`
	// Indicates SP MUST publish the volume in readonly mode.
	// This field is REQUIRED.
	Readonly bool `protobuf:"varint,6,opt,name=readonly,proto3" json:"readonly,omitempty"`
	// Secrets required by plugin to complete node publish volume request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets map[string]string `` /* 155-byte string literal not displayed */
	// Volume context as returned by CO in CreateVolumeRequest. This field
	// is OPTIONAL and MUST match the volume_context of the volume
	// identified by `volume_id`.
	VolumeContext        map[string]string `` /* 188-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*NodePublishVolumeRequest) Descriptor

func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int)

func (*NodePublishVolumeRequest) GetPublishContext

func (m *NodePublishVolumeRequest) GetPublishContext() map[string]string

func (*NodePublishVolumeRequest) GetReadonly

func (m *NodePublishVolumeRequest) GetReadonly() bool

func (*NodePublishVolumeRequest) GetSecrets

func (m *NodePublishVolumeRequest) GetSecrets() map[string]string

func (*NodePublishVolumeRequest) GetStagingTargetPath

func (m *NodePublishVolumeRequest) GetStagingTargetPath() string

func (*NodePublishVolumeRequest) GetTargetPath

func (m *NodePublishVolumeRequest) GetTargetPath() string

func (*NodePublishVolumeRequest) GetVolumeCapability

func (m *NodePublishVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*NodePublishVolumeRequest) GetVolumeContext

func (m *NodePublishVolumeRequest) GetVolumeContext() map[string]string

func (*NodePublishVolumeRequest) GetVolumeId

func (m *NodePublishVolumeRequest) GetVolumeId() string

func (*NodePublishVolumeRequest) ProtoMessage

func (*NodePublishVolumeRequest) ProtoMessage()

func (*NodePublishVolumeRequest) Reset

func (m *NodePublishVolumeRequest) Reset()

func (*NodePublishVolumeRequest) String

func (m *NodePublishVolumeRequest) String() string

func (*NodePublishVolumeRequest) XXX_DiscardUnknown

func (m *NodePublishVolumeRequest) XXX_DiscardUnknown()

func (*NodePublishVolumeRequest) XXX_Marshal

func (m *NodePublishVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodePublishVolumeRequest) XXX_Merge

func (dst *NodePublishVolumeRequest) XXX_Merge(src proto.Message)

func (*NodePublishVolumeRequest) XXX_Size

func (m *NodePublishVolumeRequest) XXX_Size() int

func (*NodePublishVolumeRequest) XXX_Unmarshal

func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error

type NodePublishVolumeResponse

type NodePublishVolumeResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodePublishVolumeResponse) Descriptor

func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int)

func (*NodePublishVolumeResponse) ProtoMessage

func (*NodePublishVolumeResponse) ProtoMessage()

func (*NodePublishVolumeResponse) Reset

func (m *NodePublishVolumeResponse) Reset()

func (*NodePublishVolumeResponse) String

func (m *NodePublishVolumeResponse) String() string

func (*NodePublishVolumeResponse) XXX_DiscardUnknown

func (m *NodePublishVolumeResponse) XXX_DiscardUnknown()

func (*NodePublishVolumeResponse) XXX_Marshal

func (m *NodePublishVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodePublishVolumeResponse) XXX_Merge

func (dst *NodePublishVolumeResponse) XXX_Merge(src proto.Message)

func (*NodePublishVolumeResponse) XXX_Size

func (m *NodePublishVolumeResponse) XXX_Size() int

func (*NodePublishVolumeResponse) XXX_Unmarshal

func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error

type NodeServiceCapability

type NodeServiceCapability struct {
	// Types that are valid to be assigned to Type:
	//	*NodeServiceCapability_Rpc
	Type                 isNodeServiceCapability_Type `protobuf_oneof:"type"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

Specifies a capability of the node service.

func (*NodeServiceCapability) Descriptor

func (*NodeServiceCapability) Descriptor() ([]byte, []int)

func (*NodeServiceCapability) GetRpc

func (*NodeServiceCapability) GetType

func (m *NodeServiceCapability) GetType() isNodeServiceCapability_Type

func (*NodeServiceCapability) ProtoMessage

func (*NodeServiceCapability) ProtoMessage()

func (*NodeServiceCapability) Reset

func (m *NodeServiceCapability) Reset()

func (*NodeServiceCapability) String

func (m *NodeServiceCapability) String() string

func (*NodeServiceCapability) XXX_DiscardUnknown

func (m *NodeServiceCapability) XXX_DiscardUnknown()

func (*NodeServiceCapability) XXX_Marshal

func (m *NodeServiceCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeServiceCapability) XXX_Merge

func (dst *NodeServiceCapability) XXX_Merge(src proto.Message)

func (*NodeServiceCapability) XXX_OneofFuncs

func (*NodeServiceCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*NodeServiceCapability) XXX_Size

func (m *NodeServiceCapability) XXX_Size() int

func (*NodeServiceCapability) XXX_Unmarshal

func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error

type NodeServiceCapability_RPC

type NodeServiceCapability_RPC struct {
	Type                 NodeServiceCapability_RPC_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.NodeServiceCapability_RPC_Type" json:"type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (*NodeServiceCapability_RPC) Descriptor

func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int)

func (*NodeServiceCapability_RPC) GetType

func (*NodeServiceCapability_RPC) ProtoMessage

func (*NodeServiceCapability_RPC) ProtoMessage()

func (*NodeServiceCapability_RPC) Reset

func (m *NodeServiceCapability_RPC) Reset()

func (*NodeServiceCapability_RPC) String

func (m *NodeServiceCapability_RPC) String() string

func (*NodeServiceCapability_RPC) XXX_DiscardUnknown

func (m *NodeServiceCapability_RPC) XXX_DiscardUnknown()

func (*NodeServiceCapability_RPC) XXX_Marshal

func (m *NodeServiceCapability_RPC) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeServiceCapability_RPC) XXX_Merge

func (dst *NodeServiceCapability_RPC) XXX_Merge(src proto.Message)

func (*NodeServiceCapability_RPC) XXX_Size

func (m *NodeServiceCapability_RPC) XXX_Size() int

func (*NodeServiceCapability_RPC) XXX_Unmarshal

func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error

type NodeServiceCapability_RPC_Type

type NodeServiceCapability_RPC_Type int32
const (
	NodeServiceCapability_RPC_UNKNOWN              NodeServiceCapability_RPC_Type = 0
	NodeServiceCapability_RPC_STAGE_UNSTAGE_VOLUME NodeServiceCapability_RPC_Type = 1
	// If Plugin implements GET_VOLUME_STATS capability
	// then it MUST implement NodeGetVolumeStats RPC
	// call for fetching volume statistics.
	NodeServiceCapability_RPC_GET_VOLUME_STATS NodeServiceCapability_RPC_Type = 2
)

func (NodeServiceCapability_RPC_Type) EnumDescriptor

func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int)

func (NodeServiceCapability_RPC_Type) String

type NodeServiceCapability_Rpc

type NodeServiceCapability_Rpc struct {
	Rpc *NodeServiceCapability_RPC `protobuf:"bytes,1,opt,name=rpc,proto3,oneof"`
}

type NodeStageVolumeRequest

type NodeStageVolumeRequest struct {
	// The ID of the volume to publish. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// The CO SHALL set this field to the value returned by
	// `ControllerPublishVolume` if the corresponding Controller Plugin
	// has `PUBLISH_UNPUBLISH_VOLUME` controller capability, and SHALL be
	// left unset if the corresponding Controller Plugin does not have
	// this capability. This is an OPTIONAL field.
	PublishContext map[string]string `` /* 191-byte string literal not displayed */
	// The path to which the volume MAY be staged. It MUST be an
	// absolute path in the root filesystem of the process serving this
	// request, and MUST be a directory. The CO SHALL ensure that there
	// is only one `staging_target_path` per volume. The CO SHALL ensure
	// that the path is directory and that the process serving the
	// request has `read` and `write` permission to that directory. The
	// CO SHALL be responsible for creating the directory if it does not
	// exist.
	// This is a REQUIRED field.
	StagingTargetPath string `protobuf:"bytes,3,opt,name=staging_target_path,json=stagingTargetPath,proto3" json:"staging_target_path,omitempty"`
	// Volume capability describing how the CO intends to use this volume.
	// SP MUST ensure the CO can use the staged volume as described.
	// Otherwise SP MUST return the appropriate gRPC error code.
	// This is a REQUIRED field.
	VolumeCapability *VolumeCapability `protobuf:"bytes,4,opt,name=volume_capability,json=volumeCapability,proto3" json:"volume_capability,omitempty"`
	// Secrets required by plugin to complete node stage volume request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets map[string]string `` /* 155-byte string literal not displayed */
	// Volume context as returned by CO in CreateVolumeRequest. This field
	// is OPTIONAL and MUST match the volume_context of the volume
	// identified by `volume_id`.
	VolumeContext        map[string]string `` /* 188-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*NodeStageVolumeRequest) Descriptor

func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int)

func (*NodeStageVolumeRequest) GetPublishContext

func (m *NodeStageVolumeRequest) GetPublishContext() map[string]string

func (*NodeStageVolumeRequest) GetSecrets

func (m *NodeStageVolumeRequest) GetSecrets() map[string]string

func (*NodeStageVolumeRequest) GetStagingTargetPath

func (m *NodeStageVolumeRequest) GetStagingTargetPath() string

func (*NodeStageVolumeRequest) GetVolumeCapability

func (m *NodeStageVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*NodeStageVolumeRequest) GetVolumeContext

func (m *NodeStageVolumeRequest) GetVolumeContext() map[string]string

func (*NodeStageVolumeRequest) GetVolumeId

func (m *NodeStageVolumeRequest) GetVolumeId() string

func (*NodeStageVolumeRequest) ProtoMessage

func (*NodeStageVolumeRequest) ProtoMessage()

func (*NodeStageVolumeRequest) Reset

func (m *NodeStageVolumeRequest) Reset()

func (*NodeStageVolumeRequest) String

func (m *NodeStageVolumeRequest) String() string

func (*NodeStageVolumeRequest) XXX_DiscardUnknown

func (m *NodeStageVolumeRequest) XXX_DiscardUnknown()

func (*NodeStageVolumeRequest) XXX_Marshal

func (m *NodeStageVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeStageVolumeRequest) XXX_Merge

func (dst *NodeStageVolumeRequest) XXX_Merge(src proto.Message)

func (*NodeStageVolumeRequest) XXX_Size

func (m *NodeStageVolumeRequest) XXX_Size() int

func (*NodeStageVolumeRequest) XXX_Unmarshal

func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error

type NodeStageVolumeResponse

type NodeStageVolumeResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeStageVolumeResponse) Descriptor

func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int)

func (*NodeStageVolumeResponse) ProtoMessage

func (*NodeStageVolumeResponse) ProtoMessage()

func (*NodeStageVolumeResponse) Reset

func (m *NodeStageVolumeResponse) Reset()

func (*NodeStageVolumeResponse) String

func (m *NodeStageVolumeResponse) String() string

func (*NodeStageVolumeResponse) XXX_DiscardUnknown

func (m *NodeStageVolumeResponse) XXX_DiscardUnknown()

func (*NodeStageVolumeResponse) XXX_Marshal

func (m *NodeStageVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeStageVolumeResponse) XXX_Merge

func (dst *NodeStageVolumeResponse) XXX_Merge(src proto.Message)

func (*NodeStageVolumeResponse) XXX_Size

func (m *NodeStageVolumeResponse) XXX_Size() int

func (*NodeStageVolumeResponse) XXX_Unmarshal

func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error

type NodeUnpublishVolumeRequest

type NodeUnpublishVolumeRequest struct {
	// The ID of the volume. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// The path at which the volume was published. It MUST be an absolute
	// path in the root filesystem of the process serving this request.
	// The SP MUST delete the file or directory it created at this path.
	// This is a REQUIRED field.
	TargetPath           string   `protobuf:"bytes,2,opt,name=target_path,json=targetPath,proto3" json:"target_path,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeUnpublishVolumeRequest) Descriptor

func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int)

func (*NodeUnpublishVolumeRequest) GetTargetPath

func (m *NodeUnpublishVolumeRequest) GetTargetPath() string

func (*NodeUnpublishVolumeRequest) GetVolumeId

func (m *NodeUnpublishVolumeRequest) GetVolumeId() string

func (*NodeUnpublishVolumeRequest) ProtoMessage

func (*NodeUnpublishVolumeRequest) ProtoMessage()

func (*NodeUnpublishVolumeRequest) Reset

func (m *NodeUnpublishVolumeRequest) Reset()

func (*NodeUnpublishVolumeRequest) String

func (m *NodeUnpublishVolumeRequest) String() string

func (*NodeUnpublishVolumeRequest) XXX_DiscardUnknown

func (m *NodeUnpublishVolumeRequest) XXX_DiscardUnknown()

func (*NodeUnpublishVolumeRequest) XXX_Marshal

func (m *NodeUnpublishVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeUnpublishVolumeRequest) XXX_Merge

func (dst *NodeUnpublishVolumeRequest) XXX_Merge(src proto.Message)

func (*NodeUnpublishVolumeRequest) XXX_Size

func (m *NodeUnpublishVolumeRequest) XXX_Size() int

func (*NodeUnpublishVolumeRequest) XXX_Unmarshal

func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error

type NodeUnpublishVolumeResponse

type NodeUnpublishVolumeResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeUnpublishVolumeResponse) Descriptor

func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int)

func (*NodeUnpublishVolumeResponse) ProtoMessage

func (*NodeUnpublishVolumeResponse) ProtoMessage()

func (*NodeUnpublishVolumeResponse) Reset

func (m *NodeUnpublishVolumeResponse) Reset()

func (*NodeUnpublishVolumeResponse) String

func (m *NodeUnpublishVolumeResponse) String() string

func (*NodeUnpublishVolumeResponse) XXX_DiscardUnknown

func (m *NodeUnpublishVolumeResponse) XXX_DiscardUnknown()

func (*NodeUnpublishVolumeResponse) XXX_Marshal

func (m *NodeUnpublishVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeUnpublishVolumeResponse) XXX_Merge

func (dst *NodeUnpublishVolumeResponse) XXX_Merge(src proto.Message)

func (*NodeUnpublishVolumeResponse) XXX_Size

func (m *NodeUnpublishVolumeResponse) XXX_Size() int

func (*NodeUnpublishVolumeResponse) XXX_Unmarshal

func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error

type NodeUnstageVolumeRequest

type NodeUnstageVolumeRequest struct {
	// The ID of the volume. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// The path at which the volume was staged. It MUST be an absolute
	// path in the root filesystem of the process serving this request.
	// This is a REQUIRED field.
	StagingTargetPath    string   `protobuf:"bytes,2,opt,name=staging_target_path,json=stagingTargetPath,proto3" json:"staging_target_path,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeUnstageVolumeRequest) Descriptor

func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int)

func (*NodeUnstageVolumeRequest) GetStagingTargetPath

func (m *NodeUnstageVolumeRequest) GetStagingTargetPath() string

func (*NodeUnstageVolumeRequest) GetVolumeId

func (m *NodeUnstageVolumeRequest) GetVolumeId() string

func (*NodeUnstageVolumeRequest) ProtoMessage

func (*NodeUnstageVolumeRequest) ProtoMessage()

func (*NodeUnstageVolumeRequest) Reset

func (m *NodeUnstageVolumeRequest) Reset()

func (*NodeUnstageVolumeRequest) String

func (m *NodeUnstageVolumeRequest) String() string

func (*NodeUnstageVolumeRequest) XXX_DiscardUnknown

func (m *NodeUnstageVolumeRequest) XXX_DiscardUnknown()

func (*NodeUnstageVolumeRequest) XXX_Marshal

func (m *NodeUnstageVolumeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeUnstageVolumeRequest) XXX_Merge

func (dst *NodeUnstageVolumeRequest) XXX_Merge(src proto.Message)

func (*NodeUnstageVolumeRequest) XXX_Size

func (m *NodeUnstageVolumeRequest) XXX_Size() int

func (*NodeUnstageVolumeRequest) XXX_Unmarshal

func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error

type NodeUnstageVolumeResponse

type NodeUnstageVolumeResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeUnstageVolumeResponse) Descriptor

func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int)

func (*NodeUnstageVolumeResponse) ProtoMessage

func (*NodeUnstageVolumeResponse) ProtoMessage()

func (*NodeUnstageVolumeResponse) Reset

func (m *NodeUnstageVolumeResponse) Reset()

func (*NodeUnstageVolumeResponse) String

func (m *NodeUnstageVolumeResponse) String() string

func (*NodeUnstageVolumeResponse) XXX_DiscardUnknown

func (m *NodeUnstageVolumeResponse) XXX_DiscardUnknown()

func (*NodeUnstageVolumeResponse) XXX_Marshal

func (m *NodeUnstageVolumeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*NodeUnstageVolumeResponse) XXX_Merge

func (dst *NodeUnstageVolumeResponse) XXX_Merge(src proto.Message)

func (*NodeUnstageVolumeResponse) XXX_Size

func (m *NodeUnstageVolumeResponse) XXX_Size() int

func (*NodeUnstageVolumeResponse) XXX_Unmarshal

func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error

type PluginCapability

type PluginCapability struct {
	// Types that are valid to be assigned to Type:
	//	*PluginCapability_Service_
	Type                 isPluginCapability_Type `protobuf_oneof:"type"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

Specifies a capability of the plugin.

func (*PluginCapability) Descriptor

func (*PluginCapability) Descriptor() ([]byte, []int)

func (*PluginCapability) GetService

func (m *PluginCapability) GetService() *PluginCapability_Service

func (*PluginCapability) GetType

func (m *PluginCapability) GetType() isPluginCapability_Type

func (*PluginCapability) ProtoMessage

func (*PluginCapability) ProtoMessage()

func (*PluginCapability) Reset

func (m *PluginCapability) Reset()

func (*PluginCapability) String

func (m *PluginCapability) String() string

func (*PluginCapability) XXX_DiscardUnknown

func (m *PluginCapability) XXX_DiscardUnknown()

func (*PluginCapability) XXX_Marshal

func (m *PluginCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*PluginCapability) XXX_Merge

func (dst *PluginCapability) XXX_Merge(src proto.Message)

func (*PluginCapability) XXX_OneofFuncs

func (*PluginCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*PluginCapability) XXX_Size

func (m *PluginCapability) XXX_Size() int

func (*PluginCapability) XXX_Unmarshal

func (m *PluginCapability) XXX_Unmarshal(b []byte) error

type PluginCapability_Service

type PluginCapability_Service struct {
	Type                 PluginCapability_Service_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.PluginCapability_Service_Type" json:"type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
	XXX_unrecognized     []byte                        `json:"-"`
	XXX_sizecache        int32                         `json:"-"`
}

func (*PluginCapability_Service) Descriptor

func (*PluginCapability_Service) Descriptor() ([]byte, []int)

func (*PluginCapability_Service) GetType

func (*PluginCapability_Service) ProtoMessage

func (*PluginCapability_Service) ProtoMessage()

func (*PluginCapability_Service) Reset

func (m *PluginCapability_Service) Reset()

func (*PluginCapability_Service) String

func (m *PluginCapability_Service) String() string

func (*PluginCapability_Service) XXX_DiscardUnknown

func (m *PluginCapability_Service) XXX_DiscardUnknown()

func (*PluginCapability_Service) XXX_Marshal

func (m *PluginCapability_Service) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*PluginCapability_Service) XXX_Merge

func (dst *PluginCapability_Service) XXX_Merge(src proto.Message)

func (*PluginCapability_Service) XXX_Size

func (m *PluginCapability_Service) XXX_Size() int

func (*PluginCapability_Service) XXX_Unmarshal

func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error

type PluginCapability_Service_

type PluginCapability_Service_ struct {
	Service *PluginCapability_Service `protobuf:"bytes,1,opt,name=service,proto3,oneof"`
}

type PluginCapability_Service_Type

type PluginCapability_Service_Type int32
const (
	PluginCapability_Service_UNKNOWN PluginCapability_Service_Type = 0
	// CONTROLLER_SERVICE indicates that the Plugin provides RPCs for
	// the ControllerService. Plugins SHOULD provide this capability.
	// In rare cases certain plugins MAY wish to omit the
	// ControllerService entirely from their implementation, but such
	// SHOULD NOT be the common case.
	// The presence of this capability determines whether the CO will
	// attempt to invoke the REQUIRED ControllerService RPCs, as well
	// as specific RPCs as indicated by ControllerGetCapabilities.
	PluginCapability_Service_CONTROLLER_SERVICE PluginCapability_Service_Type = 1
	// VOLUME_ACCESSIBILITY_CONSTRAINTS indicates that the volumes for
	// this plugin MAY NOT be equally accessible by all nodes in the
	// cluster. The CO MUST use the topology information returned by
	// CreateVolumeRequest along with the topology information
	// returned by NodeGetInfo to ensure that a given volume is
	// accessible from a given node when scheduling workloads.
	PluginCapability_Service_VOLUME_ACCESSIBILITY_CONSTRAINTS PluginCapability_Service_Type = 2
)

func (PluginCapability_Service_Type) EnumDescriptor

func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int)

func (PluginCapability_Service_Type) String

type ProbeRequest

type ProbeRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ProbeRequest) Descriptor

func (*ProbeRequest) Descriptor() ([]byte, []int)

func (*ProbeRequest) ProtoMessage

func (*ProbeRequest) ProtoMessage()

func (*ProbeRequest) Reset

func (m *ProbeRequest) Reset()

func (*ProbeRequest) String

func (m *ProbeRequest) String() string

func (*ProbeRequest) XXX_DiscardUnknown

func (m *ProbeRequest) XXX_DiscardUnknown()

func (*ProbeRequest) XXX_Marshal

func (m *ProbeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProbeRequest) XXX_Merge

func (dst *ProbeRequest) XXX_Merge(src proto.Message)

func (*ProbeRequest) XXX_Size

func (m *ProbeRequest) XXX_Size() int

func (*ProbeRequest) XXX_Unmarshal

func (m *ProbeRequest) XXX_Unmarshal(b []byte) error

type ProbeResponse

type ProbeResponse struct {
	// Readiness allows a plugin to report its initialization status back
	// to the CO. Initialization for some plugins MAY be time consuming
	// and it is important for a CO to distinguish between the following
	// cases:
	//
	// 1) The plugin is in an unhealthy state and MAY need restarting. In
	//    this case a gRPC error code SHALL be returned.
	// 2) The plugin is still initializing, but is otherwise perfectly
	//    healthy. In this case a successful response SHALL be returned
	//    with a readiness value of `false`. Calls to the plugin's
	//    Controller and/or Node services MAY fail due to an incomplete
	//    initialization state.
	// 3) The plugin has finished initializing and is ready to service
	//    calls to its Controller and/or Node services. A successful
	//    response is returned with a readiness value of `true`.
	//
	// This field is OPTIONAL. If not present, the caller SHALL assume
	// that the plugin is in a ready state and is accepting calls to its
	// Controller and/or Node services (according to the plugin's reported
	// capabilities).
	Ready                *wrappers.BoolValue `protobuf:"bytes,1,opt,name=ready,proto3" json:"ready,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (*ProbeResponse) Descriptor

func (*ProbeResponse) Descriptor() ([]byte, []int)

func (*ProbeResponse) GetReady

func (m *ProbeResponse) GetReady() *wrappers.BoolValue

func (*ProbeResponse) ProtoMessage

func (*ProbeResponse) ProtoMessage()

func (*ProbeResponse) Reset

func (m *ProbeResponse) Reset()

func (*ProbeResponse) String

func (m *ProbeResponse) String() string

func (*ProbeResponse) XXX_DiscardUnknown

func (m *ProbeResponse) XXX_DiscardUnknown()

func (*ProbeResponse) XXX_Marshal

func (m *ProbeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProbeResponse) XXX_Merge

func (dst *ProbeResponse) XXX_Merge(src proto.Message)

func (*ProbeResponse) XXX_Size

func (m *ProbeResponse) XXX_Size() int

func (*ProbeResponse) XXX_Unmarshal

func (m *ProbeResponse) XXX_Unmarshal(b []byte) error

type Snapshot

type Snapshot struct {
	// This is the complete size of the snapshot in bytes. The purpose of
	// this field is to give CO guidance on how much space is needed to
	// create a volume from this snapshot. The size of the volume MUST NOT
	// be less than the size of the source snapshot. This field is
	// OPTIONAL. If this field is not set, it indicates that this size is
	// unknown. The value of this field MUST NOT be negative and a size of
	// zero means it is unspecified.
	SizeBytes int64 `protobuf:"varint,1,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
	// The identifier for this snapshot, generated by the plugin.
	// This field is REQUIRED.
	// This field MUST contain enough information to uniquely identify
	// this specific snapshot vs all other snapshots supported by this
	// plugin.
	// This field SHALL be used by the CO in subsequent calls to refer to
	// this snapshot.
	// The SP is NOT responsible for global uniqueness of snapshot_id
	// across multiple SPs.
	SnapshotId string `protobuf:"bytes,2,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	// Identity information for the source volume. Note that creating a
	// snapshot from a snapshot is not supported here so the source has to
	// be a volume. This field is REQUIRED.
	SourceVolumeId string `protobuf:"bytes,3,opt,name=source_volume_id,json=sourceVolumeId,proto3" json:"source_volume_id,omitempty"`
	// Timestamp when the point-in-time snapshot is taken on the storage
	// system. This field is REQUIRED.
	CreationTime *timestamp.Timestamp `protobuf:"bytes,4,opt,name=creation_time,json=creationTime,proto3" json:"creation_time,omitempty"`
	// Indicates if a snapshot is ready to use as a
	// `volume_content_source` in a `CreateVolumeRequest`. The default
	// value is false. This field is REQUIRED.
	ReadyToUse           bool     `protobuf:"varint,5,opt,name=ready_to_use,json=readyToUse,proto3" json:"ready_to_use,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Information about a specific snapshot.

func (*Snapshot) Descriptor

func (*Snapshot) Descriptor() ([]byte, []int)

func (*Snapshot) GetCreationTime

func (m *Snapshot) GetCreationTime() *timestamp.Timestamp

func (*Snapshot) GetReadyToUse

func (m *Snapshot) GetReadyToUse() bool

func (*Snapshot) GetSizeBytes

func (m *Snapshot) GetSizeBytes() int64

func (*Snapshot) GetSnapshotId

func (m *Snapshot) GetSnapshotId() string

func (*Snapshot) GetSourceVolumeId

func (m *Snapshot) GetSourceVolumeId() string

func (*Snapshot) ProtoMessage

func (*Snapshot) ProtoMessage()

func (*Snapshot) Reset

func (m *Snapshot) Reset()

func (*Snapshot) String

func (m *Snapshot) String() string

func (*Snapshot) XXX_DiscardUnknown

func (m *Snapshot) XXX_DiscardUnknown()

func (*Snapshot) XXX_Marshal

func (m *Snapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Snapshot) XXX_Merge

func (dst *Snapshot) XXX_Merge(src proto.Message)

func (*Snapshot) XXX_Size

func (m *Snapshot) XXX_Size() int

func (*Snapshot) XXX_Unmarshal

func (m *Snapshot) XXX_Unmarshal(b []byte) error

type Topology

type Topology struct {
	Segments             map[string]string `` /* 157-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

Topology is a map of topological domains to topological segments. A topological domain is a sub-division of a cluster, like "region", "zone", "rack", etc. A topological segment is a specific instance of a topological domain, like "zone3", "rack3", etc. For example {"com.company/zone": "Z1", "com.company/rack": "R3"} Valid keys have two segments: an OPTIONAL prefix and name, separated by a slash (/), for example: "com.company.example/zone". The key name segment is REQUIRED. The prefix is OPTIONAL. The key name MUST be 63 characters or less, begin and end with an alphanumeric character ([a-z0-9A-Z]), and contain only dashes (-), underscores (_), dots (.), or alphanumerics in between, for example "zone". The key prefix MUST be 63 characters or less, begin and end with a lower-case alphanumeric character ([a-z0-9]), contain only dashes (-), dots (.), or lower-case alphanumerics in between, and follow domain name notation format (https://tools.ietf.org/html/rfc1035#section-2.3.1). The key prefix SHOULD include the plugin's host company name and/or the plugin name, to minimize the possibility of collisions with keys from other plugins. If a key prefix is specified, it MUST be identical across all topology keys returned by the SP (across all RPCs). Keys MUST be case-insensitive. Meaning the keys "Zone" and "zone" MUST not both exist. Each value (topological segment) MUST contain 1 or more strings. Each string MUST be 63 characters or less and begin and end with an alphanumeric character with '-', '_', '.', or alphanumerics in between.

func (*Topology) Descriptor

func (*Topology) Descriptor() ([]byte, []int)

func (*Topology) GetSegments

func (m *Topology) GetSegments() map[string]string

func (*Topology) ProtoMessage

func (*Topology) ProtoMessage()

func (*Topology) Reset

func (m *Topology) Reset()

func (*Topology) String

func (m *Topology) String() string

func (*Topology) XXX_DiscardUnknown

func (m *Topology) XXX_DiscardUnknown()

func (*Topology) XXX_Marshal

func (m *Topology) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Topology) XXX_Merge

func (dst *Topology) XXX_Merge(src proto.Message)

func (*Topology) XXX_Size

func (m *Topology) XXX_Size() int

func (*Topology) XXX_Unmarshal

func (m *Topology) XXX_Unmarshal(b []byte) error

type TopologyRequirement

type TopologyRequirement struct {
	// Specifies the list of topologies the provisioned volume MUST be
	// accessible from.
	// This field is OPTIONAL. If TopologyRequirement is specified either
	// requisite or preferred or both MUST be specified.
	//
	// If requisite is specified, the provisioned volume MUST be
	// accessible from at least one of the requisite topologies.
	//
	// Given
	//   x = number of topologies provisioned volume is accessible from
	//   n = number of requisite topologies
	// The CO MUST ensure n >= 1. The SP MUST ensure x >= 1
	// If x==n, than the SP MUST make the provisioned volume available to
	// all topologies from the list of requisite topologies. If it is
	// unable to do so, the SP MUST fail the CreateVolume call.
	// For example, if a volume should be accessible from a single zone,
	// and requisite =
	//   {"region": "R1", "zone": "Z2"}
	// then the provisioned volume MUST be accessible from the "region"
	// "R1" and the "zone" "Z2".
	// Similarly, if a volume should be accessible from two zones, and
	// requisite =
	//   {"region": "R1", "zone": "Z2"},
	//   {"region": "R1", "zone": "Z3"}
	// then the provisioned volume MUST be accessible from the "region"
	// "R1" and both "zone" "Z2" and "zone" "Z3".
	//
	// If x<n, than the SP SHALL choose x unique topologies from the list
	// of requisite topologies. If it is unable to do so, the SP MUST fail
	// the CreateVolume call.
	// For example, if a volume should be accessible from a single zone,
	// and requisite =
	//   {"region": "R1", "zone": "Z2"},
	//   {"region": "R1", "zone": "Z3"}
	// then the SP may choose to make the provisioned volume available in
	// either the "zone" "Z2" or the "zone" "Z3" in the "region" "R1".
	// Similarly, if a volume should be accessible from two zones, and
	// requisite =
	//   {"region": "R1", "zone": "Z2"},
	//   {"region": "R1", "zone": "Z3"},
	//   {"region": "R1", "zone": "Z4"}
	// then the provisioned volume MUST be accessible from any combination
	// of two unique topologies: e.g. "R1/Z2" and "R1/Z3", or "R1/Z2" and
	//  "R1/Z4", or "R1/Z3" and "R1/Z4".
	//
	// If x>n, than the SP MUST make the provisioned volume available from
	// all topologies from the list of requisite topologies and MAY choose
	// the remaining x-n unique topologies from the list of all possible
	// topologies. If it is unable to do so, the SP MUST fail the
	// CreateVolume call.
	// For example, if a volume should be accessible from two zones, and
	// requisite =
	//   {"region": "R1", "zone": "Z2"}
	// then the provisioned volume MUST be accessible from the "region"
	// "R1" and the "zone" "Z2" and the SP may select the second zone
	// independently, e.g. "R1/Z4".
	Requisite []*Topology `protobuf:"bytes,1,rep,name=requisite,proto3" json:"requisite,omitempty"`
	// Specifies the list of topologies the CO would prefer the volume to
	// be provisioned in.
	//
	// This field is OPTIONAL. If TopologyRequirement is specified either
	// requisite or preferred or both MUST be specified.
	//
	// An SP MUST attempt to make the provisioned volume available using
	// the preferred topologies in order from first to last.
	//
	// If requisite is specified, all topologies in preferred list MUST
	// also be present in the list of requisite topologies.
	//
	// If the SP is unable to to make the provisioned volume available
	// from any of the preferred topologies, the SP MAY choose a topology
	// from the list of requisite topologies.
	// If the list of requisite topologies is not specified, then the SP
	// MAY choose from the list of all possible topologies.
	// If the list of requisite topologies is specified and the SP is
	// unable to to make the provisioned volume available from any of the
	// requisite topologies it MUST fail the CreateVolume call.
	//
	// Example 1:
	// Given a volume should be accessible from a single zone, and
	// requisite =
	//   {"region": "R1", "zone": "Z2"},
	//   {"region": "R1", "zone": "Z3"}
	// preferred =
	//   {"region": "R1", "zone": "Z3"}
	// then the the SP SHOULD first attempt to make the provisioned volume
	// available from "zone" "Z3" in the "region" "R1" and fall back to
	// "zone" "Z2" in the "region" "R1" if that is not possible.
	//
	// Example 2:
	// Given a volume should be accessible from a single zone, and
	// requisite =
	//   {"region": "R1", "zone": "Z2"},
	//   {"region": "R1", "zone": "Z3"},
	//   {"region": "R1", "zone": "Z4"},
	//   {"region": "R1", "zone": "Z5"}
	// preferred =
	//   {"region": "R1", "zone": "Z4"},
	//   {"region": "R1", "zone": "Z2"}
	// then the the SP SHOULD first attempt to make the provisioned volume
	// accessible from "zone" "Z4" in the "region" "R1" and fall back to
	// "zone" "Z2" in the "region" "R1" if that is not possible. If that
	// is not possible, the SP may choose between either the "zone"
	// "Z3" or "Z5" in the "region" "R1".
	//
	// Example 3:
	// Given a volume should be accessible from TWO zones (because an
	// opaque parameter in CreateVolumeRequest, for example, specifies
	// the volume is accessible from two zones, aka synchronously
	// replicated), and
	// requisite =
	//   {"region": "R1", "zone": "Z2"},
	//   {"region": "R1", "zone": "Z3"},
	//   {"region": "R1", "zone": "Z4"},
	//   {"region": "R1", "zone": "Z5"}
	// preferred =
	//   {"region": "R1", "zone": "Z5"},
	//   {"region": "R1", "zone": "Z3"}
	// then the the SP SHOULD first attempt to make the provisioned volume
	// accessible from the combination of the two "zones" "Z5" and "Z3" in
	// the "region" "R1". If that's not possible, it should fall back to
	// a combination of "Z5" and other possibilities from the list of
	// requisite. If that's not possible, it should fall back  to a
	// combination of "Z3" and other possibilities from the list of
	// requisite. If that's not possible, it should fall back  to a
	// combination of other possibilities from the list of requisite.
	Preferred            []*Topology `protobuf:"bytes,2,rep,name=preferred,proto3" json:"preferred,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (*TopologyRequirement) Descriptor

func (*TopologyRequirement) Descriptor() ([]byte, []int)

func (*TopologyRequirement) GetPreferred

func (m *TopologyRequirement) GetPreferred() []*Topology

func (*TopologyRequirement) GetRequisite

func (m *TopologyRequirement) GetRequisite() []*Topology

func (*TopologyRequirement) ProtoMessage

func (*TopologyRequirement) ProtoMessage()

func (*TopologyRequirement) Reset

func (m *TopologyRequirement) Reset()

func (*TopologyRequirement) String

func (m *TopologyRequirement) String() string

func (*TopologyRequirement) XXX_DiscardUnknown

func (m *TopologyRequirement) XXX_DiscardUnknown()

func (*TopologyRequirement) XXX_Marshal

func (m *TopologyRequirement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TopologyRequirement) XXX_Merge

func (dst *TopologyRequirement) XXX_Merge(src proto.Message)

func (*TopologyRequirement) XXX_Size

func (m *TopologyRequirement) XXX_Size() int

func (*TopologyRequirement) XXX_Unmarshal

func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error

type ValidateVolumeCapabilitiesRequest

type ValidateVolumeCapabilitiesRequest struct {
	// The ID of the volume to check. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// Volume context as returned by CO in CreateVolumeRequest. This field
	// is OPTIONAL and MUST match the volume_context of the volume
	// identified by `volume_id`.
	VolumeContext map[string]string `` /* 188-byte string literal not displayed */
	// The capabilities that the CO wants to check for the volume. This
	// call SHALL return "confirmed" only if all the volume capabilities
	// specified below are supported. This field is REQUIRED.
	VolumeCapabilities []*VolumeCapability `protobuf:"bytes,3,rep,name=volume_capabilities,json=volumeCapabilities,proto3" json:"volume_capabilities,omitempty"`
	// See CreateVolumeRequest.parameters.
	// This field is OPTIONAL.
	Parameters map[string]string `` /* 161-byte string literal not displayed */
	// Secrets required by plugin to complete volume validation request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	Secrets              map[string]string `` /* 155-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ValidateVolumeCapabilitiesRequest) Descriptor

func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int)

func (*ValidateVolumeCapabilitiesRequest) GetParameters

func (m *ValidateVolumeCapabilitiesRequest) GetParameters() map[string]string

func (*ValidateVolumeCapabilitiesRequest) GetSecrets

func (m *ValidateVolumeCapabilitiesRequest) GetSecrets() map[string]string

func (*ValidateVolumeCapabilitiesRequest) GetVolumeCapabilities

func (m *ValidateVolumeCapabilitiesRequest) GetVolumeCapabilities() []*VolumeCapability

func (*ValidateVolumeCapabilitiesRequest) GetVolumeContext

func (m *ValidateVolumeCapabilitiesRequest) GetVolumeContext() map[string]string

func (*ValidateVolumeCapabilitiesRequest) GetVolumeId

func (m *ValidateVolumeCapabilitiesRequest) GetVolumeId() string

func (*ValidateVolumeCapabilitiesRequest) ProtoMessage

func (*ValidateVolumeCapabilitiesRequest) ProtoMessage()

func (*ValidateVolumeCapabilitiesRequest) Reset

func (*ValidateVolumeCapabilitiesRequest) String

func (*ValidateVolumeCapabilitiesRequest) XXX_DiscardUnknown

func (m *ValidateVolumeCapabilitiesRequest) XXX_DiscardUnknown()

func (*ValidateVolumeCapabilitiesRequest) XXX_Marshal

func (m *ValidateVolumeCapabilitiesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ValidateVolumeCapabilitiesRequest) XXX_Merge

func (dst *ValidateVolumeCapabilitiesRequest) XXX_Merge(src proto.Message)

func (*ValidateVolumeCapabilitiesRequest) XXX_Size

func (m *ValidateVolumeCapabilitiesRequest) XXX_Size() int

func (*ValidateVolumeCapabilitiesRequest) XXX_Unmarshal

func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error

type ValidateVolumeCapabilitiesResponse

type ValidateVolumeCapabilitiesResponse struct {
	// Confirmed indicates to the CO the set of capabilities that the
	// plugin has validated. This field SHALL only be set to a non-empty
	// value for successful validation responses.
	// For successful validation responses, the CO SHALL compare the
	// fields of this message to the originally requested capabilities in
	// order to guard against an older plugin reporting "valid" for newer
	// capability fields that it does not yet understand.
	// This field is OPTIONAL.
	Confirmed *ValidateVolumeCapabilitiesResponse_Confirmed `protobuf:"bytes,1,opt,name=confirmed,proto3" json:"confirmed,omitempty"`
	// Message to the CO if `confirmed` above is empty. This field is
	// OPTIONAL.
	// An empty string is equal to an unspecified field value.
	Message              string   `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*ValidateVolumeCapabilitiesResponse) Descriptor

func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int)

func (*ValidateVolumeCapabilitiesResponse) GetConfirmed

func (*ValidateVolumeCapabilitiesResponse) GetMessage

func (*ValidateVolumeCapabilitiesResponse) ProtoMessage

func (*ValidateVolumeCapabilitiesResponse) ProtoMessage()

func (*ValidateVolumeCapabilitiesResponse) Reset

func (*ValidateVolumeCapabilitiesResponse) String

func (*ValidateVolumeCapabilitiesResponse) XXX_DiscardUnknown

func (m *ValidateVolumeCapabilitiesResponse) XXX_DiscardUnknown()

func (*ValidateVolumeCapabilitiesResponse) XXX_Marshal

func (m *ValidateVolumeCapabilitiesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ValidateVolumeCapabilitiesResponse) XXX_Merge

func (dst *ValidateVolumeCapabilitiesResponse) XXX_Merge(src proto.Message)

func (*ValidateVolumeCapabilitiesResponse) XXX_Size

func (*ValidateVolumeCapabilitiesResponse) XXX_Unmarshal

func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error

type ValidateVolumeCapabilitiesResponse_Confirmed

type ValidateVolumeCapabilitiesResponse_Confirmed struct {
	// Volume context validated by the plugin.
	// This field is OPTIONAL.
	VolumeContext map[string]string `` /* 188-byte string literal not displayed */
	// Volume capabilities supported by the plugin.
	// This field is REQUIRED.
	VolumeCapabilities []*VolumeCapability `protobuf:"bytes,2,rep,name=volume_capabilities,json=volumeCapabilities,proto3" json:"volume_capabilities,omitempty"`
	// The volume creation parameters validated by the plugin.
	// This field is OPTIONAL.
	Parameters           map[string]string `` /* 161-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetParameters

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetVolumeCapabilities

func (m *ValidateVolumeCapabilitiesResponse_Confirmed) GetVolumeCapabilities() []*VolumeCapability

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetVolumeContext

func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage

func (*ValidateVolumeCapabilitiesResponse_Confirmed) Reset

func (*ValidateVolumeCapabilitiesResponse_Confirmed) String

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_DiscardUnknown

func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_DiscardUnknown()

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Marshal

func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Merge

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Size

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal

type Volume

type Volume struct {
	// The capacity of the volume in bytes. This field is OPTIONAL. If not
	// set (value of 0), it indicates that the capacity of the volume is
	// unknown (e.g., NFS share).
	// The value of this field MUST NOT be negative.
	CapacityBytes int64 `protobuf:"varint,1,opt,name=capacity_bytes,json=capacityBytes,proto3" json:"capacity_bytes,omitempty"`
	// The identifier for this volume, generated by the plugin.
	// This field is REQUIRED.
	// This field MUST contain enough information to uniquely identify
	// this specific volume vs all other volumes supported by this plugin.
	// This field SHALL be used by the CO in subsequent calls to refer to
	// this volume.
	// The SP is NOT responsible for global uniqueness of volume_id across
	// multiple SPs.
	VolumeId string `protobuf:"bytes,2,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// Opaque static properties of the volume. SP MAY use this field to
	// ensure subsequent volume validation and publishing calls have
	// contextual information.
	// The contents of this field SHALL be opaque to a CO.
	// The contents of this field SHALL NOT be mutable.
	// The contents of this field SHALL be safe for the CO to cache.
	// The contents of this field SHOULD NOT contain sensitive
	// information.
	// The contents of this field SHOULD NOT be used for uniquely
	// identifying a volume. The `volume_id` alone SHOULD be sufficient to
	// identify the volume.
	// A volume uniquely identified by `volume_id` SHALL always report the
	// same volume_context.
	// This field is OPTIONAL and when present MUST be passed to volume
	// validation and publishing calls.
	VolumeContext map[string]string `` /* 188-byte string literal not displayed */
	// If specified, indicates that the volume is not empty and is
	// pre-populated with data from the specified source.
	// This field is OPTIONAL.
	ContentSource *VolumeContentSource `protobuf:"bytes,4,opt,name=content_source,json=contentSource,proto3" json:"content_source,omitempty"`
	// Specifies where (regions, zones, racks, etc.) the provisioned
	// volume is accessible from.
	// A plugin that returns this field MUST also set the
	// VOLUME_ACCESSIBILITY_CONSTRAINTS plugin capability.
	// An SP MAY specify multiple topologies to indicate the volume is
	// accessible from multiple locations.
	// COs MAY use this information along with the topology information
	// returned by NodeGetInfo to ensure that a given volume is accessible
	// from a given node when scheduling workloads.
	// This field is OPTIONAL. If it is not specified, the CO MAY assume
	// the volume is equally accessible from all nodes in the cluster and
	// MAY schedule workloads referencing the volume on any available
	// node.
	//
	// Example 1:
	//   accessible_topology = {"region": "R1", "zone": "Z2"}
	// Indicates a volume accessible only from the "region" "R1" and the
	// "zone" "Z2".
	//
	// Example 2:
	//   accessible_topology =
	//     {"region": "R1", "zone": "Z2"},
	//     {"region": "R1", "zone": "Z3"}
	// Indicates a volume accessible from both "zone" "Z2" and "zone" "Z3"
	// in the "region" "R1".
	AccessibleTopology   []*Topology `protobuf:"bytes,5,rep,name=accessible_topology,json=accessibleTopology,proto3" json:"accessible_topology,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

Information about a specific volume.

func (*Volume) Descriptor

func (*Volume) Descriptor() ([]byte, []int)

func (*Volume) GetAccessibleTopology

func (m *Volume) GetAccessibleTopology() []*Topology

func (*Volume) GetCapacityBytes

func (m *Volume) GetCapacityBytes() int64

func (*Volume) GetContentSource

func (m *Volume) GetContentSource() *VolumeContentSource

func (*Volume) GetVolumeContext

func (m *Volume) GetVolumeContext() map[string]string

func (*Volume) GetVolumeId

func (m *Volume) GetVolumeId() string

func (*Volume) ProtoMessage

func (*Volume) ProtoMessage()

func (*Volume) Reset

func (m *Volume) Reset()

func (*Volume) String

func (m *Volume) String() string

func (*Volume) XXX_DiscardUnknown

func (m *Volume) XXX_DiscardUnknown()

func (*Volume) XXX_Marshal

func (m *Volume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Volume) XXX_Merge

func (dst *Volume) XXX_Merge(src proto.Message)

func (*Volume) XXX_Size

func (m *Volume) XXX_Size() int

func (*Volume) XXX_Unmarshal

func (m *Volume) XXX_Unmarshal(b []byte) error

type VolumeCapability

type VolumeCapability struct {
	// Specifies what API the volume will be accessed using. One of the
	// following fields MUST be specified.
	//
	// Types that are valid to be assigned to AccessType:
	//	*VolumeCapability_Block
	//	*VolumeCapability_Mount
	AccessType isVolumeCapability_AccessType `protobuf_oneof:"access_type"`
	// This is a REQUIRED field.
	AccessMode           *VolumeCapability_AccessMode `protobuf:"bytes,3,opt,name=access_mode,json=accessMode,proto3" json:"access_mode,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

Specify a capability of a volume.

func (*VolumeCapability) Descriptor

func (*VolumeCapability) Descriptor() ([]byte, []int)

func (*VolumeCapability) GetAccessMode

func (m *VolumeCapability) GetAccessMode() *VolumeCapability_AccessMode

func (*VolumeCapability) GetAccessType

func (m *VolumeCapability) GetAccessType() isVolumeCapability_AccessType

func (*VolumeCapability) GetBlock

func (*VolumeCapability) GetMount

func (*VolumeCapability) ProtoMessage

func (*VolumeCapability) ProtoMessage()

func (*VolumeCapability) Reset

func (m *VolumeCapability) Reset()

func (*VolumeCapability) String

func (m *VolumeCapability) String() string

func (*VolumeCapability) XXX_DiscardUnknown

func (m *VolumeCapability) XXX_DiscardUnknown()

func (*VolumeCapability) XXX_Marshal

func (m *VolumeCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeCapability) XXX_Merge

func (dst *VolumeCapability) XXX_Merge(src proto.Message)

func (*VolumeCapability) XXX_OneofFuncs

func (*VolumeCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*VolumeCapability) XXX_Size

func (m *VolumeCapability) XXX_Size() int

func (*VolumeCapability) XXX_Unmarshal

func (m *VolumeCapability) XXX_Unmarshal(b []byte) error

type VolumeCapability_AccessMode

type VolumeCapability_AccessMode struct {
	// This field is REQUIRED.
	Mode                 VolumeCapability_AccessMode_Mode `protobuf:"varint,1,opt,name=mode,proto3,enum=csi.v1.VolumeCapability_AccessMode_Mode" json:"mode,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
	XXX_unrecognized     []byte                           `json:"-"`
	XXX_sizecache        int32                            `json:"-"`
}

Specify how a volume can be accessed.

func (*VolumeCapability_AccessMode) Descriptor

func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int)

func (*VolumeCapability_AccessMode) GetMode

func (*VolumeCapability_AccessMode) ProtoMessage

func (*VolumeCapability_AccessMode) ProtoMessage()

func (*VolumeCapability_AccessMode) Reset

func (m *VolumeCapability_AccessMode) Reset()

func (*VolumeCapability_AccessMode) String

func (m *VolumeCapability_AccessMode) String() string

func (*VolumeCapability_AccessMode) XXX_DiscardUnknown

func (m *VolumeCapability_AccessMode) XXX_DiscardUnknown()

func (*VolumeCapability_AccessMode) XXX_Marshal

func (m *VolumeCapability_AccessMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeCapability_AccessMode) XXX_Merge

func (dst *VolumeCapability_AccessMode) XXX_Merge(src proto.Message)

func (*VolumeCapability_AccessMode) XXX_Size

func (m *VolumeCapability_AccessMode) XXX_Size() int

func (*VolumeCapability_AccessMode) XXX_Unmarshal

func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error

type VolumeCapability_AccessMode_Mode

type VolumeCapability_AccessMode_Mode int32
const (
	VolumeCapability_AccessMode_UNKNOWN VolumeCapability_AccessMode_Mode = 0
	// Can only be published once as read/write on a single node, at
	// any given time.
	VolumeCapability_AccessMode_SINGLE_NODE_WRITER VolumeCapability_AccessMode_Mode = 1
	// Can only be published once as readonly on a single node, at
	// any given time.
	VolumeCapability_AccessMode_SINGLE_NODE_READER_ONLY VolumeCapability_AccessMode_Mode = 2
	// Can be published as readonly at multiple nodes simultaneously.
	VolumeCapability_AccessMode_MULTI_NODE_READER_ONLY VolumeCapability_AccessMode_Mode = 3
	// Can be published at multiple nodes simultaneously. Only one of
	// the node can be used as read/write. The rest will be readonly.
	VolumeCapability_AccessMode_MULTI_NODE_SINGLE_WRITER VolumeCapability_AccessMode_Mode = 4
	// Can be published as read/write at multiple nodes
	// simultaneously.
	VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER VolumeCapability_AccessMode_Mode = 5
)

func (VolumeCapability_AccessMode_Mode) EnumDescriptor

func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int)

func (VolumeCapability_AccessMode_Mode) String

type VolumeCapability_Block

type VolumeCapability_Block struct {
	Block *VolumeCapability_BlockVolume `protobuf:"bytes,1,opt,name=block,proto3,oneof"`
}

type VolumeCapability_BlockVolume

type VolumeCapability_BlockVolume struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Indicate that the volume will be accessed via the block device API.

func (*VolumeCapability_BlockVolume) Descriptor

func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int)

func (*VolumeCapability_BlockVolume) ProtoMessage

func (*VolumeCapability_BlockVolume) ProtoMessage()

func (*VolumeCapability_BlockVolume) Reset

func (m *VolumeCapability_BlockVolume) Reset()

func (*VolumeCapability_BlockVolume) String

func (*VolumeCapability_BlockVolume) XXX_DiscardUnknown

func (m *VolumeCapability_BlockVolume) XXX_DiscardUnknown()

func (*VolumeCapability_BlockVolume) XXX_Marshal

func (m *VolumeCapability_BlockVolume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeCapability_BlockVolume) XXX_Merge

func (dst *VolumeCapability_BlockVolume) XXX_Merge(src proto.Message)

func (*VolumeCapability_BlockVolume) XXX_Size

func (m *VolumeCapability_BlockVolume) XXX_Size() int

func (*VolumeCapability_BlockVolume) XXX_Unmarshal

func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error

type VolumeCapability_Mount

type VolumeCapability_Mount struct {
	Mount *VolumeCapability_MountVolume `protobuf:"bytes,2,opt,name=mount,proto3,oneof"`
}

type VolumeCapability_MountVolume

type VolumeCapability_MountVolume struct {
	// The filesystem type. This field is OPTIONAL.
	// An empty string is equal to an unspecified field value.
	FsType string `protobuf:"bytes,1,opt,name=fs_type,json=fsType,proto3" json:"fs_type,omitempty"`
	// The mount options that can be used for the volume. This field is
	// OPTIONAL. `mount_flags` MAY contain sensitive information.
	// Therefore, the CO and the Plugin MUST NOT leak this information
	// to untrusted entities. The total size of this repeated field
	// SHALL NOT exceed 4 KiB.
	MountFlags           []string `protobuf:"bytes,2,rep,name=mount_flags,json=mountFlags,proto3" json:"mount_flags,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Indicate that the volume will be accessed via the filesystem API.

func (*VolumeCapability_MountVolume) Descriptor

func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int)

func (*VolumeCapability_MountVolume) GetFsType

func (m *VolumeCapability_MountVolume) GetFsType() string

func (*VolumeCapability_MountVolume) GetMountFlags

func (m *VolumeCapability_MountVolume) GetMountFlags() []string

func (*VolumeCapability_MountVolume) ProtoMessage

func (*VolumeCapability_MountVolume) ProtoMessage()

func (*VolumeCapability_MountVolume) Reset

func (m *VolumeCapability_MountVolume) Reset()

func (*VolumeCapability_MountVolume) String

func (*VolumeCapability_MountVolume) XXX_DiscardUnknown

func (m *VolumeCapability_MountVolume) XXX_DiscardUnknown()

func (*VolumeCapability_MountVolume) XXX_Marshal

func (m *VolumeCapability_MountVolume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeCapability_MountVolume) XXX_Merge

func (dst *VolumeCapability_MountVolume) XXX_Merge(src proto.Message)

func (*VolumeCapability_MountVolume) XXX_Size

func (m *VolumeCapability_MountVolume) XXX_Size() int

func (*VolumeCapability_MountVolume) XXX_Unmarshal

func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error

type VolumeContentSource

type VolumeContentSource struct {
	// Types that are valid to be assigned to Type:
	//	*VolumeContentSource_Snapshot
	//	*VolumeContentSource_Volume
	Type                 isVolumeContentSource_Type `protobuf_oneof:"type"`
	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
	XXX_unrecognized     []byte                     `json:"-"`
	XXX_sizecache        int32                      `json:"-"`
}

Specifies what source the volume will be created from. One of the type fields MUST be specified.

func (*VolumeContentSource) Descriptor

func (*VolumeContentSource) Descriptor() ([]byte, []int)

func (*VolumeContentSource) GetSnapshot

func (*VolumeContentSource) GetType

func (m *VolumeContentSource) GetType() isVolumeContentSource_Type

func (*VolumeContentSource) GetVolume

func (*VolumeContentSource) ProtoMessage

func (*VolumeContentSource) ProtoMessage()

func (*VolumeContentSource) Reset

func (m *VolumeContentSource) Reset()

func (*VolumeContentSource) String

func (m *VolumeContentSource) String() string

func (*VolumeContentSource) XXX_DiscardUnknown

func (m *VolumeContentSource) XXX_DiscardUnknown()

func (*VolumeContentSource) XXX_Marshal

func (m *VolumeContentSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeContentSource) XXX_Merge

func (dst *VolumeContentSource) XXX_Merge(src proto.Message)

func (*VolumeContentSource) XXX_OneofFuncs

func (*VolumeContentSource) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*VolumeContentSource) XXX_Size

func (m *VolumeContentSource) XXX_Size() int

func (*VolumeContentSource) XXX_Unmarshal

func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error

type VolumeContentSource_Snapshot

type VolumeContentSource_Snapshot struct {
	Snapshot *VolumeContentSource_SnapshotSource `protobuf:"bytes,1,opt,name=snapshot,proto3,oneof"`
}

type VolumeContentSource_SnapshotSource

type VolumeContentSource_SnapshotSource struct {
	// Contains identity information for the existing source snapshot.
	// This field is REQUIRED. Plugin is REQUIRED to support creating
	// volume from snapshot if it supports the capability
	// CREATE_DELETE_SNAPSHOT.
	SnapshotId           string   `protobuf:"bytes,1,opt,name=snapshot_id,json=snapshotId,proto3" json:"snapshot_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*VolumeContentSource_SnapshotSource) Descriptor

func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int)

func (*VolumeContentSource_SnapshotSource) GetSnapshotId

func (m *VolumeContentSource_SnapshotSource) GetSnapshotId() string

func (*VolumeContentSource_SnapshotSource) ProtoMessage

func (*VolumeContentSource_SnapshotSource) ProtoMessage()

func (*VolumeContentSource_SnapshotSource) Reset

func (*VolumeContentSource_SnapshotSource) String

func (*VolumeContentSource_SnapshotSource) XXX_DiscardUnknown

func (m *VolumeContentSource_SnapshotSource) XXX_DiscardUnknown()

func (*VolumeContentSource_SnapshotSource) XXX_Marshal

func (m *VolumeContentSource_SnapshotSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeContentSource_SnapshotSource) XXX_Merge

func (dst *VolumeContentSource_SnapshotSource) XXX_Merge(src proto.Message)

func (*VolumeContentSource_SnapshotSource) XXX_Size

func (*VolumeContentSource_SnapshotSource) XXX_Unmarshal

func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error

type VolumeContentSource_Volume

type VolumeContentSource_Volume struct {
	Volume *VolumeContentSource_VolumeSource `protobuf:"bytes,2,opt,name=volume,proto3,oneof"`
}

type VolumeContentSource_VolumeSource

type VolumeContentSource_VolumeSource struct {
	// Contains identity information for the existing source volume.
	// This field is REQUIRED. Plugins reporting CLONE_VOLUME
	// capability MUST support creating a volume from another volume.
	VolumeId             string   `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*VolumeContentSource_VolumeSource) Descriptor

func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int)

func (*VolumeContentSource_VolumeSource) GetVolumeId

func (m *VolumeContentSource_VolumeSource) GetVolumeId() string

func (*VolumeContentSource_VolumeSource) ProtoMessage

func (*VolumeContentSource_VolumeSource) ProtoMessage()

func (*VolumeContentSource_VolumeSource) Reset

func (*VolumeContentSource_VolumeSource) String

func (*VolumeContentSource_VolumeSource) XXX_DiscardUnknown

func (m *VolumeContentSource_VolumeSource) XXX_DiscardUnknown()

func (*VolumeContentSource_VolumeSource) XXX_Marshal

func (m *VolumeContentSource_VolumeSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeContentSource_VolumeSource) XXX_Merge

func (dst *VolumeContentSource_VolumeSource) XXX_Merge(src proto.Message)

func (*VolumeContentSource_VolumeSource) XXX_Size

func (m *VolumeContentSource_VolumeSource) XXX_Size() int

func (*VolumeContentSource_VolumeSource) XXX_Unmarshal

func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error

type VolumeUsage

type VolumeUsage struct {
	// The available capacity in specified Unit. This field is OPTIONAL.
	// The value of this field MUST NOT be negative.
	Available int64 `protobuf:"varint,1,opt,name=available,proto3" json:"available,omitempty"`
	// The total capacity in specified Unit. This field is REQUIRED.
	// The value of this field MUST NOT be negative.
	Total int64 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	// The used capacity in specified Unit. This field is OPTIONAL.
	// The value of this field MUST NOT be negative.
	Used int64 `protobuf:"varint,3,opt,name=used,proto3" json:"used,omitempty"`
	// Units by which values are measured. This field is REQUIRED.
	Unit                 VolumeUsage_Unit `protobuf:"varint,4,opt,name=unit,proto3,enum=csi.v1.VolumeUsage_Unit" json:"unit,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*VolumeUsage) Descriptor

func (*VolumeUsage) Descriptor() ([]byte, []int)

func (*VolumeUsage) GetAvailable

func (m *VolumeUsage) GetAvailable() int64

func (*VolumeUsage) GetTotal

func (m *VolumeUsage) GetTotal() int64

func (*VolumeUsage) GetUnit

func (m *VolumeUsage) GetUnit() VolumeUsage_Unit

func (*VolumeUsage) GetUsed

func (m *VolumeUsage) GetUsed() int64

func (*VolumeUsage) ProtoMessage

func (*VolumeUsage) ProtoMessage()

func (*VolumeUsage) Reset

func (m *VolumeUsage) Reset()

func (*VolumeUsage) String

func (m *VolumeUsage) String() string

func (*VolumeUsage) XXX_DiscardUnknown

func (m *VolumeUsage) XXX_DiscardUnknown()

func (*VolumeUsage) XXX_Marshal

func (m *VolumeUsage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VolumeUsage) XXX_Merge

func (dst *VolumeUsage) XXX_Merge(src proto.Message)

func (*VolumeUsage) XXX_Size

func (m *VolumeUsage) XXX_Size() int

func (*VolumeUsage) XXX_Unmarshal

func (m *VolumeUsage) XXX_Unmarshal(b []byte) error

type VolumeUsage_Unit

type VolumeUsage_Unit int32
const (
	VolumeUsage_UNKNOWN VolumeUsage_Unit = 0
	VolumeUsage_BYTES   VolumeUsage_Unit = 1
	VolumeUsage_INODES  VolumeUsage_Unit = 2
)

func (VolumeUsage_Unit) EnumDescriptor

func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int)

func (VolumeUsage_Unit) String

func (x VolumeUsage_Unit) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL