[openstack-dev] [all] [tc] "No Open Core" in 2016

Tim Bell Tim.Bell at cern.ch
Fri Feb 5 14:23:06 UTC 2016

From:  Dean Troyer
Reply-To:  "OpenStack Development Mailing List (not for usage questions)"
Date:  Friday 5 February 2016 at 14:57
To:  "OpenStack Development Mailing List (not for usage questions)"
Subject:  Re: [openstack-dev] [all] [tc] "No Open Core" in 2016

On Fri, Feb 5, 2016 at 4:57 AM, Thierry Carrez <thierry at openstack.org> wrote:
My personal take on that is that we can draw a line in the sand for what is acceptable as an official project in the upstream OpenStack open source effort. It should have a fully-functional, production-grade open source implementation. If you need proprietary software or a commercial entity to fully use the functionality of a project or getting serious about it, then it should not be accepted in OpenStack as an official project. It can still live as a non-official project and even be hosted under OpenStack infrastructure, but it should not be part of "OpenStack". That is how I would interpret "no open core" in OpenStack 2016.

Should we host projects that have no hope of becoming official projects due to this sort of criteria?  Would we host GPL-only projects under openstack/?
Of course, the devil is in the details, especially around what I mean by "fully-functional" and "production-grade". Is it just an API/stability thing, or does performance/scalability come into account ? There will always be some subjectivity there, but I think it's a good place to start.

I think defining 'fully-functional' is easy enough until you allow 'vendor extensions' into the API.  But there is still an amount of objective criteria to look at to make it something that a group of, say 13 judges, might arrive at a reasonable answer.

'Production-grade' is more subjective, especially with the size of deployment differences in 'production' for a bunch of other things.  But again, it is one of those things that reasonably technical people will generally arrive at a useful conclusion .  Existing components (DB, message queues, etc) can point at known production deployments as evidence; new components have a harder sell.

For a time many projects used SQLite as a reference implementation for testing DB functionality, and have moved away from that (completely? I'm not sure) as we all agree it really is not a production-grade implementation.  That is an easy example, but as a community we have crossed this bridge multiple times already and will be able to do it again.

This could also be covered by needing scaleable as well as fully-functional and production grade. Again, it would be subjective but it would avoid reference implementations that only work at devstack scale.




Dean Troyer
dtroyer at gmail.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160205/b3dca6d8/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2792 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160205/b3dca6d8/attachment.bin>

More information about the OpenStack-dev mailing list