cinder/releasenotes/notes/remove-multiattach-request-param-4444e02533f919da.yaml
whoami-rajat 32f1145b7d Remove multiatttach request parameter
The initial cinder design[1][2][3] allowed users to create mutliattach
volumes by spcifying the ``multiattach`` parameter in the request
body of volume create operation (``--allow-multiattach`` option in
cinderclient).

This functionality changed in Queens with the introduction of
microversion 3.50[4] where we used volume types to store
the multiattach capabilities. Any volume created with a multiattach
volume type will be a multiattach volume[5].

While implementing the new functionality, we had to keep backward
compatibility with the *old way* of creating multiattach volumes.
We deprecated the ``multiattach`` (``--allow-multiattach`` on cinderclient
side) parameter in the queens release[6][7].
We also removed the support of the ``--allow-multiattach`` optional
parameter from cinderclient in the train release[8] but the API
side never removed the compatibility code to disallow functionality
of creating multiattach volumes by using the ``multiattach``
parameter (instead of a multiattach volume type).

This patch removes the support of providing the ``multiattach``
parameter in the request body of a volume create operation and will
fail with a BadRequest exception stating the reason of failure
and how it can be fixed.

[1] https://blueprints.launchpad.net/cinder/+spec/multi-attach-volume
[2] https://review.opendev.org/c/openstack/cinder/+/85847/
[3] https://review.opendev.org/c/openstack/python-cinderclient/+/85856
[4] f1bfd9790d
[5] https://docs.openstack.org/cinder/latest/admin/volume-multiattach.html#how-to-create-a-multiattach-volume
[6] 94dbf5cce2
[7] adb141a262
[8] 3c1b417959

Depends-On: https://review.opendev.org/c/openstack/tempest/+/875372
Closes-Bug: 2008259

Change-Id: I0ece6e279048abcc04b3674108290a80eca6bd62
2023-03-06 08:58:59 +00:00

21 lines
962 B
YAML

---
fixes:
- |
`Bug #2008259 <https://bugs.launchpad.net/cinder/+bug/2008259>`_:
Fixed the volume create functionality where non-admin users were
able to create multiattach volumes by providing the `multiattach`
parameter in the request body. Now we can only create multiattach
volumes using a multiattach volume type, which is also the
recommended way.
other:
- |
Removed the ability to create multiattach volumes by specifying
`multiattach` parameter in the request body of a volume create
operation. This functionality is unsafe, can lead to data loss,
and has been deprecated since the Queens release.
The recommended method for creating a multiattach volume is to
use a volume type that supports multiattach. By default, volume
types can only be created by the operator. Users who have a need
for multiattach volumes should contact their operator if a suitable
volume type is not available.