第 2 章 使用软件开发套件
这部分论述了如何将软件开发套件用于版本 4。
2.1. 软件包
以下模块最常由 Python SDK 使用:
- ovirtsdk4
这是顶级模块。最重要的元素是
Connection
类,这是连接到服务器的机制,并获取对服务树的根引用。Error
类是 SDK 在需要报告错误时引发的基本例外类。对于某些类型错误,有特定的错误类,它扩展了基本错误类:
-
AuthError
- 在身份验证或授权失败时 Raized。 -
ConnectionError
- 当服务器名称无法解析或者服务器无法访问时。 -
NotFoundError
- 当请求的对象不存在时 Raized。 -
TimeoutError
- 超时时 Raized。
-
- ovirtsdk4.types
此模块包含实施 API 中使用的类型的类。例如,
ovirtsdk4.types.Vm
类是虚拟机类型的实现。这些类是数据容器,不包含任何逻辑。这些类的实例用作服务方法的参数和返回值。SDK 会透明地处理转换到底层表示的转换。
- ovirtsdk4.services
此模块包含实施 API 支持的服务的类。例如,
ovirtsdk4.services.VmsService
类是管理系统虚拟机集合的服务实现。当服务位于时,SDK 会自动创建这些类的实例。例如,在执行以下操作时,SDD 会自动创建
VmsService
类的新实例:vms_service = connection.system_service().vms_service()
最好避免手动创建这些类的实例,作为构造器的参数,一般情况下,除服务松cators 和服务方法以外的所有方法都可以在未来有所变化。
还有其他模块,如
ovirtsdk4.http
、ovirtsdk4.readers
和ovirtsdk4.writers
。它们用于实施 HTTP 通信和 XML 解析和渲染。避免使用它们,因为它们是未来可能会变化的内部实施详情,因此无法保证向后兼容。