In anticipation of more UI work starting (Alerts UI specifically), I want to kick off a discussion about how we can best provide a backend for UI developers to code against. I believe our full dev environment will not work for this because:
1. It has become more resource intensive over time and requires constant tuning to make it stable. 2. Takes a long time to build. I think this will eventually lead to UI developers building less often and not being current with master. 3. UI developers will likely not have experience with big data projects and should not be required to manage a full metron VM install locally. I think we need something more lightweight that only includes components needed for UI development. Here are what I think are the requirements for this: 1. Must include the REST component as this is how the UIs interact with Metron 2. Should also include Search (ES or Solr), Kafka, HBase and Zookeeper since REST depends on these (am I missing any?). 3. Should be portable such that it can be run locally or in a shared environment like AWS 4. The environment should always contain the latest version of master There is currently work being done to externalize our integration test infrastructure (https://issues.apache.org/jira/browse/METRON-1352) that I believe can also be leveraged here. Are there other options or approaches people can think of? What's the best way to provide an environment that's easy to spin up and always current with master?