On Thu, Aug 11, 2016 at 9:03 AM, Luciano Resende <luckbr1...@gmail.com> wrote:
> > > On Thu, Aug 11, 2016 at 5:42 AM, Robert Metzger <rmetz...@apache.org> > wrote: > >> >> >> @Luciano: So the idea is to have separate repositories for each project >> contributing connectors? >> I'm wondering if it makes sense to keep the code in the same repository to >> have some synergies (like the release scripts, CI, documentation, a common >> parent pom with rat etc.). Otherwise, it would maybe make more sense to >> create a Bahir-style project for Flink, to avoid maintaining completely >> disjunct codebases in the same JIRA, ML, ... >> >> >> > But we most likely would have very different release schedules with the > different set of extensions, where Spark extensions will tend to follow > Spark release cycles, and Flink release cycles. As for the overhead, I > believe release scripts might be the one piece that would be replicated, > but I can volunteer the infrastructure overhead for now. All rest, such as > JIRA, ML, etc will be common. But, anyway, I don't want to make this an > issue for Flink to bring up the extensions here, so if you have a strong > preference on having all in the same repo, we could start with that. > > Thoughts ? > > I have thought more about the question about one combined repository versus separate repositories per platform (e.g. Spark, Flink) and the more I think I believe two repositories will be the best. Think about some of the benefits listed below : Multiple Repositories: - Enable smaller and fast builds, as you don't have to wait on the other platform extensions - Simplify dependency management when different platforms use different levels of dependencies - Enable for more flexibility on releases, permitting disruptive changes in one platform without affecting others - Enable better versioning schema for different platforms (e.g. Spark following the Spark release version schema, while Flink having it's own schema) - etc One Repository - Enable sharing common components (which in my view will be mostly infrastructure pieces that once created are somewhat stable) Thoughts ? -- Luciano Resende http://twitter.com/lresende1975 http://lresende.blogspot.com/