csi

package
v1.9.0 Latest Latest
Warning

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

Go to latest
Published: Aug 14, 2023 License: Apache-2.0 Imports: 10 Imported by: 893

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",
	9:  "EXPAND_VOLUME",
	10: "LIST_VOLUMES_PUBLISHED_NODES",
	11: "VOLUME_CONDITION",
	12: "GET_VOLUME",
	13: "SINGLE_NODE_MULTI_WRITER",
	14: "MODIFY_VOLUME",
}
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,
	"EXPAND_VOLUME":                9,
	"LIST_VOLUMES_PUBLISHED_NODES": 10,
	"VOLUME_CONDITION":             11,
	"GET_VOLUME":                   12,
	"SINGLE_NODE_MULTI_WRITER":     13,
	"MODIFY_VOLUME":                14,
}
View Source
var E_AlphaEnum = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.EnumOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1060,
	Name:          "csi.v1.alpha_enum",
	Tag:           "varint,1060,opt,name=alpha_enum",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var E_AlphaEnumValue = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.EnumValueOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1060,
	Name:          "csi.v1.alpha_enum_value",
	Tag:           "varint,1060,opt,name=alpha_enum_value",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var E_AlphaField = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.FieldOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1060,
	Name:          "csi.v1.alpha_field",
	Tag:           "varint,1060,opt,name=alpha_field",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var E_AlphaMessage = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.MessageOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1060,
	Name:          "csi.v1.alpha_message",
	Tag:           "varint,1060,opt,name=alpha_message",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var E_AlphaMethod = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.MethodOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1060,
	Name:          "csi.v1.alpha_method",
	Tag:           "varint,1060,opt,name=alpha_method",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var E_AlphaService = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.ServiceOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1060,
	Name:          "csi.v1.alpha_service",
	Tag:           "varint,1060,opt,name=alpha_service",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
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",
	Filename:      "github.com/container-storage-interface/spec/csi.proto",
}
View Source
var GroupControllerServiceCapability_RPC_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT",
}
View Source
var GroupControllerServiceCapability_RPC_Type_value = map[string]int32{
	"UNKNOWN": 0,
	"CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT": 1,
}
View Source
var NodeServiceCapability_RPC_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "STAGE_UNSTAGE_VOLUME",
	2: "GET_VOLUME_STATS",
	3: "EXPAND_VOLUME",
	4: "VOLUME_CONDITION",
	5: "SINGLE_NODE_MULTI_WRITER",
	6: "VOLUME_MOUNT_GROUP",
}
View Source
var NodeServiceCapability_RPC_Type_value = map[string]int32{
	"UNKNOWN":                  0,
	"STAGE_UNSTAGE_VOLUME":     1,
	"GET_VOLUME_STATS":         2,
	"EXPAND_VOLUME":            3,
	"VOLUME_CONDITION":         4,
	"SINGLE_NODE_MULTI_WRITER": 5,
	"VOLUME_MOUNT_GROUP":       6,
}
View Source
var PluginCapability_Service_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "CONTROLLER_SERVICE",
	2: "VOLUME_ACCESSIBILITY_CONSTRAINTS",
	3: "GROUP_CONTROLLER_SERVICE",
}
View Source
var PluginCapability_Service_Type_value = map[string]int32{
	"UNKNOWN":                          0,
	"CONTROLLER_SERVICE":               1,
	"VOLUME_ACCESSIBILITY_CONSTRAINTS": 2,
	"GROUP_CONTROLLER_SERVICE":         3,
}
View Source
var PluginCapability_VolumeExpansion_Type_name = map[int32]string{
	0: "UNKNOWN",
	1: "ONLINE",
	2: "OFFLINE",
}
View Source
var PluginCapability_VolumeExpansion_Type_value = map[string]int32{
	"UNKNOWN": 0,
	"ONLINE":  1,
	"OFFLINE": 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",
	6: "SINGLE_NODE_SINGLE_WRITER",
	7: "SINGLE_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,
	"SINGLE_NODE_SINGLE_WRITER": 6,
	"SINGLE_NODE_MULTI_WRITER":  7,
}
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 RegisterGroupControllerServer added in v1.8.0

func RegisterGroupControllerServer(s *grpc.Server, srv GroupControllerServer)

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 added in v1.0.0

func (m *CapacityRange) XXX_DiscardUnknown()

func (*CapacityRange) XXX_Marshal added in v1.0.0

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

func (*CapacityRange) XXX_Merge added in v1.0.0

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

func (*CapacityRange) XXX_Size added in v1.0.0

func (m *CapacityRange) XXX_Size() int

func (*CapacityRange) XXX_Unmarshal added in v1.0.0

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

type ControllerClient

type ControllerClient interface {
	CreateVolume(ctx context.Context, in *CreateVolumeRequest, opts ...grpc.CallOption) (*CreateVolumeResponse, error)
	DeleteVolume(ctx context.Context, in *DeleteVolumeRequest, opts ...grpc.CallOption) (*DeleteVolumeResponse, error)
	ControllerPublishVolume(ctx context.Context, in *ControllerPublishVolumeRequest, opts ...grpc.CallOption) (*ControllerPublishVolumeResponse, error)
	ControllerUnpublishVolume(ctx context.Context, in *ControllerUnpublishVolumeRequest, opts ...grpc.CallOption) (*ControllerUnpublishVolumeResponse, error)
	ValidateVolumeCapabilities(ctx context.Context, in *ValidateVolumeCapabilitiesRequest, opts ...grpc.CallOption) (*ValidateVolumeCapabilitiesResponse, error)
	ListVolumes(ctx context.Context, in *ListVolumesRequest, opts ...grpc.CallOption) (*ListVolumesResponse, error)
	GetCapacity(ctx context.Context, in *GetCapacityRequest, opts ...grpc.CallOption) (*GetCapacityResponse, error)
	ControllerGetCapabilities(ctx context.Context, in *ControllerGetCapabilitiesRequest, opts ...grpc.CallOption) (*ControllerGetCapabilitiesResponse, error)
	CreateSnapshot(ctx context.Context, in *CreateSnapshotRequest, opts ...grpc.CallOption) (*CreateSnapshotResponse, error)
	DeleteSnapshot(ctx context.Context, in *DeleteSnapshotRequest, opts ...grpc.CallOption) (*DeleteSnapshotResponse, error)
	ListSnapshots(ctx context.Context, in *ListSnapshotsRequest, opts ...grpc.CallOption) (*ListSnapshotsResponse, error)
	ControllerExpandVolume(ctx context.Context, in *ControllerExpandVolumeRequest, opts ...grpc.CallOption) (*ControllerExpandVolumeResponse, error)
	ControllerGetVolume(ctx context.Context, in *ControllerGetVolumeRequest, opts ...grpc.CallOption) (*ControllerGetVolumeResponse, error)
	ControllerModifyVolume(ctx context.Context, in *ControllerModifyVolumeRequest, opts ...grpc.CallOption) (*ControllerModifyVolumeResponse, error)
}

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 ControllerExpandVolumeRequest added in v1.1.0

type ControllerExpandVolumeRequest struct {
	// The ID of the volume to expand. This field is REQUIRED.
	VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"`
	// This allows CO to specify the capacity requirements of the volume
	// after expansion. This field is REQUIRED.
	CapacityRange *CapacityRange `protobuf:"bytes,2,opt,name=capacity_range,json=capacityRange,proto3" json:"capacity_range,omitempty"`
	// Secrets required by the plugin for expanding the volume.
	// This field is OPTIONAL.
	Secrets map[string]string `` /* 155-byte string literal not displayed */
	// Volume capability describing how the CO intends to use this volume.
	// This allows SP to determine if volume is being used as a block
	// device or mounted file system. For example - if volume is
	// being used as a block device - the SP MAY set
	// node_expansion_required to false in ControllerExpandVolumeResponse
	// to skip invocation of NodeExpandVolume on the node by the CO.
	// This is an OPTIONAL field.
	VolumeCapability     *VolumeCapability `protobuf:"bytes,4,opt,name=volume_capability,json=volumeCapability,proto3" json:"volume_capability,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ControllerExpandVolumeRequest) Descriptor added in v1.1.0

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

func (*ControllerExpandVolumeRequest) GetCapacityRange added in v1.1.0

func (m *ControllerExpandVolumeRequest) GetCapacityRange() *CapacityRange

func (*ControllerExpandVolumeRequest) GetSecrets added in v1.1.0

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

func (*ControllerExpandVolumeRequest) GetVolumeCapability added in v1.2.0

func (m *ControllerExpandVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*ControllerExpandVolumeRequest) GetVolumeId added in v1.1.0

func (m *ControllerExpandVolumeRequest) GetVolumeId() string

func (*ControllerExpandVolumeRequest) ProtoMessage added in v1.1.0

func (*ControllerExpandVolumeRequest) ProtoMessage()

func (*ControllerExpandVolumeRequest) Reset added in v1.1.0

func (m *ControllerExpandVolumeRequest) Reset()

func (*ControllerExpandVolumeRequest) String added in v1.1.0

func (*ControllerExpandVolumeRequest) XXX_DiscardUnknown added in v1.1.0

func (m *ControllerExpandVolumeRequest) XXX_DiscardUnknown()

func (*ControllerExpandVolumeRequest) XXX_Marshal added in v1.1.0

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

func (*ControllerExpandVolumeRequest) XXX_Merge added in v1.1.0

func (m *ControllerExpandVolumeRequest) XXX_Merge(src proto.Message)

func (*ControllerExpandVolumeRequest) XXX_Size added in v1.1.0

func (m *ControllerExpandVolumeRequest) XXX_Size() int

func (*ControllerExpandVolumeRequest) XXX_Unmarshal added in v1.1.0

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

type ControllerExpandVolumeResponse added in v1.1.0

type ControllerExpandVolumeResponse struct {
	// Capacity of volume after expansion. This field is REQUIRED.
	CapacityBytes int64 `protobuf:"varint,1,opt,name=capacity_bytes,json=capacityBytes,proto3" json:"capacity_bytes,omitempty"`
	// Whether node expansion is required for the volume. When true
	// the CO MUST make NodeExpandVolume RPC call on the node. This field
	// is REQUIRED.
	NodeExpansionRequired bool     `` /* 127-byte string literal not displayed */
	XXX_NoUnkeyedLiteral  struct{} `json:"-"`
	XXX_unrecognized      []byte   `json:"-"`
	XXX_sizecache         int32    `json:"-"`
}

func (*ControllerExpandVolumeResponse) Descriptor added in v1.1.0

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

func (*ControllerExpandVolumeResponse) GetCapacityBytes added in v1.1.0

func (m *ControllerExpandVolumeResponse) GetCapacityBytes() int64

func (*ControllerExpandVolumeResponse) GetNodeExpansionRequired added in v1.1.0

func (m *ControllerExpandVolumeResponse) GetNodeExpansionRequired() bool

func (*ControllerExpandVolumeResponse) ProtoMessage added in v1.1.0

func (*ControllerExpandVolumeResponse) ProtoMessage()

func (*ControllerExpandVolumeResponse) Reset added in v1.1.0

func (m *ControllerExpandVolumeResponse) Reset()

func (*ControllerExpandVolumeResponse) String added in v1.1.0

func (*ControllerExpandVolumeResponse) XXX_DiscardUnknown added in v1.1.0

func (m *ControllerExpandVolumeResponse) XXX_DiscardUnknown()

func (*ControllerExpandVolumeResponse) XXX_Marshal added in v1.1.0

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

func (*ControllerExpandVolumeResponse) XXX_Merge added in v1.1.0

func (m *ControllerExpandVolumeResponse) XXX_Merge(src proto.Message)

func (*ControllerExpandVolumeResponse) XXX_Size added in v1.1.0

func (m *ControllerExpandVolumeResponse) XXX_Size() int

func (*ControllerExpandVolumeResponse) XXX_Unmarshal added in v1.1.0

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

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 added in v1.0.0

func (m *ControllerGetCapabilitiesRequest) XXX_DiscardUnknown()

func (*ControllerGetCapabilitiesRequest) XXX_Marshal added in v1.0.0

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

func (*ControllerGetCapabilitiesRequest) XXX_Merge added in v1.0.0

func (*ControllerGetCapabilitiesRequest) XXX_Size added in v1.0.0

func (m *ControllerGetCapabilitiesRequest) XXX_Size() int

func (*ControllerGetCapabilitiesRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *ControllerGetCapabilitiesResponse) XXX_DiscardUnknown()

func (*ControllerGetCapabilitiesResponse) XXX_Marshal added in v1.0.0

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

func (*ControllerGetCapabilitiesResponse) XXX_Merge added in v1.0.0

func (*ControllerGetCapabilitiesResponse) XXX_Size added in v1.0.0

func (m *ControllerGetCapabilitiesResponse) XXX_Size() int

func (*ControllerGetCapabilitiesResponse) XXX_Unmarshal added in v1.0.0

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

type ControllerGetVolumeRequest added in v1.3.0

type ControllerGetVolumeRequest struct {
	// The ID of the volume to fetch current volume information for.
	// This field is REQUIRED.
	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 (*ControllerGetVolumeRequest) Descriptor added in v1.3.0

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

func (*ControllerGetVolumeRequest) GetVolumeId added in v1.3.0

func (m *ControllerGetVolumeRequest) GetVolumeId() string

func (*ControllerGetVolumeRequest) ProtoMessage added in v1.3.0

func (*ControllerGetVolumeRequest) ProtoMessage()

func (*ControllerGetVolumeRequest) Reset added in v1.3.0

func (m *ControllerGetVolumeRequest) Reset()

func (*ControllerGetVolumeRequest) String added in v1.3.0

func (m *ControllerGetVolumeRequest) String() string

func (*ControllerGetVolumeRequest) XXX_DiscardUnknown added in v1.3.0

func (m *ControllerGetVolumeRequest) XXX_DiscardUnknown()

func (*ControllerGetVolumeRequest) XXX_Marshal added in v1.3.0

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

func (*ControllerGetVolumeRequest) XXX_Merge added in v1.3.0

func (m *ControllerGetVolumeRequest) XXX_Merge(src proto.Message)

func (*ControllerGetVolumeRequest) XXX_Size added in v1.3.0

func (m *ControllerGetVolumeRequest) XXX_Size() int

func (*ControllerGetVolumeRequest) XXX_Unmarshal added in v1.3.0

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

type ControllerGetVolumeResponse added in v1.3.0

type ControllerGetVolumeResponse struct {
	// This field is REQUIRED
	Volume *Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`
	// This field is REQUIRED.
	Status               *ControllerGetVolumeResponse_VolumeStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                  `json:"-"`
	XXX_unrecognized     []byte                                    `json:"-"`
	XXX_sizecache        int32                                     `json:"-"`
}

func (*ControllerGetVolumeResponse) Descriptor added in v1.3.0

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

func (*ControllerGetVolumeResponse) GetStatus added in v1.3.0

func (*ControllerGetVolumeResponse) GetVolume added in v1.3.0

func (m *ControllerGetVolumeResponse) GetVolume() *Volume

func (*ControllerGetVolumeResponse) ProtoMessage added in v1.3.0

func (*ControllerGetVolumeResponse) ProtoMessage()

func (*ControllerGetVolumeResponse) Reset added in v1.3.0

func (m *ControllerGetVolumeResponse) Reset()

func (*ControllerGetVolumeResponse) String added in v1.3.0

func (m *ControllerGetVolumeResponse) String() string

func (*ControllerGetVolumeResponse) XXX_DiscardUnknown added in v1.3.0

func (m *ControllerGetVolumeResponse) XXX_DiscardUnknown()

func (*ControllerGetVolumeResponse) XXX_Marshal added in v1.3.0

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

func (*ControllerGetVolumeResponse) XXX_Merge added in v1.3.0

func (m *ControllerGetVolumeResponse) XXX_Merge(src proto.Message)

