[openstack-dev] [api][nova][ironic] Microversion API HTTP header
Adam Young
ayoung at redhat.com
Mon Jun 15 21:13:44 UTC 2015
On 06/15/2015 01:07 PM, Jay Pipes wrote:
> It has come to my attention in [1] that the microversion spec for Nova
> [2] and Ironic [3] have used the project name -- i.e. Nova and Ironic
> -- instead of the name of the API -- i.e. "OpenStack Compute" and
> "OpenStack Bare Metal" -- in the HTTP header that a client passes to
> indicate a preference for or knowledge of a particular API microversion.
>
> The original spec said that the HTTP header should contain the name of
> the service type returned by the Keystone service catalog (which is
> also the official name of the REST API). I don't understand why the
> spec was changed retroactively and why Nova has been changed to return
> X-OpenStack-Nova-API-Version instead of
> X-OpenStack-Compute-API-Version HTTP headers [4].
When it comes to enforcing policy for these APIs, what should we
realistically be matching against? Thus far, policy ghas been a purely
internal thing, with only an implicit mapping from the API to the policy
rule, but I gathered there was a push especially due to microversions to
make the two more aligned.
At a minimum, I would think that the namespace of the rule should match
the header, and we've been pushing that the rules should be namespaced
"identity", "compute" and so forth.
>
> To be blunt, Nova is the *implementation* of the OpenStack Compute
> API. Ironic is the *implementation* of the OpenStack BareMetal API.
>
> The HTTP headers should never have been changed like this, IMHO, and
> I'm disappointed that they were. In fact, it looks like a very select
> group of individuals pushed through this change [5] with little to no
> input from the mailing list or community.
>
> Since no support for these headers has yet to land in the client
> packages, can we please reconsider this?
>
> Thanks,
> -jay
>
> [1] https://review.openstack.org/#/c/187112/
> [2]
> https://github.com/openstack/nova-specs/blob/master/specs/kilo/implemented/api-microversions.rst
> [3]
> https://github.com/openstack/ironic-specs/blob/master/specs/kilo/api-microversions.rst
> [4] https://review.openstack.org/#/c/155611/
> [5] https://review.openstack.org/#/c/153183/
>
> __________________________________________________________________________
>
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe:
> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
More information about the OpenStack-dev
mailing list