cinder/api-ref/source/v2/qos-specs-v2-qos-specs.inc
luqitao b7f85fe0c9 Add the missing "vol_type_id" param for qos association api-ref
According to the code [1], "vol_type_id" is a required param,
so do "project_id/tenant_id" and "qos_id", they aren't optional params.

[1] https://github.com/openstack/cinder/blob/master/cinder/api/contrib/qos_specs_manage.py#L261:L269

Change-Id: I7727a9b675080bb92d2e42e293868a1e4eb92e10
2017-05-27 00:53:38 -04:00

316 lines
5.2 KiB
ReStructuredText

.. -*- rst -*-
Quality of service (QoS) specifications (qos-specs)
===================================================
Administrators only.
Creates, lists, shows details for, associates, disassociates, sets
keys, unsets keys, and deletes quality of service (QoS)
specifications.
Disassociate QoS specification from all associations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: GET /v2/{tenant_id}/qos-specs/{qos_id}/disassociate_all
Disassociates a QoS specification from all associations.
Normal response codes: 202,
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- qos_id: qos_id
Unset keys in QoS specification
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: PUT /v2/{tenant_id}/qos-specs/{qos_id}/delete_keys
Unsets keys in a QoS specification.
Normal response codes: 200
Error response codes:
Request
-------
.. rest_parameters:: parameters.yaml
- keys: keys
- tenant_id: tenant_id
- qos_id: qos_id
Request Example
---------------
.. literalinclude:: ./samples/qos-unset-request.json
:language: javascript
Response Example
----------------
.. literalinclude:: ./samples/qos-unset-response.json
:language: javascript
Get all associations for QoS specification
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: GET /v2/{tenant_id}/qos-specs/{qos_id}/associations
Lists all associations for a QoS specification.
Normal response codes: 200
Error response codes:
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- qos_id: qos_id
Response Example
----------------
.. literalinclude:: ./samples/qos-show-response.json
:language: javascript
Associate QoS specification with volume type
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: GET /v2/{tenant_id}/qos-specs/{qos_id}/associate
Associates a QoS specification with a volume type.
Normal response codes: 202,
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- qos_id: qos_id
- vol_type_id: vol_type_id
Disassociate QoS specification from volume type
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: GET /v2/{tenant_id}/qos-specs/{qos_id}/disassociate
Disassociates a QoS specification from a volume type.
Normal response codes: 202,
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- qos_id: qos_id
- vol_type_id: vol_type_id
Show QoS specification details
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: GET /v2/{tenant_id}/qos-specs/{qos_id}
Shows details for a QoS specification.
Normal response codes: 200
Error response codes: 413, 405, 404, 403, 401, 400, 503,
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- qos_id: qos_id
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- name: name
- links: links
- id: id
- qos_specs: qos_specs
- consumer: consumer
- specs: specs
Response Example
----------------
.. literalinclude:: ./samples/qos-show-response.json
:language: javascript
Set keys in QoS specification
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: PUT /v2/{tenant_id}/qos-specs/{qos_id}
Sets keys in a QoS specification.
Normal response codes: 200
Error response codes:
Request
-------
.. rest_parameters:: parameters.yaml
- qos_specs: qos_specs
- specs: specs
- tenant_id: tenant_id
- qos_id: qos_id
Request Example
---------------
.. literalinclude:: ./samples/qos-update-request.json
:language: javascript
Response Example
----------------
.. literalinclude:: ./samples/qos-update-response.json
:language: javascript
Delete QoS specification
~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: DELETE /v2/{tenant_id}/qos-specs/{qos_id}
Deletes a QoS specification.
Normal response codes: 202,
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- qos_id: qos_id
- force: force
Create QoS specification
~~~~~~~~~~~~~~~~~~~~~~~~
.. rest_method:: POST /v2/{tenant_id}/qos-specs
Creates a QoS specification.
Specify one or more key and value pairs in the request body.
Normal response codes: 202,
Request
-------
.. rest_parameters:: parameters.yaml
- qos_specs: qos_specs
- consumer: consumer
- name: name
- tenant_id: tenant_id
Request Example
---------------
.. literalinclude:: ./samples/qos-create-request.json
:language: javascript
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- name: name
- links: links
- id: id
- qos_specs: qos_specs
- consumer: consumer
- specs: specs
List QoS specs
~~~~~~~~~~~~~~
.. rest_method:: GET /v2/{tenant_id}/qos-specs
Lists quality of service (QoS) specifications.
Normal response codes: 200, 300,
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- sort_key: sort_key
- sort_dir: sort_dir
- limit: limit
- marker: marker
Response Parameters
-------------------
.. rest_parameters:: parameters.yaml
- specs: specs
- qos_specs: qos_specs
- consumer: consumer
- id: id
- name: name
Response Example
----------------
.. literalinclude:: ./samples/qos-list-response.json
:language: javascript