在堆栈列表中显示更多用户信息¶
https://blueprints.launchpad.net/heat/+spec/stack-display-fields
堆栈由用户启动,但作用域限定在租户内,因此同一租户中的用户目前无法知道堆栈属于谁。对于未限定作用域的堆栈列表来说,情况尤其如此。由于人类更擅长处理名称而不是数字,如果此列表也包含其他信息以更好地识别堆栈所有者,那就太好了。
问题描述¶
目前无法知道哪个用户创建了堆栈,因为堆栈中仅显示租户 ID,并且多个用户可以位于同一租户中。
此外,在列出未限定作用域的堆栈(使用标志 global_tenant=True)时,将返回所有堆栈,而不管哪个租户拥有它们。此列表包含有关堆栈的信息,包括一些关于堆栈所有者的信息(例如,包含租户 ID,但不包含用户名)。
这有助于云提供商更轻松地支持其客户。但是,人类更擅长处理名称而不是数字,因此仅返回租户 ID 并不理想。
为了使支持人员能够轻松识别其客户,最好也在堆栈信息中包含堆栈所有者的用户名。
提议的变更¶
建议的实现将在格式化堆栈时添加额外信息。
当前,用户名已保存到数据库中,但在从数据库加载堆栈时未解析回堆栈。这将始终从数据库解析回堆栈,但仅在格式化堆栈以响应 global_tenant 调用时暴露给 API 响应
{
"stacks": [
{
"creation_time": "...",
"description": "...",
"id": "...",
"links": [...],
"project": "TENANT_ID",
"stack_owner": "USERNAME", // Additional info
"stack_owner_id": "USER_ID", // ----------------
"stack_name": "...",
"stack_status": "...",
"stack_status_reason": "...",
"updated_time": "..."
}
]
}
必要的变化主要位于
heat.api.openstack.v1.views.stacks_view.py
heat.engine.api.py
heat.engine.parser.py
heat.engine.service.py
heat.rpc.api.py
备选方案¶
无,因为这只是字段添加。
实现¶
负责人¶
主要负责人
rblee88
andersonvom
里程碑¶
- 完成目标里程碑
Juno-2
工作项¶
从数据库读取用户名到堆栈中
显示堆栈时显示用户名
依赖项¶
无