func (*ControllerGetVolumeResponse) XXX_Size added in v1.3.0

func (m *ControllerGetVolumeResponse) XXX_Size() int

func (*ControllerGetVolumeResponse) XXX_Unmarshal added in v1.3.0

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

type ControllerGetVolumeResponse_VolumeStatus added in v1.3.0

type ControllerGetVolumeResponse_VolumeStatus struct {
	// A list of all the `node_id` of nodes that this volume is
	// controller published on.
	// This field is OPTIONAL.
	// This field MUST be specified if the LIST_VOLUMES_PUBLISHED_NODES
	// controller capability is supported.
	// published_node_ids MAY include nodes not published to or
	// reported by the SP. The CO MUST be resilient to that.
	PublishedNodeIds []string `protobuf:"bytes,1,rep,name=published_node_ids,json=publishedNodeIds,proto3" json:"published_node_ids,omitempty"`
	// Information about the current condition of the volume.
	// This field is OPTIONAL.
	// This field MUST be specified if the
	// VOLUME_CONDITION controller capability is supported.
	VolumeCondition      *VolumeCondition `protobuf:"bytes,2,opt,name=volume_condition,json=volumeCondition,proto3" json:"volume_condition,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*ControllerGetVolumeResponse_VolumeStatus) Descriptor added in v1.3.0

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

func (*ControllerGetVolumeResponse_VolumeStatus) GetPublishedNodeIds added in v1.3.0

func (m *ControllerGetVolumeResponse_VolumeStatus) GetPublishedNodeIds() []string

func (*ControllerGetVolumeResponse_VolumeStatus) GetVolumeCondition added in v1.3.0

func (*ControllerGetVolumeResponse_VolumeStatus) ProtoMessage added in v1.3.0

func (*ControllerGetVolumeResponse_VolumeStatus) Reset added in v1.3.0

func (*ControllerGetVolumeResponse_VolumeStatus) String added in v1.3.0

func (*ControllerGetVolumeResponse_VolumeStatus) XXX_DiscardUnknown added in v1.3.0

func (m *ControllerGetVolumeResponse_VolumeStatus) XXX_DiscardUnknown()

func (*ControllerGetVolumeResponse_VolumeStatus) XXX_Marshal added in v1.3.0

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

func (*ControllerGetVolumeResponse_VolumeStatus) XXX_Merge added in v1.3.0

func (*ControllerGetVolumeResponse_VolumeStatus) XXX_Size added in v1.3.0

func (*ControllerGetVolumeResponse_VolumeStatus) XXX_Unmarshal added in v1.3.0

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

type ControllerModifyVolumeRequest added in v1.9.0

type ControllerModifyVolumeRequest struct {
	// Contains identity information for the existing volume.
	// 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 modify 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 */
	// Plugin specific volume attributes to mutate, passed in as
	// opaque key-value pairs.
	// This field is REQUIRED. The Plugin is responsible for
	// parsing and validating these parameters. COs will treat these
	// as opaque. The CO SHOULD specify the intended values of all mutable
	// parameters it intends to modify. SPs MUST NOT modify volumes based
	// on the absence of keys, only keys that are specified should result
	// in modifications to the volume.
	MutableParameters    map[string]string `` /* 200-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ControllerModifyVolumeRequest) Descriptor added in v1.9.0

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

func (*ControllerModifyVolumeRequest) GetMutableParameters added in v1.9.0

func (m *ControllerModifyVolumeRequest) GetMutableParameters() map[string]string

func (*ControllerModifyVolumeRequest) GetSecrets added in v1.9.0

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

func (*ControllerModifyVolumeRequest) GetVolumeId added in v1.9.0

func (m *ControllerModifyVolumeRequest) GetVolumeId() string

func (*ControllerModifyVolumeRequest) ProtoMessage added in v1.9.0

func (*ControllerModifyVolumeRequest) ProtoMessage()

func (*ControllerModifyVolumeRequest) Reset added in v1.9.0

func (m *ControllerModifyVolumeRequest) Reset()

func (*ControllerModifyVolumeRequest) String added in v1.9.0

func (*ControllerModifyVolumeRequest) XXX_DiscardUnknown added in v1.9.0

func (m *ControllerModifyVolumeRequest) XXX_DiscardUnknown()

func (*ControllerModifyVolumeRequest) XXX_Marshal added in v1.9.0

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

func (*ControllerModifyVolumeRequest) XXX_Merge added in v1.9.0

func (m *ControllerModifyVolumeRequest) XXX_Merge(src proto.Message)

func (*ControllerModifyVolumeRequest) XXX_Size added in v1.9.0

func (m *ControllerModifyVolumeRequest) XXX_Size() int

func (*ControllerModifyVolumeRequest) XXX_Unmarshal added in v1.9.0

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

type ControllerModifyVolumeResponse added in v1.9.0

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

func (*ControllerModifyVolumeResponse) Descriptor added in v1.9.0

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

func (*ControllerModifyVolumeResponse) ProtoMessage added in v1.9.0

func (*ControllerModifyVolumeResponse) ProtoMessage()

func (*ControllerModifyVolumeResponse) Reset added in v1.9.0

func (m *ControllerModifyVolumeResponse) Reset()

func (*ControllerModifyVolumeResponse) String added in v1.9.0

func (*ControllerModifyVolumeResponse) XXX_DiscardUnknown added in v1.9.0

func (m *ControllerModifyVolumeResponse) XXX_DiscardUnknown()

func (*ControllerModifyVolumeResponse) XXX_Marshal added in v1.9.0

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

func (*ControllerModifyVolumeResponse) XXX_Merge added in v1.9.0

func (m *ControllerModifyVolumeResponse) XXX_Merge(src proto.Message)

func (*ControllerModifyVolumeResponse) XXX_Size added in v1.9.0

func (m *ControllerModifyVolumeResponse) XXX_Size() int

func (*ControllerModifyVolumeResponse) XXX_Unmarshal added in v1.9.0

func (m *ControllerModifyVolumeResponse) 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 SP in
	// CreateVolumeResponse.Volume.volume_context.
	// 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 added in v1.0.0

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

func (*ControllerPublishVolumeRequest) GetVolumeCapability

func (m *ControllerPublishVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*ControllerPublishVolumeRequest) GetVolumeContext added in v1.0.0

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 added in v1.0.0

func (m *ControllerPublishVolumeRequest) XXX_DiscardUnknown()

func (*ControllerPublishVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*ControllerPublishVolumeRequest) XXX_Merge added in v1.0.0

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

func (*ControllerPublishVolumeRequest) XXX_Size added in v1.0.0

func (m *ControllerPublishVolumeRequest) XXX_Size() int

func (*ControllerPublishVolumeRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

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

func (*ControllerPublishVolumeResponse) ProtoMessage

func (*ControllerPublishVolumeResponse) ProtoMessage()

func (*ControllerPublishVolumeResponse) Reset

func (*ControllerPublishVolumeResponse) String

func (*ControllerPublishVolumeResponse) XXX_DiscardUnknown added in v1.0.0

func (m *ControllerPublishVolumeResponse) XXX_DiscardUnknown()

func (*ControllerPublishVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*ControllerPublishVolumeResponse) XXX_Merge added in v1.0.0

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

func (*ControllerPublishVolumeResponse) XXX_Size added in v1.0.0

func (m *ControllerPublishVolumeResponse) XXX_Size() int

func (*ControllerPublishVolumeResponse) XXX_Unmarshal added in v1.0.0

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

type ControllerServer

ControllerServer is the server API for Controller service.

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 added in v1.0.0

func (m *ControllerServiceCapability) XXX_DiscardUnknown()

func (*ControllerServiceCapability) XXX_Marshal added in v1.0.0

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

func (*ControllerServiceCapability) XXX_Merge added in v1.0.0

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

func (*ControllerServiceCapability) XXX_OneofWrappers added in v1.2.0

func (*ControllerServiceCapability) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*ControllerServiceCapability) XXX_Size added in v1.0.0

func (m *ControllerServiceCapability) XXX_Size() int

func (*ControllerServiceCapability) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *ControllerServiceCapability_RPC) XXX_DiscardUnknown()

func (*ControllerServiceCapability_RPC) XXX_Marshal added in v1.0.0

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

func (*ControllerServiceCapability_RPC) XXX_Merge added in v1.0.0

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

func (*ControllerServiceCapability_RPC) XXX_Size added in v1.0.0

func (m *ControllerServiceCapability_RPC) XXX_Size() int

func (*ControllerServiceCapability_RPC) XXX_Unmarshal added in v1.0.0

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
	// See VolumeExpansion for details.
	ControllerServiceCapability_RPC_EXPAND_VOLUME ControllerServiceCapability_RPC_Type = 9
	// Indicates the SP supports the
	// ListVolumesResponse.entry.published_node_ids field and the
	// ControllerGetVolumeResponse.published_node_ids field.
	// The SP MUST also support PUBLISH_UNPUBLISH_VOLUME.
	ControllerServiceCapability_RPC_LIST_VOLUMES_PUBLISHED_NODES ControllerServiceCapability_RPC_Type = 10
	// Indicates that the Controller service can report volume
	// conditions.
	// An SP MAY implement `VolumeCondition` in only the Controller
	// Plugin, only the Node Plugin, or both.
	// If `VolumeCondition` is implemented in both the Controller and
	// Node Plugins, it SHALL report from different perspectives.
	// If for some reason Controller and Node Plugins report
	// misaligned volume conditions, CO SHALL assume the worst case
	// is the truth.
	// Note that, for alpha, `VolumeCondition` is intended be
	// informative for humans only, not for automation.
	ControllerServiceCapability_RPC_VOLUME_CONDITION ControllerServiceCapability_RPC_Type = 11
	// Indicates the SP supports the ControllerGetVolume RPC.
	// This enables COs to, for example, fetch per volume
	// condition after a volume is provisioned.
	ControllerServiceCapability_RPC_GET_VOLUME ControllerServiceCapability_RPC_Type = 12
	// Indicates the SP supports the SINGLE_NODE_SINGLE_WRITER and/or
	// SINGLE_NODE_MULTI_WRITER access modes.
	// These access modes are intended to replace the
	// SINGLE_NODE_WRITER access mode to clarify the number of writers
	// for a volume on a single node. Plugins MUST accept and allow
	// use of the SINGLE_NODE_WRITER access mode when either
	// SINGLE_NODE_SINGLE_WRITER and/or SINGLE_NODE_MULTI_WRITER are
	// supported, in order to permit older COs to continue working.
	ControllerServiceCapability_RPC_SINGLE_NODE_MULTI_WRITER ControllerServiceCapability_RPC_Type = 13
	// Indicates the SP supports modifying volume with mutable
	// parameters. See ControllerModifyVolume for details.
	ControllerServiceCapability_RPC_MODIFY_VOLUME ControllerServiceCapability_RPC_Type = 14
)

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 added in v1.0.0

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 added in v1.0.0

func (m *ControllerUnpublishVolumeRequest) XXX_DiscardUnknown()

func (*ControllerUnpublishVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*ControllerUnpublishVolumeRequest) XXX_Merge added in v1.0.0

func (*ControllerUnpublishVolumeRequest) XXX_Size added in v1.0.0

func (m *ControllerUnpublishVolumeRequest) XXX_Size() int

func (*ControllerUnpublishVolumeRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *ControllerUnpublishVolumeResponse) XXX_DiscardUnknown()

func (*ControllerUnpublishVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*ControllerUnpublishVolumeResponse) XXX_Merge added in v1.0.0

func (*ControllerUnpublishVolumeResponse) XXX_Size added in v1.0.0

func (m *ControllerUnpublishVolumeResponse) XXX_Size() int

func (*ControllerUnpublishVolumeResponse) XXX_Unmarshal added in v1.0.0

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

type CreateSnapshotRequest added in v1.0.0

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 added in v1.0.0

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

func (*CreateSnapshotRequest) GetName added in v1.0.0

func (m *CreateSnapshotRequest) GetName() string

func (*CreateSnapshotRequest) GetParameters added in v1.0.0

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

func (*CreateSnapshotRequest) GetSecrets added in v1.0.0

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

func (*CreateSnapshotRequest) GetSourceVolumeId added in v1.0.0

func (m *CreateSnapshotRequest) GetSourceVolumeId() string

func (*CreateSnapshotRequest) ProtoMessage added in v1.0.0

func (*CreateSnapshotRequest) ProtoMessage()

func (*CreateSnapshotRequest) Reset added in v1.0.0

func (m *CreateSnapshotRequest) Reset()

func (*CreateSnapshotRequest) String added in v1.0.0

func (m *CreateSnapshotRequest) String() string

func (*CreateSnapshotRequest) XXX_DiscardUnknown added in v1.0.0

func (m *CreateSnapshotRequest) XXX_DiscardUnknown()

func (*CreateSnapshotRequest) XXX_Marshal added in v1.0.0

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

func (*CreateSnapshotRequest) XXX_Merge added in v1.0.0

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

func (*CreateSnapshotRequest) XXX_Size added in v1.0.0

func (m *CreateSnapshotRequest) XXX_Size() int

func (*CreateSnapshotRequest) XXX_Unmarshal added in v1.0.0

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

type CreateSnapshotResponse added in v1.0.0

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 added in v1.0.0

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

func (*CreateSnapshotResponse) GetSnapshot added in v1.0.0

func (m *CreateSnapshotResponse) GetSnapshot() *Snapshot

func (*CreateSnapshotResponse) ProtoMessage added in v1.0.0

func (*CreateSnapshotResponse) ProtoMessage()

func (*CreateSnapshotResponse) Reset added in v1.0.0

func (m *CreateSnapshotResponse) Reset()

func (*CreateSnapshotResponse) String added in v1.0.0

func (m *CreateSnapshotResponse) String() string

func (*CreateSnapshotResponse) XXX_DiscardUnknown added in v1.0.0

func (m *CreateSnapshotResponse) XXX_DiscardUnknown()

func (*CreateSnapshotResponse) XXX_Marshal added in v1.0.0

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

func (*CreateSnapshotResponse) XXX_Merge added in v1.0.0

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

func (*CreateSnapshotResponse) XXX_Size added in v1.0.0

func (m *CreateSnapshotResponse) XXX_Size() int

func (*CreateSnapshotResponse) XXX_Unmarshal added in v1.0.0

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

type CreateVolumeGroupSnapshotRequest added in v1.8.0

type CreateVolumeGroupSnapshotRequest struct {
	// The suggested name for the group 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,1,opt,name=name,proto3" json:"name,omitempty"`
	// volume IDs of the source volumes to be snapshotted together.
	// This field is REQUIRED.
	SourceVolumeIds []string `protobuf:"bytes,2,rep,name=source_volume_ids,json=sourceVolumeIds,proto3" json:"source_volume_ids,omitempty"`
	// Secrets required by plugin to complete
	// ControllerCreateVolumeGroupSnapshot request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	// The secrets provided in this field SHOULD be the same for
	// all group snapshot operations on the same group snapshot.
	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.
	Parameters           map[string]string `` /* 161-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*CreateVolumeGroupSnapshotRequest) Descriptor added in v1.8.0

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

func (*CreateVolumeGroupSnapshotRequest) GetName added in v1.8.0

func (*CreateVolumeGroupSnapshotRequest) GetParameters added in v1.8.0

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

func (*CreateVolumeGroupSnapshotRequest) GetSecrets added in v1.8.0

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

func (*CreateVolumeGroupSnapshotRequest) GetSourceVolumeIds added in v1.8.0

func (m *CreateVolumeGroupSnapshotRequest) GetSourceVolumeIds() []string

func (*CreateVolumeGroupSnapshotRequest) ProtoMessage added in v1.8.0

func (*CreateVolumeGroupSnapshotRequest) ProtoMessage()

func (*CreateVolumeGroupSnapshotRequest) Reset added in v1.8.0

func (*CreateVolumeGroupSnapshotRequest) String added in v1.8.0

func (*CreateVolumeGroupSnapshotRequest) XXX_DiscardUnknown added in v1.8.0

func (m *CreateVolumeGroupSnapshotRequest) XXX_DiscardUnknown()

func (*CreateVolumeGroupSnapshotRequest) XXX_Marshal added in v1.8.0

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

func (*CreateVolumeGroupSnapshotRequest) XXX_Merge added in v1.8.0

func (*CreateVolumeGroupSnapshotRequest) XXX_Size added in v1.8.0

func (m *CreateVolumeGroupSnapshotRequest) XXX_Size() int

func (*CreateVolumeGroupSnapshotRequest) XXX_Unmarshal added in v1.8.0

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

type CreateVolumeGroupSnapshotResponse added in v1.8.0

type CreateVolumeGroupSnapshotResponse struct {
	// Contains all attributes of the newly created group snapshot.
	// This field is REQUIRED.
	GroupSnapshot        *VolumeGroupSnapshot `protobuf:"bytes,1,opt,name=group_snapshot,json=groupSnapshot,proto3" json:"group_snapshot,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (*CreateVolumeGroupSnapshotResponse) Descriptor added in v1.8.0

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

func (*CreateVolumeGroupSnapshotResponse) GetGroupSnapshot added in v1.8.0

func (*CreateVolumeGroupSnapshotResponse) ProtoMessage added in v1.8.0

func (*CreateVolumeGroupSnapshotResponse) ProtoMessage()

func (*CreateVolumeGroupSnapshotResponse) Reset added in v1.8.0

func (*CreateVolumeGroupSnapshotResponse) String added in v1.8.0

func (*CreateVolumeGroupSnapshotResponse) XXX_DiscardUnknown added in v1.8.0

func (m *CreateVolumeGroupSnapshotResponse) XXX_DiscardUnknown()

func (*CreateVolumeGroupSnapshotResponse) XXX_Marshal added in v1.8.0

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

func (*CreateVolumeGroupSnapshotResponse) XXX_Merge added in v1.8.0

func (*CreateVolumeGroupSnapshotResponse) XXX_Size added in v1.8.0

func (m *CreateVolumeGroupSnapshotResponse) XXX_Size() int

func (*CreateVolumeGroupSnapshotResponse) XXX_Unmarshal added in v1.8.0

func (m *CreateVolumeGroupSnapshotResponse) 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 creation-time 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 */
	// Plugins MUST treat these
	// as if they take precedence over the parameters field.
	// This field SHALL NOT be specified unless the SP has the
	// MODIFY_VOLUME plugin capability.
	MutableParameters    map[string]string `` /* 200-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 added in v1.0.0

func (m *CreateVolumeRequest) GetAccessibilityRequirements() *TopologyRequirement

func (*CreateVolumeRequest) GetCapacityRange

func (m *CreateVolumeRequest) GetCapacityRange() *CapacityRange

func (*CreateVolumeRequest) GetMutableParameters added in v1.9.0

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

func (*CreateVolumeRequest) GetName

func (m *CreateVolumeRequest) GetName() string

func (*CreateVolumeRequest) GetParameters

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

func (*CreateVolumeRequest) GetSecrets added in v1.0.0

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

func (*CreateVolumeRequest) GetVolumeCapabilities

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

func (*CreateVolumeRequest) GetVolumeContentSource added in v1.0.0

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 added in v1.0.0

func (m *CreateVolumeRequest) XXX_DiscardUnknown()

func (*CreateVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*CreateVolumeRequest) XXX_Merge added in v1.0.0

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

func (*CreateVolumeRequest) XXX_Size added in v1.0.0

func (m *CreateVolumeRequest) XXX_Size() int

func (*CreateVolumeRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

func (m *CreateVolumeResponse) XXX_DiscardUnknown()

func (*CreateVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*CreateVolumeResponse) XXX_Merge added in v1.0.0

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

func (*CreateVolumeResponse) XXX_Size added in v1.0.0

func (m *CreateVolumeResponse) XXX_Size() int

func (*CreateVolumeResponse) XXX_Unmarshal added in v1.0.0

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

type DeleteSnapshotRequest added in v1.0.0

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 added in v1.0.0

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

func (*DeleteSnapshotRequest) GetSecrets added in v1.0.0

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

func (*DeleteSnapshotRequest) GetSnapshotId added in v1.0.0

func (m *DeleteSnapshotRequest) GetSnapshotId() string

func (*DeleteSnapshotRequest) ProtoMessage added in v1.0.0

func (*DeleteSnapshotRequest) ProtoMessage()

func (*DeleteSnapshotRequest) Reset added in v1.0.0

func (m *DeleteSnapshotRequest) Reset()

func (*DeleteSnapshotRequest) String added in v1.0.0

func (m *DeleteSnapshotRequest) String() string

func (*DeleteSnapshotRequest) XXX_DiscardUnknown added in v1.0.0

func (m *DeleteSnapshotRequest) XXX_DiscardUnknown()

func (*DeleteSnapshotRequest) XXX_Marshal added in v1.0.0

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

func (*DeleteSnapshotRequest) XXX_Merge added in v1.0.0

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

func (*DeleteSnapshotRequest) XXX_Size added in v1.0.0

func (m *DeleteSnapshotRequest) XXX_Size() int

func (*DeleteSnapshotRequest) XXX_Unmarshal added in v1.0.0

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

type DeleteSnapshotResponse added in v1.0.0

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

func (*DeleteSnapshotResponse) Descriptor added in v1.0.0

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

func (*DeleteSnapshotResponse) ProtoMessage added in v1.0.0

func (*DeleteSnapshotResponse) ProtoMessage()

func (*DeleteSnapshotResponse) Reset added in v1.0.0

func (m *DeleteSnapshotResponse) Reset()

func (*DeleteSnapshotResponse) String added in v1.0.0

func (m *DeleteSnapshotResponse) String() string

func (*DeleteSnapshotResponse) XXX_DiscardUnknown added in v1.0.0

func (m *DeleteSnapshotResponse) XXX_DiscardUnknown()

func (*DeleteSnapshotResponse) XXX_Marshal added in v1.0.0

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

func (*DeleteSnapshotResponse) XXX_Merge added in v1.0.0

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

func (*DeleteSnapshotResponse) XXX_Size added in v1.0.0

func (m *DeleteSnapshotResponse) XXX_Size() int

func (*DeleteSnapshotResponse) XXX_Unmarshal added in v1.0.0

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

type DeleteVolumeGroupSnapshotRequest added in v1.8.0

type DeleteVolumeGroupSnapshotRequest struct {
	// The ID of the group snapshot to be deleted.
	// This field is REQUIRED.
	GroupSnapshotId string `protobuf:"bytes,1,opt,name=group_snapshot_id,json=groupSnapshotId,proto3" json:"group_snapshot_id,omitempty"`
	// A list of snapshot IDs that are part of this group snapshot.
	// If SP does not need to rely on this field to delete the snapshots
	// in the group, it SHOULD check this field and report an error
	// if it has the ability to detect a mismatch.
	// Some SPs require this list to delete the snapshots in the group.
	// If SP needs to use this field to delete the snapshots in the
	// group, it MUST report an error if it has the ability to detect
	// a mismatch.
	// This field is REQUIRED.
	SnapshotIds []string `protobuf:"bytes,2,rep,name=snapshot_ids,json=snapshotIds,proto3" json:"snapshot_ids,omitempty"`
	// Secrets required by plugin to complete group snapshot deletion
	// request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	// The secrets provided in this field SHOULD be the same for
	// all group snapshot operations on the same group snapshot.
	Secrets              map[string]string `` /* 155-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*DeleteVolumeGroupSnapshotRequest) Descriptor added in v1.8.0

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

func (*DeleteVolumeGroupSnapshotRequest) GetGroupSnapshotId added in v1.8.0

func (m *DeleteVolumeGroupSnapshotRequest) GetGroupSnapshotId() string

func (*DeleteVolumeGroupSnapshotRequest) GetSecrets added in v1.8.0

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

func (*DeleteVolumeGroupSnapshotRequest) GetSnapshotIds added in v1.8.0

func (m *DeleteVolumeGroupSnapshotRequest) GetSnapshotIds() []string

func (*DeleteVolumeGroupSnapshotRequest) ProtoMessage added in v1.8.0

func (*DeleteVolumeGroupSnapshotRequest) ProtoMessage()

func (*DeleteVolumeGroupSnapshotRequest) Reset added in v1.8.0

func (*DeleteVolumeGroupSnapshotRequest) String added in v1.8.0

func (*DeleteVolumeGroupSnapshotRequest) XXX_DiscardUnknown added in v1.8.0

func (m *DeleteVolumeGroupSnapshotRequest) XXX_DiscardUnknown()

func (*DeleteVolumeGroupSnapshotRequest) XXX_Marshal added in v1.8.0

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

func (*DeleteVolumeGroupSnapshotRequest) XXX_Merge added in v1.8.0

func (*DeleteVolumeGroupSnapshotRequest) XXX_Size added in v1.8.0

func (m *DeleteVolumeGroupSnapshotRequest) XXX_Size() int

func (*DeleteVolumeGroupSnapshotRequest) XXX_Unmarshal added in v1.8.0

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

type DeleteVolumeGroupSnapshotResponse added in v1.8.0

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

func (*DeleteVolumeGroupSnapshotResponse) Descriptor added in v1.8.0

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

func (*DeleteVolumeGroupSnapshotResponse) ProtoMessage added in v1.8.0

func (*DeleteVolumeGroupSnapshotResponse) ProtoMessage()

func (*DeleteVolumeGroupSnapshotResponse) Reset added in v1.8.0

func (*DeleteVolumeGroupSnapshotResponse) String added in v1.8.0

func (*DeleteVolumeGroupSnapshotResponse) XXX_DiscardUnknown added in v1.8.0

func (m *DeleteVolumeGroupSnapshotResponse) XXX_DiscardUnknown()

func (*DeleteVolumeGroupSnapshotResponse) XXX_Marshal added in v1.8.0

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

func (*DeleteVolumeGroupSnapshotResponse) XXX_Merge added in v1.8.0

func (*DeleteVolumeGroupSnapshotResponse) XXX_Size added in v1.8.0

func (m *DeleteVolumeGroupSnapshotResponse) XXX_Size() int

func (*DeleteVolumeGroupSnapshotResponse) XXX_Unmarshal added in v1.8.0

func (m *DeleteVolumeGroupSnapshotResponse) 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 added in v1.0.0

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 added in v1.0.0

func (m *DeleteVolumeRequest) XXX_DiscardUnknown()

func (*DeleteVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*DeleteVolumeRequest) XXX_Merge added in v1.0.0

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

func (*DeleteVolumeRequest) XXX_Size added in v1.0.0

func (m *DeleteVolumeRequest) XXX_Size() int

func (*DeleteVolumeRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *DeleteVolumeResponse) XXX_DiscardUnknown()

func (*DeleteVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*DeleteVolumeResponse) XXX_Merge added in v1.0.0

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

func (*DeleteVolumeResponse) XXX_Size added in v1.0.0

func (m *DeleteVolumeResponse) XXX_Size() int

func (*DeleteVolumeResponse) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

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 added in v1.0.0

func (m *GetCapacityRequest) XXX_DiscardUnknown()

func (*GetCapacityRequest) XXX_Marshal added in v1.0.0

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

func (*GetCapacityRequest) XXX_Merge added in v1.0.0

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

func (*GetCapacityRequest) XXX_Size added in v1.0.0

func (m *GetCapacityRequest) XXX_Size() int

func (*GetCapacityRequest) XXX_Unmarshal added in v1.0.0

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"`
	// The largest size that may be used in a
	// CreateVolumeRequest.capacity_range.required_bytes field
	// to create a volume with the same parameters as those in
	// GetCapacityRequest.
	//
	// If `volume_capabilities` or `parameters` is
	// specified in the request, the Plugin SHALL take those into
	// consideration when calculating the minimum volume size of the
	// storage.
	//
	// This field is OPTIONAL. MUST NOT be negative.
	// The Plugin SHOULD provide a value for this field if it has
	// a maximum size for individual volumes and leave it unset
	// otherwise. COs MAY use it to make decision about
	// where to create volumes.
	MaximumVolumeSize *wrappers.Int64Value `protobuf:"bytes,2,opt,name=maximum_volume_size,json=maximumVolumeSize,proto3" json:"maximum_volume_size,omitempty"`
	// The smallest size that may be used in a
	// CreateVolumeRequest.capacity_range.limit_bytes field
	// to create a volume with the same parameters as those in
	// GetCapacityRequest.
	//
	// If `volume_capabilities` or `parameters` is
	// specified in the request, the Plugin SHALL take those into
	// consideration when calculating the maximum volume size of the
	// storage.
	//
	// This field is OPTIONAL. MUST NOT be negative.
	// The Plugin SHOULD provide a value for this field if it has
	// a minimum size for individual volumes and leave it unset
	// otherwise. COs MAY use it to make decision about
	// where to create volumes.
	MinimumVolumeSize    *wrappers.Int64Value `protobuf:"bytes,3,opt,name=minimum_volume_size,json=minimumVolumeSize,proto3" json:"minimum_volume_size,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) GetMaximumVolumeSize added in v1.4.0

func (m *GetCapacityResponse) GetMaximumVolumeSize() *wrappers.Int64Value

func (*GetCapacityResponse) GetMinimumVolumeSize added in v1.4.0

func (m *GetCapacityResponse) GetMinimumVolumeSize() *wrappers.Int64Value

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 added in v1.0.0

func (m *GetCapacityResponse) XXX_DiscardUnknown()

func (*GetCapacityResponse) XXX_Marshal added in v1.0.0

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

func (*GetCapacityResponse) XXX_Merge added in v1.0.0

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

func (*GetCapacityResponse) XXX_Size added in v1.0.0

func (m *GetCapacityResponse) XXX_Size() int

func (*GetCapacityResponse) XXX_Unmarshal added in v1.0.0

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

type GetPluginCapabilitiesRequest added in v1.0.0

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

func (*GetPluginCapabilitiesRequest) Descriptor added in v1.0.0

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

func (*GetPluginCapabilitiesRequest) ProtoMessage added in v1.0.0

func (*GetPluginCapabilitiesRequest) ProtoMessage()

func (*GetPluginCapabilitiesRequest) Reset added in v1.0.0

func (m *GetPluginCapabilitiesRequest) Reset()

func (*GetPluginCapabilitiesRequest) String added in v1.0.0

func (*GetPluginCapabilitiesRequest) XXX_DiscardUnknown added in v1.0.0

func (m *GetPluginCapabilitiesRequest) XXX_DiscardUnknown()

func (*GetPluginCapabilitiesRequest) XXX_Marshal added in v1.0.0

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

func (*GetPluginCapabilitiesRequest) XXX_Merge added in v1.0.0

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

func (*GetPluginCapabilitiesRequest) XXX_Size added in v1.0.0

func (m *GetPluginCapabilitiesRequest) XXX_Size() int

func (*GetPluginCapabilitiesRequest) XXX_Unmarshal added in v1.0.0

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

type GetPluginCapabilitiesResponse added in v1.0.0

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 added in v1.0.0

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

func (*GetPluginCapabilitiesResponse) GetCapabilities added in v1.0.0

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

func (*GetPluginCapabilitiesResponse) ProtoMessage added in v1.0.0

func (*GetPluginCapabilitiesResponse) ProtoMessage()

func (*GetPluginCapabilitiesResponse) Reset added in v1.0.0

func (m *GetPluginCapabilitiesResponse) Reset()

func (*GetPluginCapabilitiesResponse) String added in v1.0.0

func (*GetPluginCapabilitiesResponse) XXX_DiscardUnknown added in v1.0.0

func (m *GetPluginCapabilitiesResponse) XXX_DiscardUnknown()

func (*GetPluginCapabilitiesResponse) XXX_Marshal added in v1.0.0

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

func (*GetPluginCapabilitiesResponse) XXX_Merge added in v1.0.0

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

func (*GetPluginCapabilitiesResponse) XXX_Size added in v1.0.0

func (m *GetPluginCapabilitiesResponse) XXX_Size() int

func (*GetPluginCapabilitiesResponse) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *GetPluginInfoRequest) XXX_DiscardUnknown()

func (*GetPluginInfoRequest) XXX_Marshal added in v1.0.0

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

func (*GetPluginInfoRequest) XXX_Merge added in v1.0.0

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

func (*GetPluginInfoRequest) XXX_Size added in v1.0.0

func (m *GetPluginInfoRequest) XXX_Size() int

func (*GetPluginInfoRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *GetPluginInfoResponse) XXX_DiscardUnknown()

func (*GetPluginInfoResponse) XXX_Marshal added in v1.0.0

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

func (*GetPluginInfoResponse) XXX_Merge added in v1.0.0

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

func (*GetPluginInfoResponse) XXX_Size added in v1.0.0

func (m *GetPluginInfoResponse) XXX_Size() int

func (*GetPluginInfoResponse) XXX_Unmarshal added in v1.0.0

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

type GetVolumeGroupSnapshotRequest added in v1.8.0

type GetVolumeGroupSnapshotRequest struct {
	// The ID of the group snapshot to fetch current group snapshot
	// information for.
	// This field is REQUIRED.
	GroupSnapshotId string `protobuf:"bytes,1,opt,name=group_snapshot_id,json=groupSnapshotId,proto3" json:"group_snapshot_id,omitempty"`
	// A list of snapshot IDs that are part of this group snapshot.
	// If SP does not need to rely on this field to get the snapshots
	// in the group, it SHOULD check this field and report an error
	// if it has the ability to detect a mismatch.
	// Some SPs require this list to get the snapshots in the group.
	// If SP needs to use this field to get the snapshots in the
	// group, it MUST report an error if it has the ability to detect
	// a mismatch.
	// This field is REQUIRED.
	SnapshotIds []string `protobuf:"bytes,2,rep,name=snapshot_ids,json=snapshotIds,proto3" json:"snapshot_ids,omitempty"`
	// Secrets required by plugin to complete
	// GetVolumeGroupSnapshot request.
	// This field is OPTIONAL. Refer to the `Secrets Requirements`
	// section on how to use this field.
	// The secrets provided in this field SHOULD be the same for
	// all group snapshot operations on the same group snapshot.
	Secrets              map[string]string `` /* 155-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*GetVolumeGroupSnapshotRequest) Descriptor added in v1.8.0

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

func (*GetVolumeGroupSnapshotRequest) GetGroupSnapshotId added in v1.8.0

func (m *GetVolumeGroupSnapshotRequest) GetGroupSnapshotId() string

func (*GetVolumeGroupSnapshotRequest) GetSecrets added in v1.8.0

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

func (*GetVolumeGroupSnapshotRequest) GetSnapshotIds added in v1.8.0

func (m *GetVolumeGroupSnapshotRequest) GetSnapshotIds() []string

func (*GetVolumeGroupSnapshotRequest) ProtoMessage added in v1.8.0

func (*GetVolumeGroupSnapshotRequest) ProtoMessage()

func (*GetVolumeGroupSnapshotRequest) Reset added in v1.8.0

func (m *GetVolumeGroupSnapshotRequest) Reset()

func (*GetVolumeGroupSnapshotRequest) String added in v1.8.0

func (*GetVolumeGroupSnapshotRequest) XXX_DiscardUnknown added in v1.8.0

func (m *GetVolumeGroupSnapshotRequest) XXX_DiscardUnknown()

func (*GetVolumeGroupSnapshotRequest) XXX_Marshal added in v1.8.0

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

func (*GetVolumeGroupSnapshotRequest) XXX_Merge added in v1.8.0

func (m *GetVolumeGroupSnapshotRequest) XXX_Merge(src proto.Message)

func (*GetVolumeGroupSnapshotRequest) XXX_Size added in v1.8.0

func (m *GetVolumeGroupSnapshotRequest) XXX_Size() int

func (*GetVolumeGroupSnapshotRequest) XXX_Unmarshal added in v1.8.0

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

type GetVolumeGroupSnapshotResponse added in v1.8.0

type GetVolumeGroupSnapshotResponse struct {
	// This field is REQUIRED
	GroupSnapshot        *VolumeGroupSnapshot `protobuf:"bytes,1,opt,name=group_snapshot,json=groupSnapshot,proto3" json:"group_snapshot,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (*GetVolumeGroupSnapshotResponse) Descriptor added in v1.8.0

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

func (*GetVolumeGroupSnapshotResponse) GetGroupSnapshot added in v1.8.0

func (m *GetVolumeGroupSnapshotResponse) GetGroupSnapshot() *VolumeGroupSnapshot

func (*GetVolumeGroupSnapshotResponse) ProtoMessage added in v1.8.0

func (*GetVolumeGroupSnapshotResponse) ProtoMessage()

func (*GetVolumeGroupSnapshotResponse) Reset added in v1.8.0

func (m *GetVolumeGroupSnapshotResponse) Reset()

func (*GetVolumeGroupSnapshotResponse) String added in v1.8.0

func (*GetVolumeGroupSnapshotResponse) XXX_DiscardUnknown added in v1.8.0

func (m *GetVolumeGroupSnapshotResponse) XXX_DiscardUnknown()

func (*GetVolumeGroupSnapshotResponse) XXX_Marshal added in v1.8.0

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

func (*GetVolumeGroupSnapshotResponse) XXX_Merge added in v1.8.0

func (m *GetVolumeGroupSnapshotResponse) XXX_Merge(src proto.Message)

func (*GetVolumeGroupSnapshotResponse) XXX_Size added in v1.8.0

func (m *GetVolumeGroupSnapshotResponse) XXX_Size() int

func (*GetVolumeGroupSnapshotResponse) XXX_Unmarshal added in v1.8.0

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

type GroupControllerClient added in v1.8.0

type GroupControllerClient interface {
	GroupControllerGetCapabilities(ctx context.Context, in *GroupControllerGetCapabilitiesRequest, opts ...grpc.CallOption) (*GroupControllerGetCapabilitiesResponse, error)
	CreateVolumeGroupSnapshot(ctx context.Context, in *CreateVolumeGroupSnapshotRequest, opts ...grpc.CallOption) (*CreateVolumeGroupSnapshotResponse, error)
	DeleteVolumeGroupSnapshot(ctx context.Context, in *DeleteVolumeGroupSnapshotRequest, opts ...grpc.CallOption) (*DeleteVolumeGroupSnapshotResponse, error)
	GetVolumeGroupSnapshot(ctx context.Context, in *GetVolumeGroupSnapshotRequest, opts ...grpc.CallOption) (*GetVolumeGroupSnapshotResponse, error)
}

GroupControllerClient is the client API for GroupController service.

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

func NewGroupControllerClient added in v1.8.0

func NewGroupControllerClient(cc *grpc.ClientConn) GroupControllerClient

type GroupControllerGetCapabilitiesRequest added in v1.8.0

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

func (*GroupControllerGetCapabilitiesRequest) Descriptor added in v1.8.0

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

func (*GroupControllerGetCapabilitiesRequest) ProtoMessage added in v1.8.0

func (*GroupControllerGetCapabilitiesRequest) ProtoMessage()

func (*GroupControllerGetCapabilitiesRequest) Reset added in v1.8.0

func (*GroupControllerGetCapabilitiesRequest) String added in v1.8.0

func (*GroupControllerGetCapabilitiesRequest) XXX_DiscardUnknown added in v1.8.0

func (m *GroupControllerGetCapabilitiesRequest) XXX_DiscardUnknown()

func (*GroupControllerGetCapabilitiesRequest) XXX_Marshal added in v1.8.0

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

func (*GroupControllerGetCapabilitiesRequest) XXX_Merge added in v1.8.0

func (*GroupControllerGetCapabilitiesRequest) XXX_Size added in v1.8.0

func (*GroupControllerGetCapabilitiesRequest) XXX_Unmarshal added in v1.8.0

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

type GroupControllerGetCapabilitiesResponse added in v1.8.0

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

func (*GroupControllerGetCapabilitiesResponse) Descriptor added in v1.8.0

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

func (*GroupControllerGetCapabilitiesResponse) GetCapabilities added in v1.8.0

func (*GroupControllerGetCapabilitiesResponse) ProtoMessage added in v1.8.0

func (*GroupControllerGetCapabilitiesResponse) Reset added in v1.8.0

func (*GroupControllerGetCapabilitiesResponse) String added in v1.8.0

func (*GroupControllerGetCapabilitiesResponse) XXX_DiscardUnknown added in v1.8.0

func (m *GroupControllerGetCapabilitiesResponse) XXX_DiscardUnknown()

func (*GroupControllerGetCapabilitiesResponse) XXX_Marshal added in v1.8.0

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

func (*GroupControllerGetCapabilitiesResponse) XXX_Merge added in v1.8.0

func (*GroupControllerGetCapabilitiesResponse) XXX_Size added in v1.8.0

func (*GroupControllerGetCapabilitiesResponse) XXX_Unmarshal added in v1.8.0

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

type GroupControllerServer added in v1.8.0

GroupControllerServer is the server API for GroupController service.

type GroupControllerServiceCapability added in v1.8.0

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

Specifies a capability of the group controller service.

func (*GroupControllerServiceCapability) Descriptor added in v1.8.0

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

func (*GroupControllerServiceCapability) GetRpc added in v1.8.0

func (*GroupControllerServiceCapability) GetType added in v1.8.0

func (m *GroupControllerServiceCapability) GetType() isGroupControllerServiceCapability_Type

func (*GroupControllerServiceCapability) ProtoMessage added in v1.8.0

func (*GroupControllerServiceCapability) ProtoMessage()

func (*GroupControllerServiceCapability) Reset added in v1.8.0

func (*GroupControllerServiceCapability) String added in v1.8.0

func (*GroupControllerServiceCapability) XXX_DiscardUnknown added in v1.8.0

func (m *GroupControllerServiceCapability) XXX_DiscardUnknown()

func (*GroupControllerServiceCapability) XXX_Marshal added in v1.8.0

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

func (*GroupControllerServiceCapability) XXX_Merge added in v1.8.0

func (*GroupControllerServiceCapability) XXX_OneofWrappers added in v1.8.0

func (*GroupControllerServiceCapability) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*GroupControllerServiceCapability) XXX_Size added in v1.8.0

func (m *GroupControllerServiceCapability) XXX_Size() int

func (*GroupControllerServiceCapability) XXX_Unmarshal added in v1.8.0

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

type GroupControllerServiceCapability_RPC added in v1.8.0

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

func (*GroupControllerServiceCapability_RPC) Descriptor added in v1.8.0

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

func (*GroupControllerServiceCapability_RPC) GetType added in v1.8.0

func (*GroupControllerServiceCapability_RPC) ProtoMessage added in v1.8.0

func (*GroupControllerServiceCapability_RPC) ProtoMessage()

func (*GroupControllerServiceCapability_RPC) Reset added in v1.8.0

func (*GroupControllerServiceCapability_RPC) String added in v1.8.0

func (*GroupControllerServiceCapability_RPC) XXX_DiscardUnknown added in v1.8.0

func (m *GroupControllerServiceCapability_RPC) XXX_DiscardUnknown()

func (*GroupControllerServiceCapability_RPC) XXX_Marshal added in v1.8.0

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

func (*GroupControllerServiceCapability_RPC) XXX_Merge added in v1.8.0

func (*GroupControllerServiceCapability_RPC) XXX_Size added in v1.8.0

func (*GroupControllerServiceCapability_RPC) XXX_Unmarshal added in v1.8.0

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

type GroupControllerServiceCapability_RPC_Type added in v1.8.0

type GroupControllerServiceCapability_RPC_Type int32
const (
	GroupControllerServiceCapability_RPC_UNKNOWN GroupControllerServiceCapability_RPC_Type = 0
	// Indicates that the group controller plugin supports
	// creating, deleting, and getting details of a volume
	// group snapshot.
	GroupControllerServiceCapability_RPC_CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT GroupControllerServiceCapability_RPC_Type = 1
)

func (GroupControllerServiceCapability_RPC_Type) EnumDescriptor added in v1.8.0

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

func (GroupControllerServiceCapability_RPC_Type) String added in v1.8.0

type GroupControllerServiceCapability_Rpc added in v1.8.0

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

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 added in v1.0.0

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"`
	// Secrets required by plugin to complete ListSnapshot 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:"-"`
}

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

func (*ListSnapshotsRequest) Descriptor added in v1.0.0

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

func (*ListSnapshotsRequest) GetMaxEntries added in v1.0.0

func (m *ListSnapshotsRequest) GetMaxEntries() int32

func (*ListSnapshotsRequest) GetSecrets added in v1.2.0

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

func (*ListSnapshotsRequest) GetSnapshotId added in v1.0.0

func (m *ListSnapshotsRequest) GetSnapshotId() string

func (*ListSnapshotsRequest) GetSourceVolumeId added in v1.0.0

func (m *ListSnapshotsRequest) GetSourceVolumeId() string

func (*ListSnapshotsRequest) GetStartingToken added in v1.0.0

func (m *ListSnapshotsRequest) GetStartingToken() string

func (*ListSnapshotsRequest) ProtoMessage added in v1.0.0

func (*ListSnapshotsRequest) ProtoMessage()

func (*ListSnapshotsRequest) Reset added in v1.0.0

func (m *ListSnapshotsRequest) Reset()

func (*ListSnapshotsRequest) String added in v1.0.0

func (m *ListSnapshotsRequest) String() string

func (*ListSnapshotsRequest) XXX_DiscardUnknown added in v1.0.0

func (m *ListSnapshotsRequest) XXX_DiscardUnknown()

func (*ListSnapshotsRequest) XXX_Marshal added in v1.0.0

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

func (*ListSnapshotsRequest) XXX_Merge added in v1.0.0

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

func (*ListSnapshotsRequest) XXX_Size added in v1.0.0

func (m *ListSnapshotsRequest) XXX_Size() int

func (*ListSnapshotsRequest) XXX_Unmarshal added in v1.0.0

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

type ListSnapshotsResponse added in v1.0.0

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 added in v1.0.0

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

func (*ListSnapshotsResponse) GetEntries added in v1.0.0

func (*ListSnapshotsResponse) GetNextToken added in v1.0.0

func (m *ListSnapshotsResponse) GetNextToken() string

func (*ListSnapshotsResponse) ProtoMessage added in v1.0.0

func (*ListSnapshotsResponse) ProtoMessage()

func (*ListSnapshotsResponse) Reset added in v1.0.0

func (m *ListSnapshotsResponse) Reset()

func (*ListSnapshotsResponse) String added in v1.0.0

func (m *ListSnapshotsResponse) String() string

func (*ListSnapshotsResponse) XXX_DiscardUnknown added in v1.0.0

func (m *ListSnapshotsResponse) XXX_DiscardUnknown()

func (*ListSnapshotsResponse) XXX_Marshal added in v1.0.0

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

func (*ListSnapshotsResponse) XXX_Merge added in v1.0.0

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

func (*ListSnapshotsResponse) XXX_Size added in v1.0.0

func (m *ListSnapshotsResponse) XXX_Size() int

func (*ListSnapshotsResponse) XXX_Unmarshal added in v1.0.0

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

type ListSnapshotsResponse_Entry added in v1.0.0

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 added in v1.0.0

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

func (*ListSnapshotsResponse_Entry) GetSnapshot added in v1.0.0

func (m *ListSnapshotsResponse_Entry) GetSnapshot() *Snapshot

func (*ListSnapshotsResponse_Entry) ProtoMessage added in v1.0.0

func (*ListSnapshotsResponse_Entry) ProtoMessage()

func (*ListSnapshotsResponse_Entry) Reset added in v1.0.0

func (m *ListSnapshotsResponse_Entry) Reset()

func (*ListSnapshotsResponse_Entry) String added in v1.0.0

func (m *ListSnapshotsResponse_Entry) String() string

func (*ListSnapshotsResponse_Entry) XXX_DiscardUnknown added in v1.0.0

func (m *ListSnapshotsResponse_Entry) XXX_DiscardUnknown()

func (*ListSnapshotsResponse_Entry) XXX_Marshal added in v1.0.0

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

func (*ListSnapshotsResponse_Entry) XXX_Merge added in v1.0.0

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

func (*ListSnapshotsResponse_Entry) XXX_Size added in v1.0.0

func (m *ListSnapshotsResponse_Entry) XXX_Size() int

func (*ListSnapshotsResponse_Entry) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *ListVolumesRequest) XXX_DiscardUnknown()

func (*ListVolumesRequest) XXX_Marshal added in v1.0.0

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

func (*ListVolumesRequest) XXX_Merge added in v1.0.0

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

func (*ListVolumesRequest) XXX_Size added in v1.0.0

func (m *ListVolumesRequest) XXX_Size() int

func (*ListVolumesRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *ListVolumesResponse) XXX_DiscardUnknown()

func (*ListVolumesResponse) XXX_Marshal added in v1.0.0

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

func (*ListVolumesResponse) XXX_Merge added in v1.0.0

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

func (*ListVolumesResponse) XXX_Size added in v1.0.0

func (m *ListVolumesResponse) XXX_Size() int

func (*ListVolumesResponse) XXX_Unmarshal added in v1.0.0

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

type ListVolumesResponse_Entry

type ListVolumesResponse_Entry struct {
	// This field is REQUIRED
	Volume *Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"`
	// This field is OPTIONAL. This field MUST be specified if the
	// LIST_VOLUMES_PUBLISHED_NODES controller capability is
	// supported.
	Status               *ListVolumesResponse_VolumeStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,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) GetStatus added in v1.2.0

func (*ListVolumesResponse_Entry) GetVolume added in v1.0.0

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 added in v1.0.0

func (m *ListVolumesResponse_Entry) XXX_DiscardUnknown()

func (*ListVolumesResponse_Entry) XXX_Marshal added in v1.0.0

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

func (*ListVolumesResponse_Entry) XXX_Merge added in v1.0.0

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

func (*ListVolumesResponse_Entry) XXX_Size added in v1.0.0

func (m *ListVolumesResponse_Entry) XXX_Size() int

func (*ListVolumesResponse_Entry) XXX_Unmarshal added in v1.0.0

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

type ListVolumesResponse_VolumeStatus added in v1.2.0

type ListVolumesResponse_VolumeStatus struct {
	// A list of all `node_id` of nodes that the volume in this entry
	// is controller published on.
	// This field is OPTIONAL. If it is not specified and the SP has
	// the LIST_VOLUMES_PUBLISHED_NODES controller capability, the CO
	// MAY assume the volume is not controller published to any nodes.
	// If the field is not specified and the SP does not have the
	// LIST_VOLUMES_PUBLISHED_NODES controller capability, the CO MUST
	// not interpret this field.
	// published_node_ids MAY include nodes not published to or
	// reported by the SP. The CO MUST be resilient to that.
	PublishedNodeIds []string `protobuf:"bytes,1,rep,name=published_node_ids,json=publishedNodeIds,proto3" json:"published_node_ids,omitempty"`
	// Information about the current condition of the volume.
	// This field is OPTIONAL.
	// This field MUST be specified if the
	// VOLUME_CONDITION controller capability is supported.
	VolumeCondition      *VolumeCondition `protobuf:"bytes,2,opt,name=volume_condition,json=volumeCondition,proto3" json:"volume_condition,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*ListVolumesResponse_VolumeStatus) Descriptor added in v1.2.0

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

func (*ListVolumesResponse_VolumeStatus) GetPublishedNodeIds added in v1.2.0

func (m *ListVolumesResponse_VolumeStatus) GetPublishedNodeIds() []string

func (*ListVolumesResponse_VolumeStatus) GetVolumeCondition added in v1.3.0

func (m *ListVolumesResponse_VolumeStatus) GetVolumeCondition() *VolumeCondition

func (*ListVolumesResponse_VolumeStatus) ProtoMessage added in v1.2.0

func (*ListVolumesResponse_VolumeStatus) ProtoMessage()

func (*ListVolumesResponse_VolumeStatus) Reset added in v1.2.0

func (*ListVolumesResponse_VolumeStatus) String added in v1.2.0

func (*ListVolumesResponse_VolumeStatus) XXX_DiscardUnknown added in v1.2.0

func (m *ListVolumesResponse_VolumeStatus) XXX_DiscardUnknown()

func (*ListVolumesResponse_VolumeStatus) XXX_Marshal added in v1.2.0

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

func (*ListVolumesResponse_VolumeStatus) XXX_Merge added in v1.2.0

func (*ListVolumesResponse_VolumeStatus) XXX_Size added in v1.2.0

func (m *ListVolumesResponse_VolumeStatus) XXX_Size() int

func (*ListVolumesResponse_VolumeStatus) XXX_Unmarshal added in v1.2.0

func (m *ListVolumesResponse_VolumeStatus) 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 NodeExpandVolumeRequest added in v1.1.0

type NodeExpandVolumeRequest 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 on which volume is available. This field is REQUIRED.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	VolumePath string `protobuf:"bytes,2,opt,name=volume_path,json=volumePath,proto3" json:"volume_path,omitempty"`
	// This allows CO to specify the capacity requirements of the volume
	// after expansion. If capacity_range is omitted then a plugin MAY
	// inspect the file system of the volume to determine the maximum
	// capacity to which the volume can be expanded. In such cases a
	// plugin MAY expand the volume to its maximum capacity.
	// This field is OPTIONAL.
	CapacityRange *CapacityRange `protobuf:"bytes,3,opt,name=capacity_range,json=capacityRange,proto3" json:"capacity_range,omitempty"`
	// The path where the volume is staged, if the plugin has the
	// STAGE_UNSTAGE_VOLUME capability, otherwise empty.
	// If not empty, it MUST be an absolute path in the root
	// filesystem of the process serving this request.
	// This field is OPTIONAL.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	StagingTargetPath string `protobuf:"bytes,4,opt,name=staging_target_path,json=stagingTargetPath,proto3" json:"staging_target_path,omitempty"`
	// Volume capability describing how the CO intends to use this volume.
	// This allows SP to determine if volume is being used as a block
	// device or mounted file system. For example - if volume is being
	// used as a block device the SP MAY choose to skip expanding the
	// filesystem in NodeExpandVolume implementation but still perform
	// rest of the housekeeping needed for expanding the volume. If
	// volume_capability is omitted the SP MAY determine
	// access_type from given volume_path for the volume and perform
	// node expansion. This is an OPTIONAL field.
	VolumeCapability *VolumeCapability `protobuf:"bytes,5,opt,name=volume_capability,json=volumeCapability,proto3" json:"volume_capability,omitempty"`
	// Secrets required by plugin to complete node expand 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 */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*NodeExpandVolumeRequest) Descriptor added in v1.1.0

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

