[openstack-dev] The future of Incubation and Core

Zane Bitter zbitter at redhat.com
Fri Nov 9 16:23:04 UTC 2012


On 08/11/12 06:34, John Dickinson wrote:
> OpenStack Core should be defined as IaaS, and the "batteries-included" parts should be part of the ecosystem but not part of core.

I'd like to address the idea that has come up several times this week 
that "ecosystem" projects are competing on the merits of their code, and 
that by promoting a particular project to core OpenStack would be 
engaged in prematurely "picking winners" and therefore distorting the 
free competition between projects.

That's not how I see it: Open Source projects compete on the strength of 
their communities, not the merits of their code. A good community can 
fix just about any code, but code can never save a weak community. And 
it seems to me that the TC absolutely is qualified to make judgements 
about this.

In my opinion, if a group has:
  * A problem that is common to a substantial proportion of OpenStack users;
  * A solution to that problem in the form of working (if incomplete) code;
  * A proven commitment to do things the OpenStack way; and
  * A record of collaboration with the larger OpenStack community

then there *needs* to be a place for them in OpenStack proper, not just 
as a Related project. Because otherwise we will continue to see these 
important problems being solved piecemeal by proprietary projects; or 
projects that are not developed in consultation with the community that 
are then dropped on us out of the blue, written in Java or having 
problematic dependencies or any number of other fundamental 
architectural problems that would have been ironed out right at the 
beginning if development had happened in the open. That situation is bad 
for developers (who have to deal with a balkanised ecosystem), bad for 
providers (who have the expense of maintaining their own individual 
implementations), and especially bad for users (for all the reasons that 
Monty has pointed out elsewhere in this thread). It would result in 
OpenStack being much less relevant than it ought to be.

Now, the definition of "Core" is currently linked closely to trademarks. 
So if you prefer to define "Core" as Nova + Swift + Quantum with 
everything else as an Official but not Core project then that's fine by 
me (although I personally find the distinction pointless). Projects like 
Heat or Horizon exist only to work with other core projects, and are 
unlikely to be distributed independently. But I am completely opposed to 
banishing everything else to the non-official "ecosystem". The 
ecosystem, of course, has its place, but its place is specialised 
functionality and plugins that allow providers to use different 
back-ends without breaking API compatibility for users, not as a 
catch-all for all the things that are an essential part of a modern IaaS 
offering but aren't Compute, Object Storage or Networking.

cheers,
Zane.



More information about the OpenStack-dev mailing list