Heat 模板函数列表¶
https://blueprints.launchpad.net/heat/+spec/template-function-list
添加通过 REST API 和 CLI 获取给定模板可用函数列表的能力
问题描述¶
目前无法获取给定模板版本支持的函数列表。这对于帮助模板编写者,特别是 HOT 构建器来说非常有用。
提议的变更¶
向 heat CLI 添加以下命令
heat template-function-list <template_version>
其中 template_version 是由 heat template-version-list 命令输出给定的模板版本。该命令返回可用的模板版本列表及其对应的类型(cfn 或 hot),方便用户使用。
相应的 REST API 将如下所示
GET on /template_versions/<template_version>/functions
可能的输出
功能 |
描述 |
|---|---|
Fn::GetAZs |
返回给定区域内的可用区。 |
get_param |
用于解析参数引用的函数。 |
get_resource |
用于解析资源引用的函数。 |
Ref |
用于解析参数引用的函数。 |
… |
备选方案¶
无
实现¶
所需模板可以通过模板管理器通过 template 模块中的 _get_template_extension_manager() 获取。每个模板都将函数列表作为类属性。每个函数的描述将通过函数的 __doc__() 方法获取。还需要对 REST API 控制器和 RPC 进行额外的更改。
负责人¶
ochuprykov tlashchova skraynev
里程碑¶
- 完成目标里程碑
liberty-2
工作项¶
更新资源 REST API 控制器,增加额外功能
更新 heat CLI
添加所需的 RPC
添加所需的额外测试用例。
添加 CLI (python-heatclient) 和 REST API (api-sites) 的文档
依赖项¶
https://blueprints.launchpad.net/heat/+spec/template-version-list