1c6fdc9aec
This change adds a new microversion to expose virtual device tags for volumes and ports attached to a server. Implements blueprint expose-virtual-device-tags-in-rest-api Change-Id: I09420ff7134874dfe4dc399931c7740e81ecc2d0
194 lines
4.7 KiB
ReStructuredText
194 lines
4.7 KiB
ReStructuredText
.. -*- rst -*-
|
|
|
|
=========================================
|
|
Port interfaces (servers, os-interface)
|
|
=========================================
|
|
|
|
List port interfaces, show port interface details of the given server.
|
|
Create a port interface and uses it to attach a port to the given server,
|
|
detach a port interface from the given server.
|
|
|
|
List Port Interfaces
|
|
====================
|
|
|
|
.. rest_method:: GET /servers/{server_id}/os-interface
|
|
|
|
Lists port interfaces that are attached to a server.
|
|
|
|
Normal response codes: 200
|
|
|
|
Error response codes: unauthorized(401), forbidden(403), itemNotFound(404),
|
|
NotImplemented(501)
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
|
|
- server_id: server_id_path
|
|
|
|
Response
|
|
--------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- interfaceAttachments: interfaceAttachments
|
|
- port_state: port_state
|
|
- fixed_ips: fixed_ips_resp
|
|
- ip_address: ip_address
|
|
- subnet_id: subnet_id
|
|
- mac_addr: mac_addr
|
|
- net_id: net_id_resp
|
|
- port_id: port_id_resp
|
|
- tag: device_tag_nic_attachment_resp
|
|
|
|
**Example List Port Interfaces: JSON response**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/attach-interfaces-list-resp.json
|
|
:language: javascript
|
|
|
|
**Example List Tagged Port Interfaces (v2.70): JSON response**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/v2.70/attach-interfaces-list-resp.json
|
|
:language: javascript
|
|
|
|
Create Interface
|
|
================
|
|
|
|
.. rest_method:: POST /servers/{server_id}/os-interface
|
|
|
|
Creates a port interface and uses it to attach a port to a server.
|
|
|
|
Normal response codes: 200
|
|
|
|
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
|
|
itemNotFound(404), conflict(409), computeFault(500), NotImplemented(501)
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
|
|
- server_id: server_id_path
|
|
- interfaceAttachment: interfaceAttachment
|
|
- port_id: port_id
|
|
- net_id: net_id
|
|
- fixed_ips: fixed_ips
|
|
- ip_address: ip_address_req
|
|
- tag: device_tag_nic_attachment
|
|
|
|
**Example Create Interface: JSON request**
|
|
|
|
Create interface with ``net_id`` and ``fixed_ips``.
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/attach-interfaces-create-net_id-req.json
|
|
:language: javascript
|
|
|
|
Create interface with ``port_id``.
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/attach-interfaces-create-req.json
|
|
:language: javascript
|
|
|
|
**Example Create Tagged Interface (v2.49): JSON request**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/v2.49/attach-interfaces-create-req.json
|
|
:language: javascript
|
|
|
|
Response
|
|
--------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- interfaceAttachment: interfaceAttachment_resp
|
|
- fixed_ips: fixed_ips_resp
|
|
- ip_address: ip_address
|
|
- subnet_id: subnet_id
|
|
- mac_addr: mac_addr
|
|
- net_id: net_id_resp
|
|
- port_id: port_id_resp
|
|
- port_state: port_state
|
|
- tag: device_tag_nic_attachment_resp
|
|
|
|
**Example Create Interface: JSON response**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/attach-interfaces-create-resp.json
|
|
:language: javascript
|
|
|
|
**Example Create Tagged Interface (v2.70): JSON response**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/v2.70/attach-interfaces-create-resp.json
|
|
:language: javascript
|
|
|
|
Show Port Interface Details
|
|
===========================
|
|
|
|
.. rest_method:: GET /servers/{server_id}/os-interface/{port_id}
|
|
|
|
Shows details for a port interface that is attached to a server.
|
|
|
|
Normal response codes: 200
|
|
|
|
Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
|
|
- server_id: server_id_path
|
|
- port_id: port_id_path
|
|
|
|
Response
|
|
--------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- interfaceAttachment: interfaceAttachment_resp
|
|
- port_state: port_state
|
|
- fixed_ips: fixed_ips_resp
|
|
- ip_address: ip_address
|
|
- subnet_id: subnet_id
|
|
- mac_addr: mac_addr
|
|
- net_id: net_id_resp
|
|
- port_id: port_id_resp
|
|
- tag: device_tag_nic_attachment_resp
|
|
|
|
**Example Show Port Interface Details: JSON response**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/attach-interfaces-show-resp.json
|
|
:language: javascript
|
|
|
|
**Example Show Tagged Port Interface Details (v2.70): JSON response**
|
|
|
|
.. literalinclude:: ../../doc/api_samples/os-attach-interfaces/v2.70/attach-interfaces-show-resp.json
|
|
:language: javascript
|
|
|
|
Detach Interface
|
|
================
|
|
|
|
.. rest_method:: DELETE /servers/{server_id}/os-interface/{port_id}
|
|
|
|
Detaches a port interface from a server.
|
|
|
|
Normal response codes: 202
|
|
|
|
Error response codes: unauthorized(401), forbidden(403), itemNotFound(404),
|
|
conflict(409), NotImplemented(501)
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
|
|
- server_id: server_id_path
|
|
- port_id: port_id_path
|
|
|
|
Response
|
|
--------
|
|
|
|
No body is returned on successful request.
|