cayenne-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <and...@objectstyle.org>
Subject Re: Build failed in Jenkins: cayenne-master » derby,jdk-1.8.0,Ubuntu #74
Date Sun, 09 Nov 2014 12:15:56 GMT
>  It could be that "package" is the minimum phase required in a multi-module build,

Actually that should at least be "verify" phase, as this includes our new integration tests:

http://maven.apache.org/surefire/maven-failsafe-plugin/

Andrus



> On Nov 9, 2014, at 3:10 PM, Andrus Adamchik <andrus@objectstyle.org> wrote:
> 
> We need "clean". It removes "target" dirs within the modules.
> 
>> In jenkins we should not need to clean
> 
> We absolutely need "clean". It removes "target" dirs in each module, and hence this is
the only way to remove the previous build.
> 
>> because the repository is always reset for each build.
> 
> When you start with an empty local repo, Maven downloads all dependencies from a remote
repo. I've never seen it actually happen, except for dependencies introduced by a given commit.
So my assumption that the local repo is reused (and it is actually not affected by "clean"
anyways).
> 
>> Do we need to install so that artifacts built early on are used by other modules
built later?
> 
> In a multi-module project there's a concept of "reactor" that would resolve modules built
in the same run without going to the repo. So unlike "clean", "install" may actually be superfluous.
It could be that "package" is the minimum phase required in a multi-module build, and my preference
for "install" is traced back to the old days of Maven being half-broken :)
> 
> Andrus
> 
> 
> 
>> On Nov 9, 2014, at 12:44 PM, Aristedes Maniatis <ari@maniatis.org> wrote:
>> 
>> On 8/11/2014 11:04pm, Andrus Adamchik wrote:
>>> I noticed our build config was using "mvn -e test". This is not enough to guarantee
a stable build across various types of changes, and is a reason *all* builds were failing
lately, not just some and occsaionally. E.g. the example below runs tests that are no longer
in Git!
>> 
>> That was probably me who put the "mvn test" in there. I've left maven far behind
for all my other work (gradle makes a million times more sense to me), so I'm curiousas to
the difference. In jenkins we should not need to clean because the repository is always reset
for each build. But I'm guessing that 'install' is very different to 'test'. Do we need to
install so that artifacts built early on are used by other modules built later?
>> 
>> -- 
>> -------------------------->
>> Aristedes Maniatis
>> GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A
>> 
> 
> 


Mime
View raw message