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

Cody A.W. Somerville cody.somerville at gmail.com
Sat Feb 6 07:14:10 UTC 2016


There are a lot of good questions and points being raised in this thread
but I think it might be appropriate to say we've opened a can of worms. As
mentioned by Doug there is a rather specific case[1] being considered that
I think provides some important context and framing.

It is clear that there are some that feel Poppy[2] should not be an
official OpenStack project. Deciding what is and what isn't an OpenStack
project is important for a number of reasons including protection of the
brand/identity of the project and the community; being faithful to our
principles; and logistical/resource constraints. It is a complicated and
nuanced topic with many considerations as evidenced by the many
conversations and opinions raised as part of the transition to the "big
tent model". I'll agree with Anita that it is a remarkable point of
strength that we've been able to communicate and find the consensus that we
have on these subjects when it is clear from even this short thread that
there is such a rich diversity of concerns, motivations, and agendas.

I'd like to suggest we tightly scope this discussion and subsequent
decision to Poppy exclusively. The reason for this is two fold. The first
is so that a timely resolution and answer can be provided to the Poppy
team. The second is that I think once we've answered the specific questions
and concerns about Poppy (some of which I believe are novel in nature)
we'll be in a better position to then inductively reason about the problem
and derive the more generalized rule or principle that I think Thierry was
hoping to establish.

In that vein, I'll try to summarize the questions or concerns I've seen
raised here and in the TC meeting[3] - apologies if I've missed any:

Poppy is an OpenStack project designed to make CDN services easier to
consume with a generic vendor-neutral API[4]. The concern is that it only
has support for commercial CDN service providers. It does not have support
for a CDN service that is Open Source.

 1. Is Poppy "open core"[5] or violate OpenStack's 'Four Opens'[6]?
 2. Do we have a requirement that the primary component/backend (or at
least one of the components/backends) driven/abstracted/orchestrated by a
project (directly or via driver/plugin/et al) be considered Open Source? If
yes, is there room for an exception when one simply doesn't exist? Is there
special consideration for "services" (ie. think GPL vs. AGPL)?
 3. Does a project that only enables the use of commercial
services/projects belong in OpenStack?
 4. Does Poppy violate existing requirements around testing/CI[7][8]?
 5. Does dependency on Casandra make Poppy non-free?
 6. Does a project that only enables the use of non-OpenStack
services/projects belong in OpenStack?

Some additional facts that have been pointed out include:

 - It currently only supports Akamai - which makes sense to be the first
provider, Akamai is the CDN provider for Rackspace[9] and the project is
mostly developed by Rackspace[10] - but implementation is underway for
Fastly, Amazon CloudFront, and MaxCDN[11].
 - It currently only supports Rackspace DNS but support for Designate is
planned[11] (only a stub exists in tree currently).

I'm going to ponder the above and I'll respond with my thoughts.

As for the following, they are all important and deserve deliberation but
I'd respectfully suggest we table them for another day - or at least
separately - so they get the attention and consideration they deserve:

 a) definitions for production-grade or scalable;
 b) new sets of requirements or standards for official projects, such as
the former;
 c) new requirements or conventions around feature parity or priority
between plugins/drivers/et al for Open Source vs. proprietary components;
 d) changing conventions around hosting of non-official projects;
 e) changing requirements around testing/CI;
 f) deciding anything already part of OpenStack isn't open enough or
unsuitable to be an OpenStack project; or
 g) material change or extension to the shared or common understanding of
"Open Core" in relation to deciding if Poppy is or is not open core.

[1] https://review.openstack.org/#/c/273756/
[2] http://www.poppycdn.org/
[3] http://eavesdrop.openstack.org/meetings/tc/2016/tc.2016-02-02-20.01.html
[4] https://wiki.openstack.org/wiki/Poppy
[5] https://en.wikipedia.org/wiki/Open_core
[6] https://wiki.openstack.org/wiki/Open OR
https://governance.openstack.org/reference/opens.html
[7]
https://governance.openstack.org/reference/project-testing-interface.html
[8] Additional requirements exist such as must not install non-free
software in our hosted CI.
[9] https://www.rackspace.com/cloud/cdn-content-delivery-network
[10]
http://stackalytics.com/?project_type=all&release=all&module=poppy&metric=commits
[11] https://github.com/openstack/poppy#features


Best regards,

Cody

-- 
Cody A.W. Somerville
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160206/9fc68926/attachment.html>


More information about the OpenStack-dev mailing list