Skip to content

Commit 396c333

Browse files
authored
Merge pull request #464 from Jiawei0227/length
2 parents baa71a3 + 64e5a66 commit 396c333

File tree

3 files changed

+120
-0
lines changed

3 files changed

+120
-0
lines changed

csi.proto

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1206,6 +1206,10 @@ message NodeStageVolumeRequest {
12061206
// CO SHALL be responsible for creating the directory if it does not
12071207
// exist.
12081208
// This is a REQUIRED field.
1209+
// This field overrides the general CSI size limit.
1210+
// SP SHOULD support the maximum path length allowed by the operating
1211+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1212+
// length of at least 128 bytes.
12091213
string staging_target_path = 3;
12101214

12111215
// Volume capability describing how the CO intends to use this volume.
@@ -1236,6 +1240,10 @@ message NodeUnstageVolumeRequest {
12361240
// The path at which the volume was staged. It MUST be an absolute
12371241
// path in the root filesystem of the process serving this request.
12381242
// This is a REQUIRED field.
1243+
// This field overrides the general CSI size limit.
1244+
// SP SHOULD support the maximum path length allowed by the operating
1245+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1246+
// length of at least 128 bytes.
12391247
string staging_target_path = 2;
12401248
}
12411249

@@ -1259,6 +1267,10 @@ message NodePublishVolumeRequest {
12591267
// It MUST be set if the Node Plugin implements the
12601268
// `STAGE_UNSTAGE_VOLUME` node capability.
12611269
// This is an OPTIONAL field.
1270+
// This field overrides the general CSI size limit.
1271+
// SP SHOULD support the maximum path length allowed by the operating
1272+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1273+
// length of at least 128 bytes.
12621274
string staging_target_path = 3;
12631275

12641276
// The path to which the volume will be published. It MUST be an
@@ -1273,6 +1285,10 @@ message NodePublishVolumeRequest {
12731285
// mounted directory at target_path.
12741286
// Creation of target_path is the responsibility of the SP.
12751287
// This is a REQUIRED field.
1288+
// This field overrides the general CSI size limit.
1289+
// SP SHOULD support the maximum path length allowed by the operating
1290+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1291+
// length of at least 128 bytes.
12761292
string target_path = 4;
12771293

12781294
// Volume capability describing how the CO intends to use this volume.
@@ -1308,6 +1324,10 @@ message NodeUnpublishVolumeRequest {
13081324
// path in the root filesystem of the process serving this request.
13091325
// The SP MUST delete the file or directory it created at this path.
13101326
// This is a REQUIRED field.
1327+
// This field overrides the general CSI size limit.
1328+
// SP SHOULD support the maximum path length allowed by the operating
1329+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1330+
// length of at least 128 bytes.
13111331
string target_path = 2;
13121332
}
13131333

@@ -1323,13 +1343,21 @@ message NodeGetVolumeStatsRequest {
13231343
// It MUST be an absolute path in the root filesystem of
13241344
// the process serving this request.
13251345
// This is a REQUIRED field.
1346+
// This field overrides the general CSI size limit.
1347+
// SP SHOULD support the maximum path length allowed by the operating
1348+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1349+
// length of at least 128 bytes.
13261350
string volume_path = 2;
13271351

13281352
// The path where the volume is staged, if the plugin has the
13291353
// STAGE_UNSTAGE_VOLUME capability, otherwise empty.
13301354
// If not empty, it MUST be an absolute path in the root
13311355
// filesystem of the process serving this request.
13321356
// This field is OPTIONAL.
1357+
// This field overrides the general CSI size limit.
1358+
// SP SHOULD support the maximum path length allowed by the operating
1359+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1360+
// length of at least 128 bytes.
13331361
string staging_target_path = 3;
13341362
}
13351363

@@ -1434,6 +1462,10 @@ message NodeGetInfoResponse {
14341462
// `ControllerPublishVolume`, to refer to this node.
14351463
// The SP is NOT responsible for global uniqueness of node_id across
14361464
// multiple SPs.
1465+
// This field overrides the general CSI size limit.
1466+
// The size of this field SHALL NOT exceed 192 bytes. The general
1467+
// CSI size limit, 128 byte, is RECOMMENDED for best backwards
1468+
// compatibility.
14371469
string node_id = 1;
14381470

14391471
// Maximum number of volumes that controller can publish to the node.
@@ -1467,6 +1499,10 @@ message NodeExpandVolumeRequest {
14671499
string volume_id = 1;
14681500

14691501
// The path on which volume is available. This field is REQUIRED.
1502+
// This field overrides the general CSI size limit.
1503+
// SP SHOULD support the maximum path length allowed by the operating
1504+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1505+
// length of at least 128 bytes.
14701506
string volume_path = 2;
14711507

14721508
// This allows CO to specify the capacity requirements of the volume
@@ -1482,6 +1518,10 @@ message NodeExpandVolumeRequest {
14821518
// If not empty, it MUST be an absolute path in the root
14831519
// filesystem of the process serving this request.
14841520
// This field is OPTIONAL.
1521+
// This field overrides the general CSI size limit.
1522+
// SP SHOULD support the maximum path length allowed by the operating
1523+
// system/filesystem, but, at a minimum, SP MUST accept a max path
1524+
// length of at least 128 bytes.
14851525
string staging_target_path = 4;
14861526

14871527
// Volume capability describing how the CO intends to use this volume.

lib/go/csi/csi.pb.go

Lines changed: 40 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2073,6 +2073,10 @@ message NodeStageVolumeRequest {
20732073
// CO SHALL be responsible for creating the directory if it does not
20742074
// exist.
20752075
// This is a REQUIRED field.
2076+
// This field overrides the general CSI size limit.
2077+
// SP SHOULD support the maximum path length allowed by the operating
2078+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2079+
// length of at least 128 bytes.
20762080
string staging_target_path = 3;
20772081
20782082
// Volume capability describing how the CO intends to use this volume.
@@ -2138,6 +2142,10 @@ message NodeUnstageVolumeRequest {
21382142
// The path at which the volume was staged. It MUST be an absolute
21392143
// path in the root filesystem of the process serving this request.
21402144
// This is a REQUIRED field.
2145+
// This field overrides the general CSI size limit.
2146+
// SP SHOULD support the maximum path length allowed by the operating
2147+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2148+
// length of at least 128 bytes.
21412149
string staging_target_path = 2;
21422150
}
21432151
@@ -2205,6 +2213,10 @@ message NodePublishVolumeRequest {
22052213
// It MUST be set if the Node Plugin implements the
22062214
// `STAGE_UNSTAGE_VOLUME` node capability.
22072215
// This is an OPTIONAL field.
2216+
// This field overrides the general CSI size limit.
2217+
// SP SHOULD support the maximum path length allowed by the operating
2218+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2219+
// length of at least 128 bytes.
22082220
string staging_target_path = 3;
22092221
22102222
// The path to which the volume will be published. It MUST be an
@@ -2219,6 +2231,10 @@ message NodePublishVolumeRequest {
22192231
// mounted directory at target_path.
22202232
// Creation of target_path is the responsibility of the SP.
22212233
// This is a REQUIRED field.
2234+
// This field overrides the general CSI size limit.
2235+
// SP SHOULD support the maximum path length allowed by the operating
2236+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2237+
// length of at least 128 bytes.
22222238
string target_path = 4;
22232239
22242240
// Volume capability describing how the CO intends to use this volume.
@@ -2285,6 +2301,10 @@ message NodeUnpublishVolumeRequest {
22852301
// path in the root filesystem of the process serving this request.
22862302
// The SP MUST delete the file or directory it created at this path.
22872303
// This is a REQUIRED field.
2304+
// This field overrides the general CSI size limit.
2305+
// SP SHOULD support the maximum path length allowed by the operating
2306+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2307+
// length of at least 128 bytes.
22882308
string target_path = 2;
22892309
}
22902310
@@ -2326,13 +2346,21 @@ message NodeGetVolumeStatsRequest {
23262346
// It MUST be an absolute path in the root filesystem of
23272347
// the process serving this request.
23282348
// This is a REQUIRED field.
2349+
// This field overrides the general CSI size limit.
2350+
// SP SHOULD support the maximum path length allowed by the operating
2351+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2352+
// length of at least 128 bytes.
23292353
string volume_path = 2;
23302354
23312355
// The path where the volume is staged, if the plugin has the
23322356
// STAGE_UNSTAGE_VOLUME capability, otherwise empty.
23332357
// If not empty, it MUST be an absolute path in the root
23342358
// filesystem of the process serving this request.
23352359
// This field is OPTIONAL.
2360+
// This field overrides the general CSI size limit.
2361+
// SP SHOULD support the maximum path length allowed by the operating
2362+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2363+
// length of at least 128 bytes.
23362364
string staging_target_path = 3;
23372365
}
23382366
@@ -2472,6 +2500,10 @@ message NodeGetInfoResponse {
24722500
// `ControllerPublishVolume`, to refer to this node.
24732501
// The SP is NOT responsible for global uniqueness of node_id across
24742502
// multiple SPs.
2503+
// This field overrides the general CSI size limit.
2504+
// The size of this field SHALL NOT exceed 192 bytes. The general
2505+
// CSI size limit, 128 byte, is RECOMMENDED for best backwards
2506+
// compatibility.
24752507
string node_id = 1;
24762508
24772509
// Maximum number of volumes that controller can publish to the node.
@@ -2535,6 +2567,10 @@ message NodeExpandVolumeRequest {
25352567
string volume_id = 1;
25362568
25372569
// The path on which volume is available. This field is REQUIRED.
2570+
// This field overrides the general CSI size limit.
2571+
// SP SHOULD support the maximum path length allowed by the operating
2572+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2573+
// length of at least 128 bytes.
25382574
string volume_path = 2;
25392575
25402576
// This allows CO to specify the capacity requirements of the volume
@@ -2550,6 +2586,10 @@ message NodeExpandVolumeRequest {
25502586
// If not empty, it MUST be an absolute path in the root
25512587
// filesystem of the process serving this request.
25522588
// This field is OPTIONAL.
2589+
// This field overrides the general CSI size limit.
2590+
// SP SHOULD support the maximum path length allowed by the operating
2591+
// system/filesystem, but, at a minimum, SP MUST accept a max path
2592+
// length of at least 128 bytes.
25532593
string staging_target_path = 4;
25542594
25552595
// Volume capability describing how the CO intends to use this volume.

0 commit comments

Comments
 (0)