为命令行添加 bash 补全¶
https://blueprints.launchpad.net/python-glanceclient/+spec/add-bash-completion
目前 glance 客户端不支持命令补全。 目标是为客户端添加此功能。
问题描述¶
目前 glance 客户端没有命令行的 bash 补全功能。 此功能将提高客户端的易用性。
提议的变更¶
整合 bash 补全功能。 此功能使用 linux 脚本 bash_completion.d 来通过 bash_completion 命令向 Glance 请求所有命令和参数。 获取它们后,将对其进行过滤并显示。
使用示例
glance <tab><tab> —> 显示所有命令
glance image- <tab><tab> —> 显示所有以“image”开头(image-list, image-show, image-create…)的命令
如果只有一个,则会自动补全。
glance image-create <tab><tab> —> 显示所有可选参数
为了完成此功能,需要修改 devstack 和打包工具,以便将此脚本包含在安装程序(deb, rpm)中。
备选方案¶
无
数据模型影响¶
无
REST API 影响¶
无
安全影响¶
无
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
无
其他部署者影响¶
此更改需要将 glance.bash_completion 复制到特定的系统路径
这将影响 devstack
这将影响特定的打包(deb, rpm)
开发人员影响¶
命令和参数直接从 argparse 提取。 开发者无需在添加新命令或参数时维护单独的列表。
实现¶
负责人¶
- 主要负责人
<juan-m-olle>
工作项¶
此功能需要
添加 glance.bash_completion 脚本
向 glance 客户端添加 bash_completion 命令。 此新命令返回客户端拥有的所有可用命令,并由 glance.bash_completion 使用。
依赖项¶
无
测试¶
单元测试将检查新的 shell 命令功能。
文档影响¶
需要提及此新功能。
参考资料¶
无