Update CSI proto to 1.5.0
This commit is contained in:
parent
e585684502
commit
7717264801
1087
csi/csi_pb2.py
1087
csi/csi_pb2.py
File diff suppressed because one or more lines are too long
@ -1,11 +1,12 @@
|
||||
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
||||
"""Client and server classes corresponding to protobuf-defined services."""
|
||||
import grpc
|
||||
|
||||
import csi_pb2 as csi__pb2
|
||||
|
||||
|
||||
class IdentityStub(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
def __init__(self, channel):
|
||||
"""Constructor.
|
||||
@ -31,22 +32,22 @@ class IdentityStub(object):
|
||||
|
||||
|
||||
class IdentityServicer(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
def GetPluginInfo(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def GetPluginCapabilities(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def Probe(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
@ -77,7 +78,7 @@ def add_IdentityServicer_to_server(servicer, server):
|
||||
|
||||
# This class is part of an EXPERIMENTAL API.
|
||||
class Identity(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
@staticmethod
|
||||
def GetPluginInfo(request,
|
||||
@ -85,6 +86,7 @@ class Identity(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -93,7 +95,7 @@ class Identity(object):
|
||||
csi__pb2.GetPluginInfoRequest.SerializeToString,
|
||||
csi__pb2.GetPluginInfoResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def GetPluginCapabilities(request,
|
||||
@ -101,6 +103,7 @@ class Identity(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -109,7 +112,7 @@ class Identity(object):
|
||||
csi__pb2.GetPluginCapabilitiesRequest.SerializeToString,
|
||||
csi__pb2.GetPluginCapabilitiesResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def Probe(request,
|
||||
@ -117,6 +120,7 @@ class Identity(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -125,11 +129,11 @@ class Identity(object):
|
||||
csi__pb2.ProbeRequest.SerializeToString,
|
||||
csi__pb2.ProbeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
|
||||
class ControllerStub(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
def __init__(self, channel):
|
||||
"""Constructor.
|
||||
@ -205,82 +209,82 @@ class ControllerStub(object):
|
||||
|
||||
|
||||
class ControllerServicer(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
def CreateVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def DeleteVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ControllerPublishVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ControllerUnpublishVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ValidateVolumeCapabilities(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ListVolumes(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def GetCapacity(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ControllerGetCapabilities(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def CreateSnapshot(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def DeleteSnapshot(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ListSnapshots(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ControllerExpandVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ControllerGetVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
@ -361,7 +365,7 @@ def add_ControllerServicer_to_server(servicer, server):
|
||||
|
||||
# This class is part of an EXPERIMENTAL API.
|
||||
class Controller(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
@staticmethod
|
||||
def CreateVolume(request,
|
||||
@ -369,6 +373,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -377,7 +382,7 @@ class Controller(object):
|
||||
csi__pb2.CreateVolumeRequest.SerializeToString,
|
||||
csi__pb2.CreateVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def DeleteVolume(request,
|
||||
@ -385,6 +390,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -393,7 +399,7 @@ class Controller(object):
|
||||
csi__pb2.DeleteVolumeRequest.SerializeToString,
|
||||
csi__pb2.DeleteVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ControllerPublishVolume(request,
|
||||
@ -401,6 +407,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -409,7 +416,7 @@ class Controller(object):
|
||||
csi__pb2.ControllerPublishVolumeRequest.SerializeToString,
|
||||
csi__pb2.ControllerPublishVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ControllerUnpublishVolume(request,
|
||||
@ -417,6 +424,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -425,7 +433,7 @@ class Controller(object):
|
||||
csi__pb2.ControllerUnpublishVolumeRequest.SerializeToString,
|
||||
csi__pb2.ControllerUnpublishVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ValidateVolumeCapabilities(request,
|
||||
@ -433,6 +441,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -441,7 +450,7 @@ class Controller(object):
|
||||
csi__pb2.ValidateVolumeCapabilitiesRequest.SerializeToString,
|
||||
csi__pb2.ValidateVolumeCapabilitiesResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ListVolumes(request,
|
||||
@ -449,6 +458,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -457,7 +467,7 @@ class Controller(object):
|
||||
csi__pb2.ListVolumesRequest.SerializeToString,
|
||||
csi__pb2.ListVolumesResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def GetCapacity(request,
|
||||
@ -465,6 +475,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -473,7 +484,7 @@ class Controller(object):
|
||||
csi__pb2.GetCapacityRequest.SerializeToString,
|
||||
csi__pb2.GetCapacityResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ControllerGetCapabilities(request,
|
||||
@ -481,6 +492,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -489,7 +501,7 @@ class Controller(object):
|
||||
csi__pb2.ControllerGetCapabilitiesRequest.SerializeToString,
|
||||
csi__pb2.ControllerGetCapabilitiesResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def CreateSnapshot(request,
|
||||
@ -497,6 +509,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -505,7 +518,7 @@ class Controller(object):
|
||||
csi__pb2.CreateSnapshotRequest.SerializeToString,
|
||||
csi__pb2.CreateSnapshotResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def DeleteSnapshot(request,
|
||||
@ -513,6 +526,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -521,7 +535,7 @@ class Controller(object):
|
||||
csi__pb2.DeleteSnapshotRequest.SerializeToString,
|
||||
csi__pb2.DeleteSnapshotResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ListSnapshots(request,
|
||||
@ -529,6 +543,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -537,7 +552,7 @@ class Controller(object):
|
||||
csi__pb2.ListSnapshotsRequest.SerializeToString,
|
||||
csi__pb2.ListSnapshotsResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ControllerExpandVolume(request,
|
||||
@ -545,6 +560,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -553,7 +569,7 @@ class Controller(object):
|
||||
csi__pb2.ControllerExpandVolumeRequest.SerializeToString,
|
||||
csi__pb2.ControllerExpandVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def ControllerGetVolume(request,
|
||||
@ -561,6 +577,7 @@ class Controller(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -569,11 +586,11 @@ class Controller(object):
|
||||
csi__pb2.ControllerGetVolumeRequest.SerializeToString,
|
||||
csi__pb2.ControllerGetVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
|
||||
class NodeStub(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
def __init__(self, channel):
|
||||
"""Constructor.
|
||||
@ -624,52 +641,52 @@ class NodeStub(object):
|
||||
|
||||
|
||||
class NodeServicer(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
def NodeStageVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodeUnstageVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodePublishVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodeUnpublishVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodeGetVolumeStats(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodeExpandVolume(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodeGetCapabilities(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def NodeGetInfo(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
@ -725,7 +742,7 @@ def add_NodeServicer_to_server(servicer, server):
|
||||
|
||||
# This class is part of an EXPERIMENTAL API.
|
||||
class Node(object):
|
||||
"""Missing associated documentation comment in .proto file"""
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
|
||||
@staticmethod
|
||||
def NodeStageVolume(request,
|
||||
@ -733,6 +750,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -741,7 +759,7 @@ class Node(object):
|
||||
csi__pb2.NodeStageVolumeRequest.SerializeToString,
|
||||
csi__pb2.NodeStageVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodeUnstageVolume(request,
|
||||
@ -749,6 +767,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -757,7 +776,7 @@ class Node(object):
|
||||
csi__pb2.NodeUnstageVolumeRequest.SerializeToString,
|
||||
csi__pb2.NodeUnstageVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodePublishVolume(request,
|
||||
@ -765,6 +784,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -773,7 +793,7 @@ class Node(object):
|
||||
csi__pb2.NodePublishVolumeRequest.SerializeToString,
|
||||
csi__pb2.NodePublishVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodeUnpublishVolume(request,
|
||||
@ -781,6 +801,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -789,7 +810,7 @@ class Node(object):
|
||||
csi__pb2.NodeUnpublishVolumeRequest.SerializeToString,
|
||||
csi__pb2.NodeUnpublishVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodeGetVolumeStats(request,
|
||||
@ -797,6 +818,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -805,7 +827,7 @@ class Node(object):
|
||||
csi__pb2.NodeGetVolumeStatsRequest.SerializeToString,
|
||||
csi__pb2.NodeGetVolumeStatsResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodeExpandVolume(request,
|
||||
@ -813,6 +835,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -821,7 +844,7 @@ class Node(object):
|
||||
csi__pb2.NodeExpandVolumeRequest.SerializeToString,
|
||||
csi__pb2.NodeExpandVolumeResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodeGetCapabilities(request,
|
||||
@ -829,6 +852,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -837,7 +861,7 @@ class Node(object):
|
||||
csi__pb2.NodeGetCapabilitiesRequest.SerializeToString,
|
||||
csi__pb2.NodeGetCapabilitiesResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def NodeGetInfo(request,
|
||||
@ -845,6 +869,7 @@ class Node(object):
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
@ -853,4 +878,4 @@ class Node(object):
|
||||
csi__pb2.NodeGetInfoRequest.SerializeToString,
|
||||
csi__pb2.NodeGetInfoResponse.FromString,
|
||||
options, channel_credentials,
|
||||
call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
133
protos/csi.proto
133
protos/csi.proto
@ -395,6 +395,19 @@ message VolumeCapability {
|
||||
// to untrusted entities. The total size of this repeated field
|
||||
// SHALL NOT exceed 4 KiB.
|
||||
repeated string mount_flags = 2;
|
||||
|
||||
// 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.
|
||||
string volume_mount_group = 3 [(alpha_field) = true];
|
||||
}
|
||||
|
||||
// Specify how a volume can be accessed.
|
||||
@ -420,6 +433,18 @@ message VolumeCapability {
|
||||
// Can be published as read/write at multiple nodes
|
||||
// simultaneously.
|
||||
MULTI_NODE_MULTI_WRITER = 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.
|
||||
SINGLE_NODE_SINGLE_WRITER = 6 [(alpha_enum_value) = true];
|
||||
|
||||
// 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.
|
||||
SINGLE_NODE_MULTI_WRITER = 7 [(alpha_enum_value) = true];
|
||||
}
|
||||
|
||||
// This field is REQUIRED.
|
||||
@ -947,6 +972,42 @@ message GetCapacityResponse {
|
||||
// storage. This field is REQUIRED.
|
||||
// The value of this field MUST NOT be negative.
|
||||
int64 available_capacity = 1;
|
||||
|
||||
// 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.
|
||||
google.protobuf.Int64Value maximum_volume_size = 2
|
||||
[(alpha_field) = true];
|
||||
|
||||
// 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.
|
||||
google.protobuf.Int64Value minimum_volume_size = 3
|
||||
[(alpha_field) = true];
|
||||
}
|
||||
message ControllerGetCapabilitiesRequest {
|
||||
// Intentionally empty.
|
||||
@ -1008,6 +1069,16 @@ message ControllerServiceCapability {
|
||||
// This enables COs to, for example, fetch per volume
|
||||
// condition after a volume is provisioned.
|
||||
GET_VOLUME = 12 [(alpha_enum_value) = true];
|
||||
|
||||
// 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.
|
||||
SINGLE_NODE_MULTI_WRITER = 13 [(alpha_enum_value) = true];
|
||||
}
|
||||
|
||||
Type type = 1;
|
||||
@ -1206,6 +1277,10 @@ message NodeStageVolumeRequest {
|
||||
// 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.
|
||||
string staging_target_path = 3;
|
||||
|
||||
// Volume capability describing how the CO intends to use this volume.
|
||||
@ -1236,6 +1311,10 @@ message NodeUnstageVolumeRequest {
|
||||
// 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.
|
||||
string staging_target_path = 2;
|
||||
}
|
||||
|
||||
@ -1259,6 +1338,10 @@ message NodePublishVolumeRequest {
|
||||
// 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.
|
||||
string staging_target_path = 3;
|
||||
|
||||
// The path to which the volume will be published. It MUST be an
|
||||
@ -1273,6 +1356,10 @@ message NodePublishVolumeRequest {
|
||||
// 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.
|
||||
string target_path = 4;
|
||||
|
||||
// Volume capability describing how the CO intends to use this volume.
|
||||
@ -1308,6 +1395,10 @@ message NodeUnpublishVolumeRequest {
|
||||
// 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.
|
||||
string target_path = 2;
|
||||
}
|
||||
|
||||
@ -1323,6 +1414,10 @@ message NodeGetVolumeStatsRequest {
|
||||
// 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.
|
||||
string volume_path = 2;
|
||||
|
||||
// The path where the volume is staged, if the plugin has the
|
||||
@ -1330,6 +1425,10 @@ message NodeGetVolumeStatsRequest {
|
||||
// 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.
|
||||
string staging_target_path = 3;
|
||||
}
|
||||
|
||||
@ -1412,6 +1511,22 @@ message NodeServiceCapability {
|
||||
// Note that, for alpha, `VolumeCondition` is intended to be
|
||||
// informative for humans only, not for automation.
|
||||
VOLUME_CONDITION = 4 [(alpha_enum_value) = true];
|
||||
|
||||
// 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.
|
||||
SINGLE_NODE_MULTI_WRITER = 5 [(alpha_enum_value) = true];
|
||||
|
||||
// Indicates that Node service supports mounting volumes
|
||||
// with provided volume group identifier during node stage
|
||||
// or node publish RPC calls.
|
||||
VOLUME_MOUNT_GROUP = 6 [(alpha_enum_value) = true];
|
||||
}
|
||||
|
||||
Type type = 1;
|
||||
@ -1434,6 +1549,10 @@ message NodeGetInfoResponse {
|
||||
// `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.
|
||||
string node_id = 1;
|
||||
|
||||
// Maximum number of volumes that controller can publish to the node.
|
||||
@ -1467,6 +1586,10 @@ message NodeExpandVolumeRequest {
|
||||
string volume_id = 1;
|
||||
|
||||
// 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.
|
||||
string volume_path = 2;
|
||||
|
||||
// This allows CO to specify the capacity requirements of the volume
|
||||
@ -1482,6 +1605,10 @@ message NodeExpandVolumeRequest {
|
||||
// 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.
|
||||
string staging_target_path = 4;
|
||||
|
||||
// Volume capability describing how the CO intends to use this volume.
|
||||
@ -1494,6 +1621,12 @@ message NodeExpandVolumeRequest {
|
||||
// access_type from given volume_path for the volume and perform
|
||||
// node expansion. This is an OPTIONAL field.
|
||||
VolumeCapability volume_capability = 5;
|
||||
|
||||
// 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.
|
||||
map<string, string> secrets = 6
|
||||
[(csi_secret) = true, (alpha_field) = true];
|
||||
}
|
||||
|
||||
message NodeExpandVolumeResponse {
|
||||
|
Loading…
Reference in New Issue
Block a user