将名称添加到列表分配

bp list-assignment-with-names

可选地允许调用列表分配 API 的用户请求返回的实体包含其名称。

问题描述

当前的列表分配 API 仅返回实体的 ID。通常,为了使这些 ID 有用,客户端需要将这些 ID 转换为实体名称。如果可以在服务器端作为 API 的一部分完成此操作,将会更有效率。

提议的变更

为列表分配 API 支持额外的查询参数 include_names。如果指定为 true,则返回的每个实体将包含名称。对于名称仅在其域内唯一的实体,也会返回域名。还支持按实体名称列出分配。

虽然我们可以返回每个实体的所有属性,但考虑到集合中可能存在的元素数量巨大,我们仅包含名称。仍然返回 id,以便如果调用者需要完整的实体,他们可以获取它。

备选方案

保持现状。

数据模型影响

REST API 影响

除了支持额外的查询参数外,没有其他内容。

安全影响

通知影响

其他最终用户影响

性能影响

对于大型集合,显然存在潜在的性能影响。这将尽可能通过高效的 SQL 编码来最小化。

其他部署者影响

开发人员影响

实现

负责人

主要负责人

henry-nash

工作项

  • 添加管理器/驱动程序对名称的支持

  • 添加名称控制器

  • 添加 keystoneclient 库对名称的支持

  • 添加 openstack cli 对名称的支持

依赖项

测试

文档影响

更改用户文档以描述新的 API。

参考资料