func (*NodeExpandVolumeRequest) GetCapacityRange added in v1.1.0

func (m *NodeExpandVolumeRequest) GetCapacityRange() *CapacityRange

func (*NodeExpandVolumeRequest) GetSecrets added in v1.5.0

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

func (*NodeExpandVolumeRequest) GetStagingTargetPath added in v1.2.0

func (m *NodeExpandVolumeRequest) GetStagingTargetPath() string

func (*NodeExpandVolumeRequest) GetVolumeCapability added in v1.2.0

func (m *NodeExpandVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*NodeExpandVolumeRequest) GetVolumeId added in v1.1.0

func (m *NodeExpandVolumeRequest) GetVolumeId() string

func (*NodeExpandVolumeRequest) GetVolumePath added in v1.1.0

func (m *NodeExpandVolumeRequest) GetVolumePath() string

func (*NodeExpandVolumeRequest) ProtoMessage added in v1.1.0

func (*NodeExpandVolumeRequest) ProtoMessage()

func (*NodeExpandVolumeRequest) Reset added in v1.1.0

func (m *NodeExpandVolumeRequest) Reset()

func (*NodeExpandVolumeRequest) String added in v1.1.0

func (m *NodeExpandVolumeRequest) String() string

func (*NodeExpandVolumeRequest) XXX_DiscardUnknown added in v1.1.0

