DSpace/DSpace — pull request #648 by tdonohue (2014-09-15 20:15:34+00:00)
Title: More Travis CI build fixes related to DS-2133

Travis CI continues to randomly "kill" some of our builds (ever since merging #637). However, from my tests, disabling the Mirage2 build also doesn't fully work either -- we still get "Killed" messages at times. According to Travis CI, this is probably a Memory-related issue:

http://docs.travis-ci.com/user/common-build-problems/#My-build-script-is-killed-without-any-error

After some testing, I've seemingly narrowed it down to the DSpace assembly process (specifically when we build the "dspace-installer" folder itself). Sometimes Travis will perform this step fine, and other times it will return a "Killed" message. My guess is the more modules we have, the more processing/memory that assembly takes.

This PR reworks our Travis tests slightly to try and decrease the frequency of these "Killed" messages (I'm still not certain that they will disappear entirely though).

Essentially, this PR does the following:

1. Decreases the MAVEN_OPTS memory setting to just 1GB. It doesn't seem to really need more than that, and I don't want Java reserving too much of the total of 3GB that Travis allows us.
2. Reworks the Travis build & test into two separate steps:
i. First, run all Unit Tests for all source code modules (via a `mvn install`), but SKIP the final "dspace" assembly step
i. Second, run the "dspace" assembly from the `[src]/dspace/` folder. Retry this step if it fails the first time (as this is the step that throws the "Killed" messages).

In order to achieve this, I had to also make some minor modifications to the `assembly.xml` (mostly I tried to clean it up, and ensure it wasn't matching *too many* modules, which could cause memory issues), and the `testEnvironment.xml` (to ensure that we could SKIP building "dspace" while also running our Unit Tests).