[openstack-dev] [api][nova][ironic] Microversion API HTTP header

Jay Pipes jaypipes at gmail.com
Mon Jun 15 17:07:39 UTC 2015


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].

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/



More information about the OpenStack-dev mailing list