@@ -788,7 +788,7 @@ message ControllerUnpublishVolumeRequest {
788
788
// This field is OPTIONAL. Refer to the `Secrets Requirements`
789
789
// section on how to use this field.
790
790
map <string , string > secrets = 3 [(csi_secret) = true ];
791
-
791
+
792
792
// Indicates SP MUST make the volume inacessible to the node or nodes
793
793
// it is being unpublished from. Any attempt to read or write data
794
794
// to a volume from a node that has been fenced MUST NOT succeed,
@@ -798,7 +798,7 @@ message ControllerUnpublishVolumeRequest {
798
798
// The SP MAY make the volume inaccessible even when this field is
799
799
// false.
800
800
// This is an OPTIONAL field.
801
- bool fence = 4 ;
801
+ bool fence = 4 [ (alpha_field) = true ] ;
802
802
}
803
803
804
804
message ControllerUnpublishVolumeResponse {
@@ -1081,6 +1081,7 @@ message ControllerServiceCapability {
1081
1081
// condition after a volume is provisioned.
1082
1082
GET_VOLUME = 12 [(alpha_enum_value) = true ];
1083
1083
1084
+
1084
1085
// Indicates the SP supports the SINGLE_NODE_SINGLE_WRITER and/or
1085
1086
// SINGLE_NODE_MULTI_WRITER access modes.
1086
1087
// These access modes are intended to replace the
@@ -1090,6 +1091,10 @@ message ControllerServiceCapability {
1090
1091
// SINGLE_NODE_SINGLE_WRITER and/or SINGLE_NODE_MULTI_WRITER are
1091
1092
// supported, in order to permit older COs to continue working.
1092
1093
SINGLE_NODE_MULTI_WRITER = 13 [(alpha_enum_value) = true ];
1094
+
1095
+ // Indicates the SP supports ControllerUnpublishVolume.fence
1096
+ // field.
1097
+ UNPUBLISH_FENCE = 14 [(alpha_enum_value) = true ];
1093
1098
}
1094
1099
1095
1100
Type type = 1 ;
@@ -1327,13 +1332,13 @@ message NodeUnstageVolumeRequest {
1327
1332
// system/filesystem, but, at a minimum, SP MUST accept a max path
1328
1333
// length of at least 128 bytes.
1329
1334
string staging_target_path = 2 ;
1330
-
1335
+
1331
1336
// Indicates that the SP should prefer to successfully unstage the
1332
1337
// volume, even if data loss would occur as a result.
1333
1338
// CO MUST NOT set this field to true unless SP has the
1334
1339
// FORCE_UNPUBLISH node capability.
1335
1340
// This in an OPTIONAL field.
1336
- bool force = 3 ;
1341
+ bool force = 3 [ (alpha_field) = true ] ;
1337
1342
}
1338
1343
1339
1344
message NodeUnstageVolumeResponse {
@@ -1418,13 +1423,13 @@ message NodeUnpublishVolumeRequest {
1418
1423
// system/filesystem, but, at a minimum, SP MUST accept a max path
1419
1424
// length of at least 128 bytes.
1420
1425
string target_path = 2 ;
1421
-
1426
+
1422
1427
// Indicates that the SP should prefer to successfully unpublish the
1423
1428
// volume, even if data loss would occur as a result.
1424
1429
// CO MUST NOT set this field to true unless SP has the
1425
1430
// FORCE_UNPUBLISH node capability.
1426
1431
// This in an OPTIONAL field.
1427
- bool force = 3 ;
1432
+ bool force = 3 [ (alpha_field) = true ] ;
1428
1433
}
1429
1434
1430
1435
message NodeUnpublishVolumeResponse {
@@ -1552,6 +1557,12 @@ message NodeServiceCapability {
1552
1557
// with provided volume group identifier during node stage
1553
1558
// or node publish RPC calls.
1554
1559
VOLUME_MOUNT_GROUP = 6 [(alpha_enum_value) = true ];
1560
+
1561
+ // Indicates that the node supports the NodeUnpublishVolume.force
1562
+ // field. Also indicates that the node supports the
1563
+ // NodeUnstageVolume.force field if it also has the
1564
+ // STAGE_UNSTAGE_VOLUME capability.
1565
+ FORCE_UNPUBLISH = 7 [(alpha_enum_value) = true ];
1555
1566
}
1556
1567
1557
1568
Type type = 1 ;
0 commit comments