创建 Heat 数据源驱动

包含您的 Launchpad 蓝图的 URL

https://blueprints.launchpad.net/congress/+spec/heat-datasource-driver

这个 Heat 驱动将允许 Congress 与 Openstack Heat API 进行编排交互。第一版将提供来自 Heat 的读取 API 调用数据,直到 Congress 具备处理写入驱动的基础设施。后续版本可能能够发送请求并写入 Heat API。

问题描述

目前,Congress 既没有用于 Heat 的读取驱动,也没有用于写入的驱动。这个驱动将赋予 Congress 观察 Heat 的能力,以便策略编写者可以检查 Heat 状态,例如关于每个堆栈、堆栈快照、资源、软件配置、软件部署,甚至模板本身的详细信息。

提议的变更

这个驱动将类似于其他现有的驱动程序,例如 neutron_driver.py 和 nova_driver.py。Heat 驱动将从以下 Heat API 调用读取数据,并将响应转换为 Congress 表:* 列出堆栈 * 显示堆栈详情 * 列出快照 * 列出资源 * 显示资源数据 * 显示资源元数据 * 列出资源类型 * 显示配置详情 * 列出堆栈事件 * 显示事件详情 * 显示软件配置 * 显示软件部署

备选方案

另一种选择是不为 Heat 提供驱动程序,这对在其云中使用 Heat 的管理员来说不是一个好的选择。

策略

N/A

策略动作

N/A

数据源

Openstack Heat

数据模型影响

N/A

REST API 影响

N/A

安全影响

Heat 驱动需要像所有其他数据源驱动程序一样向 Heat API 进行身份验证。

通知影响

N/A

其他最终用户影响

N/A

性能影响

API 调用可能会很昂贵。我们需要衡量 API 调用对 Heat 和 Congress 性能的影响。

其他部署者影响

N/A

开发者影响

N/A

实现

负责人

主要负责人

tengqim

工作项

  • 编写单元测试

  • 编写 Tempest 测试

  • 编写 API 客户端代码

  • 编写表转换器

依赖项

N/A

测试

这项工作必须包括一个单元测试和一个 Tempest 测试。驱动程序转换器基础设施使大部分转换代码具有鲁棒性,但该驱动程序仍然依赖于 Heat API,因此 Tempest 测试作为集成测试尤其重要。

文档影响

N/A