Details
-
Improvement
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
None
-
None
-
None
Description
We have a great many examples and tests in REEF, all of which we'd like
to maintain in runnable form for all runtimes (local, YARN, HDInsight,
Mesos, ...). Also, we shouldn't impose undue dependencies, e.g.
depending on YARN libraries when all we want is to run locally, for
instance.
Right now, this melange of goals and challenges is poorly reflected in
the project structure. For instance, reef-examples and reef-tests both
depend on reef-runtime-yarn and reef-runtime-local. Yet, we have
reef-examples-hdinsight to capture that dependency separately.
Based on the discussion on the mailing list, I propose the following change: Create sub-projects in reef-examples and reef-tests: one
with the core code, and one per runtime that captures the dependency on
that runtime as well as the launch code on that runtime. This makes it obvious what we expect from new integration
tests and examples.