You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: spec.md
+12-3Lines changed: 12 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2196,7 +2196,10 @@ The following table shows what the Plugin SHOULD return when receiving a second
2196
2196
| MULTI_NODE | OK (idempotent) | ALREADY_EXISTS | OK | OK |
2197
2197
| Non MULTI_NODE | OK (idempotent) | ALREADY_EXISTS | FAILED_PRECONDITION | FAILED_PRECONDITION|
2198
2198
2199
-
(`Tn`: target path of the n-th `NodePublishVolume`, `Pn`: other arguments of the n-th `NodePublishVolume` except `secrets`)
2199
+
(`Tn`: target path of the n-th `NodePublishVolume`, `Pn`: other arguments of the n-th `NodePublishVolume` except `secrets`).
2200
+
2201
+
However if a Plugin does not support `NodePublishVolume` of same volume on same node multiple times with different `volume_mount_group` on different `target_path` it MAY return `FAILED_PRECONDITION` error.
// within the volume are readable and writable by the provided
2260
2263
// volume_mount_group.
2261
2264
// If NodeStageVolume was previously called with volume_mount_group
2262
-
// CO must ensure that NodePublishVolume uses the same
2265
+
// CO MUST ensure that NodePublishVolume uses the same
2263
2266
// volume_mount_group for the same volume_id.
2264
2267
// The value of volume_mount_group should be group_id or group name
2265
2268
// which would be associated with workload that uses the
@@ -2286,6 +2289,7 @@ The CO MUST implement the specified error recovery behavior when it encounters t
2286
2289
| Exceeds capabilities | 9 FAILED_PRECONDITION | Indicates that the CO has exceeded the volume's capabilities because the volume does not have MULTI_NODE capability. | Caller MAY choose to call `ValidateVolumeCapabilities` to validate the volume capabilities, or wait for the volume to be unpublished on the node. |
2287
2290
| Staging target path not set | 9 FAILED_PRECONDITION | Indicates that `STAGE_UNSTAGE_VOLUME` capability is set but no `staging_target_path` was set. | Caller MUST make sure call to `NodeStageVolume` is made and returns success before retrying with valid `staging_target_path`. |
2288
2291
| Volume staged with different volume_mount_group | 9 FAILED_PRECONDITION | Indicates that volume with specified `volume_id` was node staged using different `volume_mount_group` on this node and hence can not be node published. | Caller MUST make sure that `NodePublishVolume` is called with same `volume_mount_group` which was used in `NodeStageVolume`. |
2292
+
| Volume already published with different volume_mount_group | 9 FAILED_PRECONDITION | Indicates that the volume with specified `volume_id` was already node published using different `volume_mount_group` on this node and can not be node published. | Caller MUST ensure that `NodePublishVolume` is called with same `volume_mount_group` on all target paths. |
0 commit comments