As the number of Mesos frameworks grows (and now, a module system), I think
it's time to create a community-maintained registry with the goal of making
frameworks and modules easier to discover, contribute to, and install.

There's already a JIRA ticket tracking this (MESOS-1759) and I've chatted
with several folks (thanks in particular Victor Vieux, Tom Arnfeld, Vinod
Kone, Timothy St Clair, and Joe Stein). I'd like to advance the
conversation by offering a proposal on the public mailing list.

I imagine two initiatives to achieve this:

1) Shared hosting via a GitHub org. I'm not sure if you're familiar with
how Jenkins maintains their plugins on GitHub [1], but they allow
individual plugins to have their own repo within their GH org. Plugins are
repos with a specific naming convention (in their case, they've appended
"-plugin" to the repo name but this isn't the same approach we'd need to
take). Having a shared GH org creates greater visibility to what people are
doing, and encourages community participation and ownership.

In the case of Mesos, not all frameworks will jump at the chance to have
community hosting which is fine. But particularly for smaller frameworks, I
think this is a good option given the success Jenkins has had. We could
potentially use the existing /mesos github org, or create a new org
/mesos-extensions or something of the like. It seems like the only
potential snag here is that we'll want to be explicit that these aren't
Apache-blessed plugins and instead maintained by the larger ecosystem, but
I believe we can achieve that by offering a notice in the GH org
description.

2) A registry that allows framework writers to publish new versions of
their frameworks to a central repository that could be programmatically
accessed and rendered online. The v1 could be incredibly simple, but I
think this is a foundational piece that can grow with the project in the
future. Since this is a little bit more-involved, I've created a separate
Google Doc [2] to begin drafting the scope for this:
https://docs.google.com/document/d/1sOoPtEyLlST5GTU5iSccqWUsAOlJhf4N9cHoylylYgY/edit?usp=sharing,
and have intentionally punted on some of the implementation details until
the scope is finalized and I gauge interest from users and potential
collaborators.

What do you think? If folks are on board I will assign the JIRA issue to
myself and get to work; I'd also welcome collaborators to help get this off
the ground since I think it will be a boost for the community. Feedback is
welcome!

Thanks,
Dave

[1] https://github.com/jenkinsci/
[2]
https://docs.google.com/document/d/1sOoPtEyLlST5GTU5iSccqWUsAOlJhf4N9cHoylylYgY/edit?usp=sharing

Reply via email to