FYI - Here is a POC build of this concept running.  This only runs the
Parser and Enrichment integration tests, but as separate jobs in Travis.

https://travis-ci.org/nickwallen/metron/builds/535791047




On Wed, May 22, 2019 at 9:20 AM Nick Allen <n...@nickallen.org> wrote:

>
> > Justin Leet said
> <https://github.com/apache/metron/pull/1417#issuecomment-494464795> [1]: 
> Looking
> at our build times, I'm actually concerned that if we kill the caches our
> builds won't complete. The integration tests take >45 minutes and it's very
> possible redownloading everything goes over our remaining time.
>
> To recap, our current Travis CI build is composed of multiple jobs. Travis'
> time limit of 50 minutes
> <https://docs.travis-ci.com/user/customizing-the-build/#build-timeouts> [2]
> is per job, rather than the total build time.  While our total build time
> is on the order of 2.5 hours, it is only our integration-test job which is
> coming close to that 50 minute limit.
>
> We could try splitting our integration tests into multiple jobs.  Each of
> these would have the opportunity to run in parallel (given whatever
> resources Travis can allocate to us), but more importantly each one has its
> own 50 minute limit. For example...
>
>    - Parser Integration Tests:
>       - `time mvn surefire:test@integration-tests -pl
>       "metron-platform/metron-parsing/metron-parsing-storm,
>       metron-platform/metron-parsing/metron-parsers,
>       metron-platform/metron-parsing/metron-parsers-common/"`
>    - Enrichment Integration Tests
>       - `time mvn surefire:test@integration-tests -pl
>       
> "metron-platform/metron-enrichment/metron-enrichment-common/,metron-platform/metron-enrichment/metron-enrichment-storm"`
>    - etc, etc
>
>
> We would just need to determine how to logically split the tests up.  If
> this sounds reasonable, I've already got a start on a POC.
>
> ---
> [1] https://github.com/apache/metron/pull/1417#issuecomment-494464795
> [2] https://docs.travis-ci.com/user/customizing-the-build/#build-timeouts
>

Reply via email to