novaclient.api_versions 模块

class novaclient.api_versions.APIVersion(version_str=None)

基类: object

这个类代表一个 API 版本请求。

这个类提供了方便的方法来操作和比较版本号,我们需要这样做来实现微版本。

创建一个 API 版本对象。

参数:

version_str – APIVersionRequest 的字符串表示。正确的格式是 ‘X.Y’,其中 ‘X’ 和 ‘Y’ 是整数值。None 值应该用于创建 Null APIVersionRequest,它等于 0.0

get_string()

版本字符串表示。

将对象转换为字符串表示,如果用于创建 APIVersion 对象,则结果将是相同的版本。

is_latest()
is_null()
matches(min_version, max_version)

匹配版本对象。

返回版本对象是否表示大于或等于最小版本且小于或等于最大版本。

参数:
  • min_version – 最小可接受版本。

  • max_version – 最大可接受版本。

返回值:

布尔值

如果 min_version 为 null,则没有最小限制。如果 max_version 为 null,则没有最大限制。如果 self 为 null,则引发 ValueError

class novaclient.api_versions.VersionedMethod(name, start_version, end_version, func)

基类: object

单个方法的版本信息

参数:
  • name – 方法名称

  • start_version – 最小可接受版本

  • end_version – 最大可接受版本

  • func – 要调用的方法

最小值和最大值都是包含的

novaclient.api_versions.check_headers(response, api_version)

检查响应中是否包含微版本头。

novaclient.api_versions.check_major_version(api_version)

检查 APIVersion 对象的 major 部分是否受支持。

引发:

novaclient.exceptions.UnsupportedVersion – 如果 major 部分不受支持

novaclient.api_versions.deprecated_after(version)
novaclient.api_versions.discover_version(client, requested_version)

发现 API 和客户端支持的最新版本。

检查 requested_version 并返回 API 和客户端都支持的最新版本。

参数:
  • client – 客户端对象

  • requested_version – 由 APIVersion 对象表示的请求版本

返回值:

APIVersion

novaclient.api_versions.get_api_version(version_string)

返回经过检查的 APIVersion 对象

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)

如果 api_version 不为 null,则设置微版本头

novaclient.api_versions.wraps(start_version, end_version=None)