novaclient.api_versions module¶
- class novaclient.api_versions.APIVersion(version_str=None)¶
Bases:
object
This class represents an API Version Request.
This class provides convenience methods for manipulation and comparison of version numbers that we need to do to implement microversions.
Create an API version object.
- Parameters:
version_str – String representation of APIVersionRequest. Correct format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. None value should be used to create Null APIVersionRequest, which is equal to 0.0
- get_string()¶
Version string representation.
Converts object to string representation which if used to create an APIVersion object results in the same version.
- is_latest()¶
- is_null()¶
- matches(min_version, max_version)¶
Matches the version object.
Returns whether the version object represents a version greater than or equal to the minimum version and less than or equal to the maximum version.
- Parameters:
min_version – Minimum acceptable version.
max_version – Maximum acceptable version.
- Returns:
boolean
If min_version is null then there is no minimum limit. If max_version is null then there is no maximum limit. If self is null then raise ValueError
- class novaclient.api_versions.VersionedMethod(name, start_version, end_version, func)¶
Bases:
object
Versioning information for a single method
- Parameters:
name – Name of the method
start_version – Minimum acceptable version
end_version – Maximum acceptable_version
func – Method to call
Minimum and maximums are inclusive
- novaclient.api_versions.check_headers(response, api_version)¶
Checks that microversion header is in response.
- novaclient.api_versions.check_major_version(api_version)¶
Checks major part of
APIVersion
obj is supported.- Raises:
novaclient.exceptions.UnsupportedVersion – if major part is not supported
- novaclient.api_versions.deprecated_after(version)¶
- novaclient.api_versions.discover_version(client, requested_version)¶
Discover most recent version supported by API and client.
Checks
requested_version
and returns the most recent version supported by both the API and the client.- Parameters:
client – client object
requested_version – requested version represented by APIVersion obj
- Returns:
APIVersion
- novaclient.api_versions.get_api_version(version_string)¶
Returns checked APIVersion object
- novaclient.api_versions.get_available_major_versions()¶
- novaclient.api_versions.get_substitutions(func_name, api_version=None)¶
- novaclient.api_versions.update_headers(headers, api_version)¶
Set microversion headers if api_version is not null
- novaclient.api_versions.wraps(start_version, end_version=None)¶