openstack at fried.cc
Thu May 23 19:09:57 UTC 2019
> We need changes in Cyborg CLI for version 2 (which enables Nova integration, and introduces new objects in the process). New CLIs are supposed to be based on OpenStackClient . Not sure if that is mandatory, but seems like a good idea if we have to redo significant parts of the CLI anyway.
> The CLI from python-cyborgclient is based on the OpenStack CLI syntax. However, AFAICS, it is not a plugin into OSC. For example, it does not do "from openstackclient import shell". The list of OpenStack CLI plugins  does not include Cyborg.
> Does this mean that python-cyborgclient should be rewritten as an OSC plugin?
Ultimately yes*. Both can exist concurrently, so for the sake of not
accruing further technical debt, you might consider starting the OSC
plugin piece with v2 and porting v1 functionality gradually/later. (Or
maybe not at all. Is the v1 API a real thing that's going to be
maintained long term?) Eventually the goal would be to retire the
non-OSC CLI pieces.
*or starting a new osc-cyborg project for the plugin
> IIUC, the push towards OpenStack SDK  is unrelated to OpenStack CLI. It becomes relevant only if some other service wants to call into Cyborg.
Agreed. I think the overlap is that a given OSC plugin can (with at
least an undercurrent of "should") use the SDK. Since cyborg is starting
both OSC and v2 from scratch, I would definitely say write the OSC code
to talk through SDK.
More information about the openstack-discuss