Add REST API support for get me a network
This adds the 2.37 microversion to the REST API for automatically allocating a network, i.e. get me a network. The majority of the changes to the REST API concern request validation. 'networks' is now required in the server POST body after this microversion. The 'auto' or 'none' special network uuid values are used, but if specified, can not be specified with any other requested network values. The other special case that is checked is when the minimum compute service version is not new enough to support this change, i.e. a Mitaka compute will not have the network API code that knows how to deal with the special auto/none network IDs. Because the REST API is checking the service version, the service caches the service version after the first check. Once all computes are updated to Newton then a restart of the nova-api service(s) will be required to flush the cache. A release note is provided for this situation. The api-ref docs are also updated for this microversion including an example API sample request. The matching Tempest change to test this is here: I89b18709e0cfbbcbf9be96a91a13a1356cdf85b0 The matching python-novaclient change is here: I6636ddcd3be7bf393d2d69cc6c1ba5c7d65ff674 Implements blueprint get-me-a-network Change-Id: I89b18709e0cfbbcbf9be96a91a13a1356cdf85b0
This commit is contained in:
@@ -90,6 +90,9 @@ REST_API_VERSION_HISTORY = """REST API Version History:
|
||||
* 2.35 - Adds keypairs pagination support.
|
||||
* 2.36 - Deprecates all the API which proxy to another service and fping
|
||||
API.
|
||||
* 2.37 - Adds support for auto-allocating networking, otherwise known as
|
||||
"Get me a Network". Also enforces server.networks.uuid to be in
|
||||
UUID format.
|
||||
"""
|
||||
|
||||
# The minimum and maximum versions of the API supported
|
||||
@@ -98,7 +101,7 @@ REST_API_VERSION_HISTORY = """REST API Version History:
|
||||
# Note(cyeoh): This only applies for the v2.1 API once microversions
|
||||
# support is fully merged. It does not affect the V2 API.
|
||||
_MIN_API_VERSION = "2.1"
|
||||
_MAX_API_VERSION = "2.36"
|
||||
_MAX_API_VERSION = "2.37"
|
||||
DEFAULT_API_VERSION = _MIN_API_VERSION
|
||||
|
||||
# All the proxy APIs which related network, images and baremetal
|
||||
|
||||
Reference in New Issue
Block a user