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

Jay Pipes jaypipes at gmail.com
Mon Jun 15 20:35:06 UTC 2015

On 06/15/2015 02:26 PM, Ruby Loo wrote:
> On 15 June 2015 at 13:07, Jay Pipes <jaypipes at gmail.com
> <mailto:jaypipes at gmail.com>> 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].
>     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
> Hi Jay,
> When I reviewed the changes in Ironic, that was one of the things I
> noticed. I looked at the nova implementation at the time, and I saw
> 'nova' so even though I thought it should have been 'compute' (and
> 'baremetal' for Ironic), I thought it was OK to use 'ironic'. Sorry,
> that was the wrong time for me to be a laaaaaamb ;)
> I think we should deprecate and change to use 'baremetal' (if it isn't
> going to be too painful).

Ruby, there's no reason to apologize. Nobody did anything intentionally 
bad or wrong, here :) I was just trying to bring the issue up and 
possibly change directions before too much time passed.

If anyone is to blame, it's me for not noticing the changes in the first 
place! :)

All the best,

More information about the OpenStack-dev mailing list