Hello,

This is my first post to the list and I am very new to mvn/continuum
world.

We are currently using mvn snapshot features but I think we  are not
using it properly. I want to move building of snapshots to build
integration machine where continuum runs and I have few questions about
how Continuum would go about building snapshots.

 

Lets say, I have 

artifacts: webapp, webutil, util, common. - all these components are in
active development.

webapp depends  on webutil, util, common

webutil depends on util, common

util depends on common.

 

The goal is to make sure that snapshots are updated properly recursively
when change happens to a certain snapshot. And all pieces of the
application are using same versions of snapshots.

 

1.      To make sure every artifact depends on same version of
dependencies, parent  pom.xml will have 

dependencyManagement>

<dependencies>

<dependency>

<!-3rd party ->

<groupId>commons-logging</groupId>

<artifactId>commons-logging</artifactId>

<version>1.0.4</version>

</dependency>

<!-internal->

<groupId>company.com</groupId>

<artifactId>webutil</artifactId>

<version>1.0.0-SNAPSHOT</version>

<groupId>company.com</groupId>

<artifactId>util</artifactId>

<version>1.0.0-SNAPSHOT</version>

<groupId>company.com</groupId>

<artifactId>common</artifactId>

<version>1.0.0-SNAPSHOT</version>

</dependencyManagement>

 

2.      to make sure that snapshots are build using controlled
environment, lets say continuum is used to build them. So, my questions
are: 

 

Will continuum rebuild ALL snapshots every time it makes a build?
(hourly, per say). 

a) If "yes", how does it know the order in which snapshots have to be
generated? (common first, util, webutil, webapp) - the order is very
important since if there is a change in common, util has to be compiled
against latest common classes.

Also, it seems to me that repository will get filled up very quickly
with identical snapshots for same component and each developer's machine
would have to sync new snapshots every time it checks with repository

 

      b)If  continuum is smart enough to create new snapshot only when
there has been code changes in src of particular module, does it know
that snapshots depending on that module have to be regenerated also?

 

3. if continuum does not have the answer for the problem/questions to 2.
can someone recommend the alternative solution/intergration server that
would ensure that snapshots are being incrementally deployed only when
and in the right dependency order? (if change has been done in util
module there is no need to redeploy common snapshot but there is a need
to redeploy webutil once util snapshot is ready)

Thanks

Leonard

 

Reply via email to