[openstack-dev] [nova] how to handle vendor-specific API microversions?
sgordon at redhat.com
Fri Mar 27 18:45:59 UTC 2015
----- Original Message -----
> From: "Chris Friesen" <chris.friesen at windriver.com>
> To: openstack-dev at lists.openstack.org
> Haven't seen any responses to this.
> As I see it, nova is really pushing for interoperability, but what is a
> supposed to do when they have customers asking for extensions to the existing
> behaviour, and they want it in a month rather than the 6-9 months it might
> to push upstream? (Assuming its something that upstream is even interested
> I think it would be better to have an explicit method of declaring/versioning
> vendor-specific extensions (even if it's not used at all by the core Nova
> than to have each vendor winging it on their own.
In this scenario each vendor is still really winging it, as it removes the impetus for them to bring the relevent use cases and resulting requirements to the community and ultimately design/deliver an interoperable resolution - instead encouraging the continued adding of proprietary extensions. Arguably the delays seen on some features are in fact exacerbated by this kind of behaviour as if certain vendors or their users are not participating in advocating the use case then it's not clear to the rest of the community why it should be a priority.
Now, all of that said, where I agree there is a pitfall here that will potentially negatively impact vendors and some operators  is that it seems this will on face value make it more challenging to take a feature that has landed on master and backport it to an earlier release. These feature backports of course aren't in scope for the stable branches , but this is one reason frequently cited as to why some operators prefer to roll their own packaging and is also something the distros do from time to time (or at least in the interests of full disclosure I can think of some instances where we have). I would note that I am not advocating a change in the policy here but just outlining something I have been thinking about lately.
More information about the OpenStack-dev