> On Feb 11, 2018, at 10:28 AM, Mike Drob <[email protected]> wrote:
> 
> Hi Yetus devs,
> 
> Looking for a bit of guidance on how to properly setup modules for test-patch 
> executions.
> 
> At my day job we were using Yetus for a maven project and accidentally broke 
> our test patch job by accidentally misconfiguring the path to maven binaries. 
> This didn't get caught because the patch was changing the personality file 
> but no java source was changed. So when we tried to be "smart" and 
> "efficient" we skipped all the actual maven steps and didn't catch that the 
> binary was broken until the next patch failed in mysterious ways.

        Did the personality set the maven location?  That's a little unusual.  
Although I guess if Docker is always used and there is no need to run on 
anything but Linux, then the maven location could easily be a fixed point.

> Does it make sense to always run a maven goal? mvn_install? mvn_deps? Not 
> sure what we would actually need. Is this something that we should address in 
> our personality or is this generally useful?

        For big projects, always doing a 'real' maven command is super 
expensive.  It probably wouldn't be too bad to add a 'mvn -v' to maven's 
precheck code though.

> Possibly related - we're still on 0.4.0, so if this same behavior has been 
> fixed by default in a newer version that's an easy solution too.

        YETUS-508 (added in 0.5.0) might have fixed it.  In 0.7.0, I just ran a 
fake patch that only modified a text file with --mvn-cmd=/bin/notreal as an 
option.  It failed with:

        | -1 | maven | 0m 04s | ERROR: maven was not available. 

        in the prechecks phase. That precheck specifically detects if the given 
file exists and is executable. It does not check functionality.

Reply via email to