Skip to content

Commit 606a5df

Browse files
committed
api-ref: Add notes about volume attach and detach being async
This change adds some basic notes in the api-ref for a wrinkle in the current os-volume_attachments API in that both attach and detach actions are async, returning to the caller *before* the underlying action is complete. As such callers need to make seperate calls to ensure these actions complete successfully. There are also currently two different ways of polling for completion when attaching and detaching. - When attaching callers should use the volume status and list of attachments as reported by the volume API. - When detaching callers should instead use the list of volume attachments reported by the os-volume_attachments API. This is due to the way in which Nova currently completes the attachment via c-api last during attachment and deletes the bdm record last during detachment. It would be useful to one day centralise on just using the os-volume_attachments API to poll both actions but to do that we would need to start tracking our own state within the BDMs. Change-Id: Id367ee53ef1458b6a90fc107ab14f5b3cbba7a86
1 parent 06c0a4e commit 606a5df

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

api-ref/source/os-volume-attachments.inc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,10 @@ Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNo
7070
to actually support a multiattach volume depends on the volume type
7171
and compute hosting the instance.
7272

73+
.. note:: This is an asynchronous API, callers should poll the status and list
74+
of attachments of the volume within the volume API to determine when
75+
the attachment has completed successfully.
76+
7377
Request
7478
-------
7579

@@ -247,6 +251,11 @@ Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNo
247251
.. note:: From v2.20 detach a volume from an instance in SHELVED or SHELVED_OFFLOADED
248252
state is allowed.
249253

254+
.. note:: This is an asynchronous API, callers should poll the list
255+
of volume attachments provided by ``GET
256+
/servers/{server_id}/os-volume_attachments`` to determine when the
257+
detachment of the volume has completed successfully.
258+
250259
Request
251260
-------
252261

0 commit comments

Comments
 (0)