
RBAC community wide goal phase-2[1] is to add 'service' role for the service APIs policy rule. This commit defaults the service APIs to 'service' role. This way service APIs will be allowed for service user only. Tempest tests also modified to simulate the service-to-service communication. Tempest tests send the user with service role to nova API. - https://review.opendev.org/c/openstack/tempest/+/892639> Partial implement blueprint policy-service-role-default [1] https://governance.openstack.org/tc/goals/selected/consistent-and-secure-rbac.html#phase-2 Change-Id: I1565ea163fa2c8212f71c9ba375654d2aab28330 Signed-off-by: Ghanshyam Maan <gmaan@ghanshyammann.com>
61 lines
2.0 KiB
ReStructuredText
61 lines
2.0 KiB
ReStructuredText
.. -*- rst -*-
|
|
|
|
.. _os-volume-attachments-swap:
|
|
|
|
===============================================================================
|
|
Update ("swapping") Server volume attachments (servers, os-volume\_attachments)
|
|
===============================================================================
|
|
|
|
Update ("swapping") the server volume attachments which means swapping
|
|
the volume attached to the server.
|
|
|
|
Update(swapping) a volume attachment
|
|
====================================
|
|
|
|
.. rest_method:: PUT /servers/{server_id}/os-volume_attachments/{volume_id}
|
|
|
|
Update a volume attachment.
|
|
|
|
.. note:: This action only valid when the server is in ACTIVE, PAUSED and RESIZED state,
|
|
or a conflict(409) error will be returned.
|
|
|
|
.. Important::
|
|
|
|
When updating volumeId, this API **MUST** only be used
|
|
as part of a larger orchestrated volume
|
|
migration operation initiated in the block storage
|
|
service via the ``os-retype`` or ``os-migrate_volume``
|
|
volume actions. Direct usage of this API is not supported
|
|
and will be blocked by nova with a 409 conflict.
|
|
Furthermore, updating ``volumeId`` via this API is only
|
|
implemented by `certain compute drivers`_.
|
|
|
|
.. _certain compute drivers: https://docs.openstack.org/nova/latest/user/support-matrix.html#operation_swap_volume
|
|
|
|
Updating, or what is commonly referred to as "swapping", volume attachments
|
|
with volumes that have more than one read/write attachment, is not supported.
|
|
|
|
Normal response codes: 202
|
|
|
|
Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- server_id: server_id_path
|
|
- volume_id: volume_id_swap_src
|
|
- volumeAttachment: volumeAttachment_put
|
|
- volumeId: volumeId_swap
|
|
|
|
**Example Update a volume attachment: JSON request**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-volume_attachments/update-volume-req.json
|
|
:language: javascript
|
|
|
|
Response
|
|
--------
|
|
|
|
No body is returned on successful request.
|