[openstack-dev] [nova] The deprecation of proxy API related CLI
mriedem at linux.vnet.ibm.com
Thu Aug 11 16:35:42 UTC 2016
On 8/10/2016 11:01 PM, Alex Xu wrote:
> Hi, guys,
> We have agreement on how to deprecate the CLI for the proxy APIs which
> were deprecated in 2.36 when mid-cycle. But I still feels that we have
> something isn't very clear. So I just want to summary the situation at
> here, and to be clear the final goal.
> Here are the patches https://review.openstack.org/347514
> and https://review.openstack.org/#/c/348499
> So the agreement is:
> When user executes the network related CLI without specific version or
> with specific version > 2.35, the CLI will fallback to 2.35 automatically.
> For the API part, we won't do any workaround, so that means we will stop
> to support those after 2.35, we need add decorator like
> this https://github.com/openstack/python-novaclient/blob/master/novaclient/v2/servers.py#L917
> But the agreement is only talk about network related thing, we also
> deprecate image/volume/snapshot/baremetal/fping stuff. So what is the
> plan for them? I guess we just no workaround also, stop the support
> after 2.35.
> So the final status will be as below:
> * Network CLI: Auto fallback to 2.35 in the patch
> * Quota/Limit CLI: Remove network quotas after 2.35 in the current patch
> * Image CLI: Currently the CLI emit the deprecated message in the code,
> but it still break in 2.36(get a 404 message). We should stop support it
> after 2.35
> * Baremetal CLI: Same as Image CLI, there is message, but will break in
> 2.36. Stop to support it after 2.35
For image and baremetal CLIs, we might need to just cap those at 2.35.
> * No Volume/Snapshot/fping related CLI
> * Network/Image/Quota/Limit/Baremetal/Volumes/fping API: No workaround.
> Stop to support them after 2.35.
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
Another thing I just ran into while testing this, is that novaclient
itself calls to these proxy APIs, like for validating that the image
uuid you passed in on boot is available. The CLI does the same for doing
name translation (you pass a network name, we get the ID and pass that
to the REST API).
So with 2.36 being the default for the CLI actually breaks the CLI since
it's using these proxies which now return a 404.
I considered capping the default for the CLI at 2.35 until novaclient
itself is no longer using the deprecated proxy APIs, but Sean pointed
out that we then don't have support for the get-me-a-network feature
(2.37) by default, which sucks.
So I think we're probably going to have to land some changes to move
novaclient itself off of the nova proxy APIs before we can land the
support for 2.36 as the default in the CLI.
More information about the OpenStack-dev