RDO管理器OSC插件库

python-rdomanager-oscplugin的Python项目详细描述


openstackclient引用插件模块

OSC插件系统的设计使得插件只需要 正确安装,以便OSC找到并使用它。它利用 setuptools向OSC播发的入口点机制 插件模块和支持的命令。

rdomanager osc plugin是一个openstackclient(osc)插件实现 实现对RDO管理器和的安装和管理有用的命令 既有低云又有过云。

发现

OSC通过枚举在下面找到的入口点来发现扩展 openstack.cli.extension并初始化给定的客户端模块。

[entry_points]
openstack.cli.extension =
    oscplugin = oscplugin.plugin

客户端模块必须实现以下接口功能:

  • API_NAME-包含插件api名称的字符串;这是 声明插件客户端模块的入口点的名称 (oscplugin = ...在上面的示例中)和的组名 插件命令(openstack.oscplugin.v1 =在下面的示例中)
  • API_VERSION_OPTION(可选)-如果已设置,则为API的名称 version属性;这必须是有效的python标识符,并且 匹配在build_option_parser()中设置的目标。
  • API_VERSIONS-将版本字符串映射到客户端类的dict
  • build_option_parser(parser)-hook向解析器添加全局选项
  • make_client(instance)-hook创建客户机对象

osc枚举加载的插件并从入口点加载命令 为API版本定义:

openstack.oscplugin.v1 =
    plugin_list = oscplugin.v1.plugin:ListPlugin
    plugin_show = oscplugin.v1.plugin:ShowPlugin

注意,osc将组名定义为openstack.<api-name>.v<version> 因此版本不应包含前导“v”字符。

第二步与除标识外的所有步骤相同 OSC本身的客户。由于身份验证,身份是特殊的 要求。这限制了向OSC添加其他验证模块的能力。

客户机

rdomanager_oscplugin客户机类的当前实现是 空占位符。此客户端对象不是必需的,而是OSC的客户端管理器 将根据需要进行维护,是其他插件的接口点 访问此插件实现的任何内容。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
返回数组无效的java方法   异步Java CompletableFuture获取其请求   java是否可以像RDBMS那样使用视图?   java如何在屏幕上只运行一个片段?   java无法从Vertex jdbc查询中获取结果   java从jtable获取对象的正确方法   java Spring 3数据设备替代方案   Java BigDecimal:四舍五入到客户首选的数字和增量   JAVA主窗口没有出现,我必须左键单击主窗口。java并单击run查看它   Eclipse RCP中的java进程自定义设备事件   JavaEclipse一次又一次地构建代码(没有任何更改)?   java如何实现对象合并