实现资源聚合的创建/更新/删除

https://blueprints.launchpad.net/heat/+spec/convergence-resource-operations

问题描述

我们需要修改 heat.engine.resource.Resource 的操作(创建/更新/删除),使其在聚合架构和遗留架构中都能工作。

提议的变更

在 worker 中创建一个轻量级包装器,使用 TaskRunner 运行相应的操作。任何特定于聚合架构且不应在遗留架构中执行的代码,希望也能包含在这个包装器中。

在对创建/更新/删除操作本身的任何更改对遗留架构无害的范围内(例如,将聚合所需的其他数据存储在 Resource 表中),应将其作为现有操作的一部分实现。

原型 https://github.com/zaneb/heat-convergence-prototype/blob/resumable/converge/resource.py 应该能很好地表明需要进行的更改类型。

备选方案

另一种方法是在 Resource 类中为聚合构建单独的创建/更新/删除操作。如果证明有必要,我们可以这样做,但尽可能保持单一代码路径似乎更可取。

实现

负责人

主要负责人

unmesh-gurjar

里程碑

完成目标里程碑

Kilo-3

工作项

  • 对 Resource.create/update/delete 进行必要的更改

  • 实现 TaskRunner 包装器并从相关的 workflow 代码中调用它

依赖项