[openstack-dev] disabling deprecated APIs by config?
sean at dague.net
Wed May 18 19:19:15 UTC 2016
On 05/18/2016 11:56 AM, Dean Troyer wrote:
> On Wed, May 18, 2016 at 10:20 AM, Sean Dague <sean at dague.net
> <mailto:sean at dague.net>> wrote:
> nova-net is now deprecated - https://review.openstack.org/#/c/310539/
> Woot! Now to make it not-the-default in DevStack...
Sean Collins is working on it. :) It is basically the #1 DevStack goal
> One idea was a "big red switch" in the format of a config option
> ``disable_deprecated_apis=True`` (defaults to False). Which would set
> all deprecated APIs to 404 routes.
> One of the nice ideas here is this would allow some API servers to have
> this set, and others not. So users could point to the "clean" API
> server, figure out that they will break, but the default API server
> would still support these deprecated APIs. Or, conversely, the default
> could be the clean API server, and a legacy API server endpoint could be
> provided for projects that really needed it that included these
> deprecated things for now. Either way it would allow some site assisted
> transition. And be something like the -Werror flag in gcc.
> With an app-dev/end-user hat on, I really like the idea of there being
> some switch I can control (alternate endpoint or service catalog?
> account/project toggle? don't know exactly what yet) to do testing with
> the deprecated APIs disabled.
> This is really a problem of migrating/prompting the client developers to
> do the right thing. Often times they (including myself) respond faster
> to their users and not the upstream projects, so giving the users the
> ability to test and provide feedback would be huge here.
> With my OSC hat on, I need to still support those APIs for a couple of
> years at least, so I would love to have a way to discover that those
> APIs have been disabled without requiring a round trip to get a 404.
> This seems like a useful thing for the '/' route version information
> when no '/capabilities'-like endpoint is available.
We're working towards capabilities on the Nova side, but because of the
matrix with policy permissions, it's going to still be a couple cycles.
We will get there. It just takes time.
More information about the OpenStack-dev