Skip to content

Commit a99f86b

Browse files
committed
Single node single/multi writer access modes
1 parent 5914b37 commit a99f86b

File tree

3 files changed

+309
-246
lines changed

3 files changed

+309
-246
lines changed

csi.proto

+15
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,14 @@ message VolumeCapability {
420420
// Can be published as read/write at multiple nodes
421421
// simultaneously.
422422
MULTI_NODE_MULTI_WRITER = 5;
423+
424+
// Can only be published once as read/write at a single workload
425+
// on a single node, at any given time.
426+
SINGLE_NODE_SINGLE_WRITER = 6 [(alpha_enum_value) = true];
427+
428+
// Can be published as read/write at multiple workloads on a
429+
// single node simultaneously.
430+
SINGLE_NODE_MULTI_WRITER = 7 [(alpha_enum_value) = true];
423431
}
424432

425433
// This field is REQUIRED.
@@ -1044,6 +1052,10 @@ message ControllerServiceCapability {
10441052
// This enables COs to, for example, fetch per volume
10451053
// condition after a volume is provisioned.
10461054
GET_VOLUME = 12 [(alpha_enum_value) = true];
1055+
1056+
// Indicates the SP supports the SINGLE_NODE_MULTI_WRITER access
1057+
// mode.
1058+
SINGLE_NODE_MULTI_WRITER = 13 [(alpha_enum_value) = true];
10471059
}
10481060

10491061
Type type = 1;
@@ -1476,6 +1488,9 @@ message NodeServiceCapability {
14761488
// Note that, for alpha, `VolumeCondition` is intended to be
14771489
// informative for humans only, not for automation.
14781490
VOLUME_CONDITION = 4 [(alpha_enum_value) = true];
1491+
// Indicates the SP supports the SINGLE_NODE_MULTI_WRITER access
1492+
// mode.
1493+
SINGLE_NODE_MULTI_WRITER = 5 [(alpha_enum_value) = true];
14791494
}
14801495

14811496
Type type = 1;

0 commit comments

Comments
 (0)