func (m *NodeExpandVolumeRequest) XXX_DiscardUnknown()

func (*NodeExpandVolumeRequest) XXX_Marshal added in v1.1.0

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

func (*NodeExpandVolumeRequest) XXX_Merge added in v1.1.0

func (m *NodeExpandVolumeRequest) XXX_Merge(src proto.Message)

func (*NodeExpandVolumeRequest) XXX_Size added in v1.1.0

func (m *NodeExpandVolumeRequest) XXX_Size() int

func (*NodeExpandVolumeRequest) XXX_Unmarshal added in v1.1.0

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

type NodeExpandVolumeResponse added in v1.1.0

type NodeExpandVolumeResponse struct {
	// The capacity of the volume in bytes. This field is OPTIONAL.
	CapacityBytes        int64    `protobuf:"varint,1,opt,name=capacity_bytes,json=capacityBytes,proto3" json:"capacity_bytes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*NodeExpandVolumeResponse) Descriptor added in v1.1.0

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

func (*NodeExpandVolumeResponse) GetCapacityBytes added in v1.1.0

func (m *NodeExpandVolumeResponse) GetCapacityBytes() int64

func (*NodeExpandVolumeResponse) ProtoMessage added in v1.1.0

func (*NodeExpandVolumeResponse) ProtoMessage()

func (*NodeExpandVolumeResponse) Reset added in v1.1.0

func (m *NodeExpandVolumeResponse) Reset()

func (*NodeExpandVolumeResponse) String added in v1.1.0

func (m *NodeExpandVolumeResponse) String() string

func (*NodeExpandVolumeResponse) XXX_DiscardUnknown added in v1.1.0

func (m *NodeExpandVolumeResponse) XXX_DiscardUnknown()

func (*NodeExpandVolumeResponse) XXX_Marshal added in v1.1.0

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

func (*NodeExpandVolumeResponse) XXX_Merge added in v1.1.0

func (m *NodeExpandVolumeResponse) XXX_Merge(src proto.Message)

func (*NodeExpandVolumeResponse) XXX_Size added in v1.1.0

func (m *NodeExpandVolumeResponse) XXX_Size() int

func (*NodeExpandVolumeResponse) XXX_Unmarshal added in v1.1.0

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

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 added in v1.0.0

func (m *NodeGetCapabilitiesRequest) XXX_DiscardUnknown()

func (*NodeGetCapabilitiesRequest) XXX_Marshal added in v1.0.0

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

func (*NodeGetCapabilitiesRequest) XXX_Merge added in v1.0.0

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

func (*NodeGetCapabilitiesRequest) XXX_Size added in v1.0.0

func (m *NodeGetCapabilitiesRequest) XXX_Size() int

func (*NodeGetCapabilitiesRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *NodeGetCapabilitiesResponse) XXX_DiscardUnknown()

func (*NodeGetCapabilitiesResponse) XXX_Marshal added in v1.0.0

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

func (*NodeGetCapabilitiesResponse) XXX_Merge added in v1.0.0

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

func (*NodeGetCapabilitiesResponse) XXX_Size added in v1.0.0

func (m *NodeGetCapabilitiesResponse) XXX_Size() int

func (*NodeGetCapabilitiesResponse) XXX_Unmarshal added in v1.0.0

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

type NodeGetInfoRequest added in v1.0.0

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

func (*NodeGetInfoRequest) Descriptor added in v1.0.0

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

func (*NodeGetInfoRequest) ProtoMessage added in v1.0.0

func (*NodeGetInfoRequest) ProtoMessage()

func (*NodeGetInfoRequest) Reset added in v1.0.0

func (m *NodeGetInfoRequest) Reset()

func (*NodeGetInfoRequest) String added in v1.0.0

func (m *NodeGetInfoRequest) String() string

func (*NodeGetInfoRequest) XXX_DiscardUnknown added in v1.0.0

func (m *NodeGetInfoRequest) XXX_DiscardUnknown()

func (*NodeGetInfoRequest) XXX_Marshal added in v1.0.0

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

func (*NodeGetInfoRequest) XXX_Merge added in v1.0.0

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

func (*NodeGetInfoRequest) XXX_Size added in v1.0.0

func (m *NodeGetInfoRequest) XXX_Size() int

func (*NodeGetInfoRequest) XXX_Unmarshal added in v1.0.0

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

type NodeGetInfoResponse added in v1.0.0

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.
	// This field overrides the general CSI size limit.
	// The size of this field SHALL NOT exceed 256 bytes. The general
	// CSI size limit, 128 byte, is RECOMMENDED for best backwards
	// compatibility.
	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": "Z2"}
	//
	// 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 added in v1.0.0

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

func (*NodeGetInfoResponse) GetAccessibleTopology added in v1.0.0

func (m *NodeGetInfoResponse) GetAccessibleTopology() *Topology

func (*NodeGetInfoResponse) GetMaxVolumesPerNode added in v1.0.0

func (m *NodeGetInfoResponse) GetMaxVolumesPerNode() int64

func (*NodeGetInfoResponse) GetNodeId added in v1.0.0

func (m *NodeGetInfoResponse) GetNodeId() string

func (*NodeGetInfoResponse) ProtoMessage added in v1.0.0

func (*NodeGetInfoResponse) ProtoMessage()

func (*NodeGetInfoResponse) Reset added in v1.0.0

func (m *NodeGetInfoResponse) Reset()

func (*NodeGetInfoResponse) String added in v1.0.0

func (m *NodeGetInfoResponse) String() string

func (*NodeGetInfoResponse) XXX_DiscardUnknown added in v1.0.0

func (m *NodeGetInfoResponse) XXX_DiscardUnknown()

func (*NodeGetInfoResponse) XXX_Marshal added in v1.0.0

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

func (*NodeGetInfoResponse) XXX_Merge added in v1.0.0

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

func (*NodeGetInfoResponse) XXX_Size added in v1.0.0

func (m *NodeGetInfoResponse) XXX_Size() int

func (*NodeGetInfoResponse) XXX_Unmarshal added in v1.0.0

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

type NodeGetVolumeStatsRequest added in v1.0.0

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.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	VolumePath string `protobuf:"bytes,2,opt,name=volume_path,json=volumePath,proto3" json:"volume_path,omitempty"`
	// The path where the volume is staged, if the plugin has the
	// STAGE_UNSTAGE_VOLUME capability, otherwise empty.
	// If not empty, it MUST be an absolute path in the root
	// filesystem of the process serving this request.
	// This field is OPTIONAL.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	StagingTargetPath    string   `protobuf:"bytes,3,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 (*NodeGetVolumeStatsRequest) Descriptor added in v1.0.0

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

func (*NodeGetVolumeStatsRequest) GetStagingTargetPath added in v1.2.0

func (m *NodeGetVolumeStatsRequest) GetStagingTargetPath() string

func (*NodeGetVolumeStatsRequest) GetVolumeId added in v1.0.0

func (m *NodeGetVolumeStatsRequest) GetVolumeId() string

func (*NodeGetVolumeStatsRequest) GetVolumePath added in v1.0.0

func (m *NodeGetVolumeStatsRequest) GetVolumePath() string

func (*NodeGetVolumeStatsRequest) ProtoMessage added in v1.0.0

func (*NodeGetVolumeStatsRequest) ProtoMessage()

func (*NodeGetVolumeStatsRequest) Reset added in v1.0.0

func (m *NodeGetVolumeStatsRequest) Reset()

func (*NodeGetVolumeStatsRequest) String added in v1.0.0

func (m *NodeGetVolumeStatsRequest) String() string

func (*NodeGetVolumeStatsRequest) XXX_DiscardUnknown added in v1.0.0

func (m *NodeGetVolumeStatsRequest) XXX_DiscardUnknown()

func (*NodeGetVolumeStatsRequest) XXX_Marshal added in v1.0.0

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

func (*NodeGetVolumeStatsRequest) XXX_Merge added in v1.0.0

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

func (*NodeGetVolumeStatsRequest) XXX_Size added in v1.0.0

func (m *NodeGetVolumeStatsRequest) XXX_Size() int

func (*NodeGetVolumeStatsRequest) XXX_Unmarshal added in v1.0.0

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

type NodeGetVolumeStatsResponse added in v1.0.0

type NodeGetVolumeStatsResponse struct {
	// This field is OPTIONAL.
	Usage []*VolumeUsage `protobuf:"bytes,1,rep,name=usage,proto3" json:"usage,omitempty"`
	// Information about the current condition of the volume.
	// This field is OPTIONAL.
	// This field MUST be specified if the VOLUME_CONDITION node
	// capability is supported.
	VolumeCondition      *VolumeCondition `protobuf:"bytes,2,opt,name=volume_condition,json=volumeCondition,proto3" json:"volume_condition,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*NodeGetVolumeStatsResponse) Descriptor added in v1.0.0

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

func (*NodeGetVolumeStatsResponse) GetUsage added in v1.0.0

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

func (*NodeGetVolumeStatsResponse) GetVolumeCondition added in v1.3.0

func (m *NodeGetVolumeStatsResponse) GetVolumeCondition() *VolumeCondition

func (*NodeGetVolumeStatsResponse) ProtoMessage added in v1.0.0

func (*NodeGetVolumeStatsResponse) ProtoMessage()

func (*NodeGetVolumeStatsResponse) Reset added in v1.0.0

func (m *NodeGetVolumeStatsResponse) Reset()

func (*NodeGetVolumeStatsResponse) String added in v1.0.0

func (m *NodeGetVolumeStatsResponse) String() string

func (*NodeGetVolumeStatsResponse) XXX_DiscardUnknown added in v1.0.0

func (m *NodeGetVolumeStatsResponse) XXX_DiscardUnknown()

func (*NodeGetVolumeStatsResponse) XXX_Marshal added in v1.0.0

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

func (*NodeGetVolumeStatsResponse) XXX_Merge added in v1.0.0

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

func (*NodeGetVolumeStatsResponse) XXX_Size added in v1.0.0

func (m *NodeGetVolumeStatsResponse) XXX_Size() int

func (*NodeGetVolumeStatsResponse) XXX_Unmarshal added in v1.0.0

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.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	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.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	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 SP in
	// CreateVolumeResponse.Volume.volume_context.
	// 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 added in v1.0.0

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

func (*NodePublishVolumeRequest) GetReadonly

func (m *NodePublishVolumeRequest) GetReadonly() bool

func (*NodePublishVolumeRequest) GetSecrets added in v1.0.0

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

func (*NodePublishVolumeRequest) GetStagingTargetPath added in v1.0.0

func (m *NodePublishVolumeRequest) GetStagingTargetPath() string

func (*NodePublishVolumeRequest) GetTargetPath

func (m *NodePublishVolumeRequest) GetTargetPath() string

func (*NodePublishVolumeRequest) GetVolumeCapability

func (m *NodePublishVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*NodePublishVolumeRequest) GetVolumeContext added in v1.0.0

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 added in v1.0.0

func (m *NodePublishVolumeRequest) XXX_DiscardUnknown()

func (*NodePublishVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*NodePublishVolumeRequest) XXX_Merge added in v1.0.0

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

func (*NodePublishVolumeRequest) XXX_Size added in v1.0.0

func (m *NodePublishVolumeRequest) XXX_Size() int

func (*NodePublishVolumeRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *NodePublishVolumeResponse) XXX_DiscardUnknown()

func (*NodePublishVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*NodePublishVolumeResponse) XXX_Merge added in v1.0.0

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

func (*NodePublishVolumeResponse) XXX_Size added in v1.0.0

func (m *NodePublishVolumeResponse) XXX_Size() int

func (*NodePublishVolumeResponse) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *NodeServiceCapability) XXX_DiscardUnknown()

func (*NodeServiceCapability) XXX_Marshal added in v1.0.0

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

func (*NodeServiceCapability) XXX_Merge added in v1.0.0

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

func (*NodeServiceCapability) XXX_OneofWrappers added in v1.2.0

func (*NodeServiceCapability) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*NodeServiceCapability) XXX_Size added in v1.0.0

func (m *NodeServiceCapability) XXX_Size() int

func (*NodeServiceCapability) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *NodeServiceCapability_RPC) XXX_DiscardUnknown()

func (*NodeServiceCapability_RPC) XXX_Marshal added in v1.0.0

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

func (*NodeServiceCapability_RPC) XXX_Merge added in v1.0.0

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

func (*NodeServiceCapability_RPC) XXX_Size added in v1.0.0

func (m *NodeServiceCapability_RPC) XXX_Size() int

func (*NodeServiceCapability_RPC) XXX_Unmarshal added in v1.0.0

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
	// See VolumeExpansion for details.
	NodeServiceCapability_RPC_EXPAND_VOLUME NodeServiceCapability_RPC_Type = 3
	// Indicates that the Node service can report volume conditions.
	// An SP MAY implement `VolumeCondition` in only the Node
	// Plugin, only the Controller Plugin, or both.
	// If `VolumeCondition` is implemented in both the Node and
	// Controller Plugins, it SHALL report from different
	// perspectives.
	// If for some reason Node and Controller Plugins report
	// misaligned volume conditions, CO SHALL assume the worst case
	// is the truth.
	// Note that, for alpha, `VolumeCondition` is intended to be
	// informative for humans only, not for automation.
	NodeServiceCapability_RPC_VOLUME_CONDITION NodeServiceCapability_RPC_Type = 4
	// Indicates the SP supports the SINGLE_NODE_SINGLE_WRITER and/or
	// SINGLE_NODE_MULTI_WRITER access modes.
	// These access modes are intended to replace the
	// SINGLE_NODE_WRITER access mode to clarify the number of writers
	// for a volume on a single node. Plugins MUST accept and allow
	// use of the SINGLE_NODE_WRITER access mode (subject to the
	// processing rules for NodePublishVolume), when either
	// SINGLE_NODE_SINGLE_WRITER and/or SINGLE_NODE_MULTI_WRITER are
	// supported, in order to permit older COs to continue working.
	NodeServiceCapability_RPC_SINGLE_NODE_MULTI_WRITER NodeServiceCapability_RPC_Type = 5
	// Indicates that Node service supports mounting volumes
	// with provided volume group identifier during node stage
	// or node publish RPC calls.
	NodeServiceCapability_RPC_VOLUME_MOUNT_GROUP NodeServiceCapability_RPC_Type = 6
)

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 added in v1.0.0

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.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	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 SP in
	// CreateVolumeResponse.Volume.volume_context.
	// 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 added in v1.0.0

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

func (*NodeStageVolumeRequest) GetPublishContext added in v1.0.0

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

func (*NodeStageVolumeRequest) GetSecrets added in v1.0.0

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

func (*NodeStageVolumeRequest) GetStagingTargetPath added in v1.0.0

func (m *NodeStageVolumeRequest) GetStagingTargetPath() string

func (*NodeStageVolumeRequest) GetVolumeCapability added in v1.0.0

func (m *NodeStageVolumeRequest) GetVolumeCapability() *VolumeCapability

func (*NodeStageVolumeRequest) GetVolumeContext added in v1.0.0

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

func (*NodeStageVolumeRequest) GetVolumeId added in v1.0.0

func (m *NodeStageVolumeRequest) GetVolumeId() string

func (*NodeStageVolumeRequest) ProtoMessage added in v1.0.0

func (*NodeStageVolumeRequest) ProtoMessage()

func (*NodeStageVolumeRequest) Reset added in v1.0.0

func (m *NodeStageVolumeRequest) Reset()

func (*NodeStageVolumeRequest) String added in v1.0.0

func (m *NodeStageVolumeRequest) String() string

func (*NodeStageVolumeRequest) XXX_DiscardUnknown added in v1.0.0

func (m *NodeStageVolumeRequest) XXX_DiscardUnknown()

func (*NodeStageVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*NodeStageVolumeRequest) XXX_Merge added in v1.0.0

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

func (*NodeStageVolumeRequest) XXX_Size added in v1.0.0

func (m *NodeStageVolumeRequest) XXX_Size() int

func (*NodeStageVolumeRequest) XXX_Unmarshal added in v1.0.0

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

type NodeStageVolumeResponse added in v1.0.0

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

func (*NodeStageVolumeResponse) Descriptor added in v1.0.0

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

func (*NodeStageVolumeResponse) ProtoMessage added in v1.0.0

func (*NodeStageVolumeResponse) ProtoMessage()

func (*NodeStageVolumeResponse) Reset added in v1.0.0

func (m *NodeStageVolumeResponse) Reset()

func (*NodeStageVolumeResponse) String added in v1.0.0

func (m *NodeStageVolumeResponse) String() string

func (*NodeStageVolumeResponse) XXX_DiscardUnknown added in v1.0.0

func (m *NodeStageVolumeResponse) XXX_DiscardUnknown()

func (*NodeStageVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*NodeStageVolumeResponse) XXX_Merge added in v1.0.0

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

func (*NodeStageVolumeResponse) XXX_Size added in v1.0.0

func (m *NodeStageVolumeResponse) XXX_Size() int

func (*NodeStageVolumeResponse) XXX_Unmarshal added in v1.0.0

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.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	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 added in v1.0.0

func (m *NodeUnpublishVolumeRequest) XXX_DiscardUnknown()

func (*NodeUnpublishVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*NodeUnpublishVolumeRequest) XXX_Merge added in v1.0.0

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

func (*NodeUnpublishVolumeRequest) XXX_Size added in v1.0.0

func (m *NodeUnpublishVolumeRequest) XXX_Size() int

func (*NodeUnpublishVolumeRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *NodeUnpublishVolumeResponse) XXX_DiscardUnknown()

func (*NodeUnpublishVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*NodeUnpublishVolumeResponse) XXX_Merge added in v1.0.0

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

func (*NodeUnpublishVolumeResponse) XXX_Size added in v1.0.0

func (m *NodeUnpublishVolumeResponse) XXX_Size() int

func (*NodeUnpublishVolumeResponse) XXX_Unmarshal added in v1.0.0

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

type NodeUnstageVolumeRequest added in v1.0.0

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.
	// This field overrides the general CSI size limit.
	// SP SHOULD support the maximum path length allowed by the operating
	// system/filesystem, but, at a minimum, SP MUST accept a max path
	// length of at least 128 bytes.
	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 added in v1.0.0

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

func (*NodeUnstageVolumeRequest) GetStagingTargetPath added in v1.0.0

func (m *NodeUnstageVolumeRequest) GetStagingTargetPath() string

func (*NodeUnstageVolumeRequest) GetVolumeId added in v1.0.0

func (m *NodeUnstageVolumeRequest) GetVolumeId() string

func (*NodeUnstageVolumeRequest) ProtoMessage added in v1.0.0

func (*NodeUnstageVolumeRequest) ProtoMessage()

func (*NodeUnstageVolumeRequest) Reset added in v1.0.0

func (m *NodeUnstageVolumeRequest) Reset()

func (*NodeUnstageVolumeRequest) String added in v1.0.0

func (m *NodeUnstageVolumeRequest) String() string

func (*NodeUnstageVolumeRequest) XXX_DiscardUnknown added in v1.0.0

func (m *NodeUnstageVolumeRequest) XXX_DiscardUnknown()

func (*NodeUnstageVolumeRequest) XXX_Marshal added in v1.0.0

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

func (*NodeUnstageVolumeRequest) XXX_Merge added in v1.0.0

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

func (*NodeUnstageVolumeRequest) XXX_Size added in v1.0.0

func (m *NodeUnstageVolumeRequest) XXX_Size() int

func (*NodeUnstageVolumeRequest) XXX_Unmarshal added in v1.0.0

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

type NodeUnstageVolumeResponse added in v1.0.0

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

func (*NodeUnstageVolumeResponse) Descriptor added in v1.0.0

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

func (*NodeUnstageVolumeResponse) ProtoMessage added in v1.0.0

func (*NodeUnstageVolumeResponse) ProtoMessage()

func (*NodeUnstageVolumeResponse) Reset added in v1.0.0

func (m *NodeUnstageVolumeResponse) Reset()

func (*NodeUnstageVolumeResponse) String added in v1.0.0

func (m *NodeUnstageVolumeResponse) String() string

func (*NodeUnstageVolumeResponse) XXX_DiscardUnknown added in v1.0.0

func (m *NodeUnstageVolumeResponse) XXX_DiscardUnknown()

func (*NodeUnstageVolumeResponse) XXX_Marshal added in v1.0.0

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

func (*NodeUnstageVolumeResponse) XXX_Merge added in v1.0.0

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

func (*NodeUnstageVolumeResponse) XXX_Size added in v1.0.0

func (m *NodeUnstageVolumeResponse) XXX_Size() int

func (*NodeUnstageVolumeResponse) XXX_Unmarshal added in v1.0.0

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

type PluginCapability added in v1.0.0

type PluginCapability struct {
	// Types that are valid to be assigned to Type:
	//
	//	*PluginCapability_Service_
	//	*PluginCapability_VolumeExpansion_
	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 added in v1.0.0

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

func (*PluginCapability) GetService added in v1.0.0

func (m *PluginCapability) GetService() *PluginCapability_Service

func (*PluginCapability) GetType added in v1.0.0

func (m *PluginCapability) GetType() isPluginCapability_Type

func (*PluginCapability) GetVolumeExpansion added in v1.1.0

func (m *PluginCapability) GetVolumeExpansion() *PluginCapability_VolumeExpansion

func (*PluginCapability) ProtoMessage added in v1.0.0

func (*PluginCapability) ProtoMessage()

func (*PluginCapability) Reset added in v1.0.0

func (m *PluginCapability) Reset()

func (*PluginCapability) String added in v1.0.0

func (m *PluginCapability) String() string

func (*PluginCapability) XXX_DiscardUnknown added in v1.0.0

func (m *PluginCapability) XXX_DiscardUnknown()

func (*PluginCapability) XXX_Marshal added in v1.0.0

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

func (*PluginCapability) XXX_Merge added in v1.0.0

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

func (*PluginCapability) XXX_OneofWrappers added in v1.2.0

func (*PluginCapability) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*PluginCapability) XXX_Size added in v1.0.0

func (m *PluginCapability) XXX_Size() int

func (*PluginCapability) XXX_Unmarshal added in v1.0.0

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

type PluginCapability_Service added in v1.0.0

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 added in v1.0.0

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

func (*PluginCapability_Service) GetType added in v1.0.0

func (*PluginCapability_Service) ProtoMessage added in v1.0.0

func (*PluginCapability_Service) ProtoMessage()

func (*PluginCapability_Service) Reset added in v1.0.0

func (m *PluginCapability_Service) Reset()

func (*PluginCapability_Service) String added in v1.0.0

func (m *PluginCapability_Service) String() string

func (*PluginCapability_Service) XXX_DiscardUnknown added in v1.0.0

func (m *PluginCapability_Service) XXX_DiscardUnknown()

func (*PluginCapability_Service) XXX_Marshal added in v1.0.0

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

func (*PluginCapability_Service) XXX_Merge added in v1.0.0

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

func (*PluginCapability_Service) XXX_Size added in v1.0.0

func (m *PluginCapability_Service) XXX_Size() int

func (*PluginCapability_Service) XXX_Unmarshal added in v1.0.0

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

type PluginCapability_Service_ added in v1.0.0

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

type PluginCapability_Service_Type added in v1.0.0

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
	// GROUP_CONTROLLER_SERVICE indicates that the Plugin provides
	// RPCs for operating on groups of volumes. Plugins MAY provide
	// this capability.
	// The presence of this capability determines whether the CO will
	// attempt to invoke the REQUIRED GroupController service RPCs, as
	// well as specific RPCs as indicated by
	// GroupControllerGetCapabilities.
	PluginCapability_Service_GROUP_CONTROLLER_SERVICE PluginCapability_Service_Type = 3
)

func (PluginCapability_Service_Type) EnumDescriptor added in v1.0.0

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

func (PluginCapability_Service_Type) String added in v1.0.0

type PluginCapability_VolumeExpansion added in v1.1.0

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

func (*PluginCapability_VolumeExpansion) Descriptor added in v1.1.0

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

func (*PluginCapability_VolumeExpansion) GetType added in v1.1.0

func (*PluginCapability_VolumeExpansion) ProtoMessage added in v1.1.0

func (*PluginCapability_VolumeExpansion) ProtoMessage()

func (*PluginCapability_VolumeExpansion) Reset added in v1.1.0

func (*PluginCapability_VolumeExpansion) String added in v1.1.0

func (*PluginCapability_VolumeExpansion) XXX_DiscardUnknown added in v1.1.0

func (m *PluginCapability_VolumeExpansion) XXX_DiscardUnknown()

func (*PluginCapability_VolumeExpansion) XXX_Marshal added in v1.1.0

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

func (*PluginCapability_VolumeExpansion) XXX_Merge added in v1.1.0

func (*PluginCapability_VolumeExpansion) XXX_Size added in v1.1.0

func (m *PluginCapability_VolumeExpansion) XXX_Size() int

func (*PluginCapability_VolumeExpansion) XXX_Unmarshal added in v1.1.0

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

type PluginCapability_VolumeExpansion_ added in v1.1.0

type PluginCapability_VolumeExpansion_ struct {
	VolumeExpansion *PluginCapability_VolumeExpansion `protobuf:"bytes,2,opt,name=volume_expansion,json=volumeExpansion,proto3,oneof"`
}

type PluginCapability_VolumeExpansion_Type added in v1.1.0

type PluginCapability_VolumeExpansion_Type int32
const (
	PluginCapability_VolumeExpansion_UNKNOWN PluginCapability_VolumeExpansion_Type = 0
	// ONLINE indicates that volumes may be expanded when published to
	// a node. When a Plugin implements this capability it MUST
	// implement either the EXPAND_VOLUME controller capability or the
	// EXPAND_VOLUME node capability or both. When a plugin supports
	// ONLINE volume expansion and also has the EXPAND_VOLUME
	// controller capability then the plugin MUST support expansion of
	// volumes currently published and available on a node. When a
	// plugin supports ONLINE volume expansion and also has the
	// EXPAND_VOLUME node capability then the plugin MAY support
	// expansion of node-published volume via NodeExpandVolume.
	//
	// Example 1: Given a shared filesystem volume (e.g. GlusterFs),
	//
	//	the Plugin may set the ONLINE volume expansion capability and
	//	implement ControllerExpandVolume but not NodeExpandVolume.
	//
	// Example 2: Given a block storage volume type (e.g. EBS), the
	//
	//	Plugin may set the ONLINE volume expansion capability and
	//	implement both ControllerExpandVolume and NodeExpandVolume.
	//
	// Example 3: Given a Plugin that supports volume expansion only
	//
	//	upon a node, the Plugin may set the ONLINE volume
	//	expansion capability and implement NodeExpandVolume but not
	//	ControllerExpandVolume.
	PluginCapability_VolumeExpansion_ONLINE PluginCapability_VolumeExpansion_Type = 1
	// OFFLINE indicates that volumes currently published and
	// available on a node SHALL NOT be expanded via
	// ControllerExpandVolume. When a plugin supports OFFLINE volume
	// expansion it MUST implement either the EXPAND_VOLUME controller
	// capability or both the EXPAND_VOLUME controller capability and
	// the EXPAND_VOLUME node capability.
	//
	// Example 1: Given a block storage volume type (e.g. Azure Disk)
	//
	//	that does not support expansion of "node-attached" (i.e.
	//	controller-published) volumes, the Plugin may indicate
	//	OFFLINE volume expansion support and implement both
	//	ControllerExpandVolume and NodeExpandVolume.
	PluginCapability_VolumeExpansion_OFFLINE PluginCapability_VolumeExpansion_Type = 2
)

func (PluginCapability_VolumeExpansion_Type) EnumDescriptor added in v1.1.0

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

func (PluginCapability_VolumeExpansion_Type) String added in v1.1.0

type ProbeRequest added in v1.0.0

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

func (*ProbeRequest) Descriptor added in v1.0.0

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

func (*ProbeRequest) ProtoMessage added in v1.0.0

func (*ProbeRequest) ProtoMessage()

func (*ProbeRequest) Reset added in v1.0.0

func (m *ProbeRequest) Reset()

func (*ProbeRequest) String added in v1.0.0

func (m *ProbeRequest) String() string

func (*ProbeRequest) XXX_DiscardUnknown added in v1.0.0

func (m *ProbeRequest) XXX_DiscardUnknown()

func (*ProbeRequest) XXX_Marshal added in v1.0.0

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

func (*ProbeRequest) XXX_Merge added in v1.0.0

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

func (*ProbeRequest) XXX_Size added in v1.0.0

func (m *ProbeRequest) XXX_Size() int

func (*ProbeRequest) XXX_Unmarshal added in v1.0.0

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

type ProbeResponse added in v1.0.0

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 added in v1.0.0

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

func (*ProbeResponse) GetReady added in v1.0.0

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

func (*ProbeResponse) ProtoMessage added in v1.0.0

func (*ProbeResponse) ProtoMessage()

func (*ProbeResponse) Reset added in v1.0.0

func (m *ProbeResponse) Reset()

func (*ProbeResponse) String added in v1.0.0

func (m *ProbeResponse) String() string

func (*ProbeResponse) XXX_DiscardUnknown added in v1.0.0

func (m *ProbeResponse) XXX_DiscardUnknown()

func (*ProbeResponse) XXX_Marshal added in v1.0.0

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

func (*ProbeResponse) XXX_Merge added in v1.0.0

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

func (*ProbeResponse) XXX_Size added in v1.0.0

func (m *ProbeResponse) XXX_Size() int

func (*ProbeResponse) XXX_Unmarshal added in v1.0.0

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

type Snapshot added in v1.0.0

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"`
	// The ID of the volume group snapshot that this snapshot is part of.
	// It uniquely identifies the group snapshot on the storage system.
	// This field is OPTIONAL.
	// If this snapshot is a member of a volume group snapshot, and it
	// MUST NOT be deleted as a stand alone snapshot, then the SP
	// MUST provide the ID of the volume group snapshot in this field.
	// If provided, CO MUST use this field in subsequent volume group
	// snapshot operations to indicate that this snapshot is part of the
	// specified group snapshot.
	// If not provided, CO SHALL treat the snapshot as independent,
	// and SP SHALL allow it to be deleted separately.
	// If this message is inside a VolumeGroupSnapshot message, the value
	// MUST be the same as the group_snapshot_id in that message.
	GroupSnapshotId      string   `protobuf:"bytes,6,opt,name=group_snapshot_id,json=groupSnapshotId,proto3" json:"group_snapshot_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Information about a specific snapshot.

func (*Snapshot) Descriptor added in v1.0.0

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

func (*Snapshot) GetCreationTime added in v1.0.0

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

func (*Snapshot) GetGroupSnapshotId added in v1.8.0

func (m *Snapshot) GetGroupSnapshotId() string

func (*Snapshot) GetReadyToUse added in v1.0.0

func (m *Snapshot) GetReadyToUse() bool

func (*Snapshot) GetSizeBytes added in v1.0.0

func (m *Snapshot) GetSizeBytes() int64

func (*Snapshot) GetSnapshotId added in v1.0.0

func (m *Snapshot) GetSnapshotId() string

func (*Snapshot) GetSourceVolumeId added in v1.0.0

func (m *Snapshot) GetSourceVolumeId() string

func (*Snapshot) ProtoMessage added in v1.0.0

func (*Snapshot) ProtoMessage()

func (*Snapshot) Reset added in v1.0.0

func (m *Snapshot) Reset()

func (*Snapshot) String added in v1.0.0

func (m *Snapshot) String() string

func (*Snapshot) XXX_DiscardUnknown added in v1.0.0

func (m *Snapshot) XXX_DiscardUnknown()

func (*Snapshot) XXX_Marshal added in v1.0.0

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

func (*Snapshot) XXX_Merge added in v1.0.0

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

func (*Snapshot) XXX_Size added in v1.0.0

func (m *Snapshot) XXX_Size() int

func (*Snapshot) XXX_Unmarshal added in v1.0.0

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

type Topology added in v1.0.0

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 added in v1.0.0

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

func (*Topology) GetSegments added in v1.0.0

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

func (*Topology) ProtoMessage added in v1.0.0

func (*Topology) ProtoMessage()

func (*Topology) Reset added in v1.0.0

func (m *Topology) Reset()

func (*Topology) String added in v1.0.0

func (m *Topology) String() string

func (*Topology) XXX_DiscardUnknown added in v1.0.0

func (m *Topology) XXX_DiscardUnknown()

func (*Topology) XXX_Marshal added in v1.0.0

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

func (*Topology) XXX_Merge added in v1.0.0

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

func (*Topology) XXX_Size added in v1.0.0

func (m *Topology) XXX_Size() int

func (*Topology) XXX_Unmarshal added in v1.0.0

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

type TopologyRequirement added in v1.0.0

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, then 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, then 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, then 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 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 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 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 added in v1.0.0

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

func (*TopologyRequirement) GetPreferred added in v1.0.0

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

func (*TopologyRequirement) GetRequisite added in v1.0.0

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

func (*TopologyRequirement) ProtoMessage added in v1.0.0

func (*TopologyRequirement) ProtoMessage()

func (*TopologyRequirement) Reset added in v1.0.0

func (m *TopologyRequirement) Reset()

func (*TopologyRequirement) String added in v1.0.0

func (m *TopologyRequirement) String() string

func (*TopologyRequirement) XXX_DiscardUnknown added in v1.0.0

func (m *TopologyRequirement) XXX_DiscardUnknown()

func (*TopologyRequirement) XXX_Marshal added in v1.0.0

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

func (*TopologyRequirement) XXX_Merge added in v1.0.0

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

func (*TopologyRequirement) XXX_Size added in v1.0.0

func (m *TopologyRequirement) XXX_Size() int

func (*TopologyRequirement) XXX_Unmarshal added in v1.0.0

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

type UnimplementedControllerServer added in v1.2.0

type UnimplementedControllerServer struct {
}

UnimplementedControllerServer can be embedded to have forward compatible implementations.

func (*UnimplementedControllerServer) ControllerExpandVolume added in v1.2.0

func (*UnimplementedControllerServer) ControllerGetCapabilities added in v1.2.0

func (*UnimplementedControllerServer) ControllerGetVolume added in v1.3.0

func (*UnimplementedControllerServer) ControllerModifyVolume added in v1.9.0

func (*UnimplementedControllerServer) ControllerPublishVolume added in v1.2.0

func (*UnimplementedControllerServer) ControllerUnpublishVolume added in v1.2.0

func (*UnimplementedControllerServer) CreateSnapshot added in v1.2.0

func (*UnimplementedControllerServer) CreateVolume added in v1.2.0

func (*UnimplementedControllerServer) DeleteSnapshot added in v1.2.0

func (*UnimplementedControllerServer) DeleteVolume added in v1.2.0

func (*UnimplementedControllerServer) GetCapacity added in v1.2.0

func (*UnimplementedControllerServer) ListSnapshots added in v1.2.0

func (*UnimplementedControllerServer) ListVolumes added in v1.2.0

func (*UnimplementedControllerServer) ValidateVolumeCapabilities added in v1.2.0

type UnimplementedGroupControllerServer added in v1.8.0

type UnimplementedGroupControllerServer struct {
}

UnimplementedGroupControllerServer can be embedded to have forward compatible implementations.

func (*UnimplementedGroupControllerServer) CreateVolumeGroupSnapshot added in v1.8.0

func (*UnimplementedGroupControllerServer) DeleteVolumeGroupSnapshot added in v1.8.0

func (*UnimplementedGroupControllerServer) GetVolumeGroupSnapshot added in v1.8.0

func (*UnimplementedGroupControllerServer) GroupControllerGetCapabilities added in v1.8.0

type UnimplementedIdentityServer added in v1.2.0

type UnimplementedIdentityServer struct {
}

UnimplementedIdentityServer can be embedded to have forward compatible implementations.

func (*UnimplementedIdentityServer) GetPluginCapabilities added in v1.2.0

func (*UnimplementedIdentityServer) GetPluginInfo added in v1.2.0

func (*UnimplementedIdentityServer) Probe added in v1.2.0

type UnimplementedNodeServer added in v1.2.0

type UnimplementedNodeServer struct {
}

UnimplementedNodeServer can be embedded to have forward compatible implementations.

func (*UnimplementedNodeServer) NodeExpandVolume added in v1.2.0

func (*UnimplementedNodeServer) NodeGetCapabilities added in v1.2.0

func (*UnimplementedNodeServer) NodeGetInfo added in v1.2.0

func (*UnimplementedNodeServer) NodeGetVolumeStats added in v1.2.0

func (*UnimplementedNodeServer) NodePublishVolume added in v1.2.0

func (*UnimplementedNodeServer) NodeStageVolume added in v1.2.0

func (*UnimplementedNodeServer) NodeUnpublishVolume added in v1.2.0

func (*UnimplementedNodeServer) NodeUnstageVolume added in v1.2.0

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 SP in
	// CreateVolumeResponse.Volume.volume_context.
	// 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 */
	// See CreateVolumeRequest.mutable_parameters.
	// This field is OPTIONAL.
	MutableParameters    map[string]string `` /* 200-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) GetMutableParameters added in v1.9.0

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

func (*ValidateVolumeCapabilitiesRequest) GetParameters added in v1.0.0

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

func (*ValidateVolumeCapabilitiesRequest) GetSecrets added in v1.0.0

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

func (*ValidateVolumeCapabilitiesRequest) GetVolumeCapabilities

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

func (*ValidateVolumeCapabilitiesRequest) GetVolumeContext added in v1.0.0

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 added in v1.0.0

func (m *ValidateVolumeCapabilitiesRequest) XXX_DiscardUnknown()

func (*ValidateVolumeCapabilitiesRequest) XXX_Marshal added in v1.0.0

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

func (*ValidateVolumeCapabilitiesRequest) XXX_Merge added in v1.0.0

func (*ValidateVolumeCapabilitiesRequest) XXX_Size added in v1.0.0

func (m *ValidateVolumeCapabilitiesRequest) XXX_Size() int

func (*ValidateVolumeCapabilitiesRequest) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse) GetMessage

func (*ValidateVolumeCapabilitiesResponse) ProtoMessage

func (*ValidateVolumeCapabilitiesResponse) ProtoMessage()

func (*ValidateVolumeCapabilitiesResponse) Reset

func (*ValidateVolumeCapabilitiesResponse) String

func (*ValidateVolumeCapabilitiesResponse) XXX_DiscardUnknown added in v1.0.0

func (m *ValidateVolumeCapabilitiesResponse) XXX_DiscardUnknown()

func (*ValidateVolumeCapabilitiesResponse) XXX_Marshal added in v1.0.0

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

func (*ValidateVolumeCapabilitiesResponse) XXX_Merge added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse) XXX_Size added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse) XXX_Unmarshal added in v1.0.0

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

type ValidateVolumeCapabilitiesResponse_Confirmed added in v1.0.0

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 */
	// The volume creation mutable_parameters validated by the plugin.
	// This field is OPTIONAL.
	MutableParameters    map[string]string `` /* 200-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetMutableParameters added in v1.9.0

func (m *ValidateVolumeCapabilitiesResponse_Confirmed) GetMutableParameters() map[string]string

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetParameters added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetVolumeCapabilities added in v1.0.0

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

func (*ValidateVolumeCapabilitiesResponse_Confirmed) GetVolumeContext added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) Reset added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) String added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_DiscardUnknown added in v1.0.0

func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_DiscardUnknown()

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Marshal added in v1.0.0

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

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Merge added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Size added in v1.0.0

func (*ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal added in v1.0.0

type Volume added in v1.0.0

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 added in v1.0.0

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

func (*Volume) GetAccessibleTopology added in v1.0.0

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

func (*Volume) GetCapacityBytes added in v1.0.0

func (m *Volume) GetCapacityBytes() int64

func (*Volume) GetContentSource added in v1.0.0

func (m *Volume) GetContentSource() *VolumeContentSource

func (*Volume) GetVolumeContext added in v1.0.0

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

func (*Volume) GetVolumeId added in v1.0.0

func (m *Volume) GetVolumeId() string

func (*Volume) ProtoMessage added in v1.0.0

func (*Volume) ProtoMessage()

func (*Volume) Reset added in v1.0.0

func (m *Volume) Reset()

func (*Volume) String added in v1.0.0

func (m *Volume) String() string

func (*Volume) XXX_DiscardUnknown added in v1.0.0

func (m *Volume) XXX_DiscardUnknown()

func (*Volume) XXX_Marshal added in v1.0.0

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

func (*Volume) XXX_Merge added in v1.0.0

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

func (*Volume) XXX_Size added in v1.0.0

func (m *Volume) XXX_Size() int

func (*Volume) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *VolumeCapability) XXX_DiscardUnknown()

func (*VolumeCapability) XXX_Marshal added in v1.0.0

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

func (*VolumeCapability) XXX_Merge added in v1.0.0

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

func (*VolumeCapability) XXX_OneofWrappers added in v1.2.0

func (*VolumeCapability) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*VolumeCapability) XXX_Size added in v1.0.0

func (m *VolumeCapability) XXX_Size() int

func (*VolumeCapability) XXX_Unmarshal added in v1.0.0

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 added in v1.0.0

func (m *VolumeCapability_AccessMode) XXX_DiscardUnknown()

func (*VolumeCapability_AccessMode) XXX_Marshal added in v1.0.0

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

func (*VolumeCapability_AccessMode) XXX_Merge added in v1.0.0

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

func (*VolumeCapability_AccessMode) XXX_Size added in v1.0.0

func (m *VolumeCapability_AccessMode) XXX_Size() int

func (*VolumeCapability_AccessMode) XXX_Unmarshal added in v1.0.0

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
	// Can only be published once as read/write at a single workload
	// on a single node, at any given time. SHOULD be used instead of
	// SINGLE_NODE_WRITER for COs using the experimental
	// SINGLE_NODE_MULTI_WRITER capability.
	VolumeCapability_AccessMode_SINGLE_NODE_SINGLE_WRITER VolumeCapability_AccessMode_Mode = 6
	// Can be published as read/write at multiple workloads on a
	// single node simultaneously. SHOULD be used instead of
	// SINGLE_NODE_WRITER for COs using the experimental
	// SINGLE_NODE_MULTI_WRITER capability.
	VolumeCapability_AccessMode_SINGLE_NODE_MULTI_WRITER VolumeCapability_AccessMode_Mode = 7
)

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 added in v1.0.0

func (m *VolumeCapability_BlockVolume) XXX_DiscardUnknown()

func (*VolumeCapability_BlockVolume) XXX_Marshal added in v1.0.0

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

func (*VolumeCapability_BlockVolume) XXX_Merge added in v1.0.0

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

func (*VolumeCapability_BlockVolume) XXX_Size added in v1.0.0

func (m *VolumeCapability_BlockVolume) XXX_Size() int

func (*VolumeCapability_BlockVolume) XXX_Unmarshal added in v1.0.0

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"`
	// If SP has VOLUME_MOUNT_GROUP node capability and CO provides
	// this field then SP MUST ensure that the volume_mount_group
	// parameter is passed as the group identifier to the underlying
	// operating system mount system call, with the understanding
	// that the set of available mount call parameters and/or
	// mount implementations may vary across operating systems.
	// Additionally, new file and/or directory entries written to
	// the underlying filesystem SHOULD be permission-labeled in such a
	// manner, unless otherwise modified by a workload, that they are
	// both readable and writable by said mount group identifier.
	// This is an OPTIONAL field.
	VolumeMountGroup     string   `protobuf:"bytes,3,opt,name=volume_mount_group,json=volumeMountGroup,proto3" json:"volume_mount_group,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) GetVolumeMountGroup added in v1.5.0

func (m *VolumeCapability_MountVolume) GetVolumeMountGroup() 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 added in v1.0.0

func (m *VolumeCapability_MountVolume) XXX_DiscardUnknown()

func (*VolumeCapability_MountVolume) XXX_Marshal added in v1.0.0

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

func (*VolumeCapability_MountVolume) XXX_Merge added in v1.0.0

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

func (*VolumeCapability_MountVolume) XXX_Size added in v1.0.0

func (m *VolumeCapability_MountVolume) XXX_Size() int

func (*VolumeCapability_MountVolume) XXX_Unmarshal added in v1.0.0

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

type VolumeCondition added in v1.3.0

type VolumeCondition struct {
	// Normal volumes are available for use and operating optimally.
	// An abnormal volume does not meet these criteria.
	// This field is REQUIRED.
	Abnormal bool `protobuf:"varint,1,opt,name=abnormal,proto3" json:"abnormal,omitempty"`
	// The message describing the condition of the volume.
	// This field is REQUIRED.
	Message              string   `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

VolumeCondition represents the current condition of a volume.

func (*VolumeCondition) Descriptor added in v1.3.0

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

func (*VolumeCondition) GetAbnormal added in v1.3.0

func (m *VolumeCondition) GetAbnormal() bool

func (*VolumeCondition) GetMessage added in v1.3.0

func (m *VolumeCondition) GetMessage() string

func (*VolumeCondition) ProtoMessage added in v1.3.0

func (*VolumeCondition) ProtoMessage()

func (*VolumeCondition) Reset added in v1.3.0

func (m *VolumeCondition) Reset()

func (*VolumeCondition) String added in v1.3.0

func (m *VolumeCondition) String() string

func (*VolumeCondition) XXX_DiscardUnknown added in v1.3.0

func (m *VolumeCondition) XXX_DiscardUnknown()

func (*VolumeCondition) XXX_Marshal added in v1.3.0

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

func (*VolumeCondition) XXX_Merge added in v1.3.0

func (m *VolumeCondition) XXX_Merge(src proto.Message)

func (*VolumeCondition) XXX_Size added in v1.3.0

func (m *VolumeCondition) XXX_Size() int

func (*VolumeCondition) XXX_Unmarshal added in v1.3.0

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

type VolumeContentSource added in v1.0.0

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 added in v1.0.0

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

func (*VolumeContentSource) GetSnapshot added in v1.0.0

func (*VolumeContentSource) GetType added in v1.0.0

func (m *VolumeContentSource) GetType() isVolumeContentSource_Type

func (*VolumeContentSource) GetVolume added in v1.0.0

func (*VolumeContentSource) ProtoMessage added in v1.0.0

func (*VolumeContentSource) ProtoMessage()

func (*VolumeContentSource) Reset added in v1.0.0

func (m *VolumeContentSource) Reset()

func (*VolumeContentSource) String added in v1.0.0

func (m *VolumeContentSource) String() string

func (*VolumeContentSource) XXX_DiscardUnknown added in v1.0.0

func (m *VolumeContentSource) XXX_DiscardUnknown()

func (*VolumeContentSource) XXX_Marshal added in v1.0.0

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

func (*VolumeContentSource) XXX_Merge added in v1.0.0

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

func (*VolumeContentSource) XXX_OneofWrappers added in v1.2.0

func (*VolumeContentSource) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*VolumeContentSource) XXX_Size added in v1.0.0

func (m *VolumeContentSource) XXX_Size() int

func (*VolumeContentSource) XXX_Unmarshal added in v1.0.0

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

type VolumeContentSource_Snapshot added in v1.0.0

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

type VolumeContentSource_SnapshotSource added in v1.0.0

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 added in v1.0.0

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

func (*VolumeContentSource_SnapshotSource) GetSnapshotId added in v1.0.0

func (m *VolumeContentSource_SnapshotSource) GetSnapshotId() string

func (*VolumeContentSource_SnapshotSource) ProtoMessage added in v1.0.0

func (*VolumeContentSource_SnapshotSource) ProtoMessage()

func (*VolumeContentSource_SnapshotSource) Reset added in v1.0.0

func (*VolumeContentSource_SnapshotSource) String added in v1.0.0

func (*VolumeContentSource_SnapshotSource) XXX_DiscardUnknown added in v1.0.0

func (m *VolumeContentSource_SnapshotSource) XXX_DiscardUnknown()

func (*VolumeContentSource_SnapshotSource) XXX_Marshal added in v1.0.0

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

func (*VolumeContentSource_SnapshotSource) XXX_Merge added in v1.0.0

func (*VolumeContentSource_SnapshotSource) XXX_Size added in v1.0.0

func (*VolumeContentSource_SnapshotSource) XXX_Unmarshal added in v1.0.0

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

type VolumeContentSource_Volume added in v1.0.0

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

type VolumeContentSource_VolumeSource added in v1.0.0

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 added in v1.0.0

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

func (*VolumeContentSource_VolumeSource) GetVolumeId added in v1.0.0

func (m *VolumeContentSource_VolumeSource) GetVolumeId() string

func (*VolumeContentSource_VolumeSource) ProtoMessage added in v1.0.0

func (*VolumeContentSource_VolumeSource) ProtoMessage()

func (*VolumeContentSource_VolumeSource) Reset added in v1.0.0

func (*VolumeContentSource_VolumeSource) String added in v1.0.0

func (*VolumeContentSource_VolumeSource) XXX_DiscardUnknown added in v1.0.0

func (m *VolumeContentSource_VolumeSource) XXX_DiscardUnknown()

func (*VolumeContentSource_VolumeSource) XXX_Marshal added in v1.0.0

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

func (*VolumeContentSource_VolumeSource) XXX_Merge added in v1.0.0

func (*VolumeContentSource_VolumeSource) XXX_Size added in v1.0.0

func (m *VolumeContentSource_VolumeSource) XXX_Size() int

func (*VolumeContentSource_VolumeSource) XXX_Unmarshal added in v1.0.0

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

type VolumeGroupSnapshot added in v1.8.0

type VolumeGroupSnapshot struct {
	// The identifier for this group snapshot, generated by the plugin.
	// This field MUST contain enough information to uniquely identify
	// this specific snapshot vs all other group snapshots supported by
	// this plugin.
	// This field SHALL be used by the CO in subsequent calls to refer to
	// this group snapshot.
	// The SP is NOT responsible for global uniqueness of
	// group_snapshot_id across multiple SPs.
	// This field is REQUIRED.
	GroupSnapshotId string `protobuf:"bytes,1,opt,name=group_snapshot_id,json=groupSnapshotId,proto3" json:"group_snapshot_id,omitempty"`
	// A list of snapshots belonging to this group.
	// This field is REQUIRED.
	Snapshots []*Snapshot `protobuf:"bytes,2,rep,name=snapshots,proto3" json:"snapshots,omitempty"`
	// Timestamp of when the volume group snapshot was taken.
	// This field is REQUIRED.
	CreationTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=creation_time,json=creationTime,proto3" json:"creation_time,omitempty"`
	// Indicates if all individual snapshots in the group snapshot
	// are ready to use as a `volume_content_source` in a
	// `CreateVolumeRequest`. The default value is false.
	// If any snapshot in the list of snapshots in this message have
	// ready_to_use set to false, the SP MUST set this field to false.
	// If all of the snapshots in the list of snapshots in this message
	// have ready_to_use set to true, the SP SHOULD set this field to
	// true.
	// This field is REQUIRED.
	ReadyToUse           bool     `protobuf:"varint,4,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:"-"`
}

func (*VolumeGroupSnapshot) Descriptor added in v1.8.0

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

func (*VolumeGroupSnapshot) GetCreationTime added in v1.8.0

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

func (*VolumeGroupSnapshot) GetGroupSnapshotId added in v1.8.0

func (m *VolumeGroupSnapshot) GetGroupSnapshotId() string

func (*VolumeGroupSnapshot) GetReadyToUse added in v1.8.0

func (m *VolumeGroupSnapshot) GetReadyToUse() bool

func (*VolumeGroupSnapshot) GetSnapshots added in v1.8.0

func (m *VolumeGroupSnapshot) GetSnapshots() []*Snapshot

func (*VolumeGroupSnapshot) ProtoMessage added in v1.8.0

func (*VolumeGroupSnapshot) ProtoMessage()

func (*VolumeGroupSnapshot) Reset added in v1.8.0

func (m *VolumeGroupSnapshot) Reset()

func (*VolumeGroupSnapshot) String added in v1.8.0

func (m *VolumeGroupSnapshot) String() string

func (*VolumeGroupSnapshot) XXX_DiscardUnknown added in v1.8.0

func (m *VolumeGroupSnapshot) XXX_DiscardUnknown()

func (*VolumeGroupSnapshot) XXX_Marshal added in v1.8.0

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

func (*VolumeGroupSnapshot) XXX_Merge added in v1.8.0

func (m *VolumeGroupSnapshot) XXX_Merge(src proto.Message)

func (*VolumeGroupSnapshot) XXX_Size added in v1.8.0

func (m *VolumeGroupSnapshot) XXX_Size() int

func (*VolumeGroupSnapshot) XXX_Unmarshal added in v1.8.0

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

type VolumeUsage added in v1.0.0

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 added in v1.0.0

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

func (*VolumeUsage) GetAvailable added in v1.0.0

func (m *VolumeUsage) GetAvailable() int64

func (*VolumeUsage) GetTotal added in v1.0.0

func (m *VolumeUsage) GetTotal() int64

func (*VolumeUsage) GetUnit added in v1.0.0

func (m *VolumeUsage) GetUnit() VolumeUsage_Unit

func (*VolumeUsage) GetUsed added in v1.0.0

func (m *VolumeUsage) GetUsed() int64

func (*VolumeUsage) ProtoMessage added in v1.0.0

func (*VolumeUsage) ProtoMessage()

func (*VolumeUsage) Reset added in v1.0.0

func (m *VolumeUsage) Reset()

func (*VolumeUsage) String added in v1.0.0

func (m *VolumeUsage) String() string

func (*VolumeUsage) XXX_DiscardUnknown added in v1.0.0

func (m *VolumeUsage) XXX_DiscardUnknown()

func (*VolumeUsage) XXX_Marshal added in v1.0.0

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

func (*VolumeUsage) XXX_Merge added in v1.0.0

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

func (*VolumeUsage) XXX_Size added in v1.0.0

func (m *VolumeUsage) XXX_Size() int

func (*VolumeUsage) XXX_Unmarshal added in v1.0.0

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

type VolumeUsage_Unit added in v1.0.0

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

func (VolumeUsage_Unit) EnumDescriptor added in v1.0.0

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

func (VolumeUsage_Unit) String added in v1.0.0

func (x VolumeUsage_Unit) String() string

Jump to

Keyboard shortcuts

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