ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles Scokart" <gscok...@gmail.com>
Subject RE: building only whats necessary with Ivy
Date Thu, 13 Sep 2007 13:49:48 GMT
Note that the view of cruise control evolve slowly.  They have introduced a
veto plugins some months ago, and recently they have made a new step with
this : http://jira.public.thoughtworks.org/browse/CC-680


Gilles

> -----Original Message-----
> From: Xavier Hanin [mailto:xavier.hanin@gmail.com]
> Sent: jeudi 13 septembre 2007 15:37
> To: ivy-user@incubator.apache.org
> Subject: Re: building only whats necessary with Ivy
> 
> This would be a good question for the xooctory user list :-) More comments
> below.
> 
> On 9/13/07, Stephan Zeissler (KUTTIG) <stephan.zeissler@kuttig.com> wrote:
> >
> > I don't think thats a feature of Ivy, more a feature of xooctory. The CI
> > server may parse the ivy.xml files and build a dependency tree from
> > this. So when your projects depends on a library and you build a new
> > version of the lib, all dependent projects get rebuild, too.
> 
> 
> That's exactly what xooctory does (or is about to do, since this feature
> is
> still in developement). Basically some continuous integration servers do
> not
> implement project dependencies at all, and recommend to build your whole
> codebase at once whenever one module in your app change (this is what has
> been recommended with cruisecontrol for a long time). This does not scale
> very well, and you happen to rebuild and retest your whole application
> only
> when a very small subset is changed. Hence some CI servers implement
> project
> dependencies, so that you create one project in your server per module in
> your app, describe their dependencies, then the server takes care of
> rebuilding the right modules depending on your modifications. But then
> when
> you a dependency manager like Ivy, you still have to maintain your
> dependencies in your CI server by hand to keep them in sync with your
> metadata. So the idea is to make the CI server aware of metadata available
> in your modules. That's what the IvyCruise plugin tried to achieve a long
> time ago, but the CC architecture didn't make that easy. So that's what
> xooctory will achieve pretty soon.
> 
> As i dont know xooctory, I dont know how it determines, what has
> > changed, but from hudson I know that you can e.g. pull a scm repository
> > (svn,cvs,..) regularly or start a build via the invocation of an URL.
> > But all this is part of the CI server, not Ivy.
> 
> 
> Indeed. The singularity is that Xooctory considers module dependencies as
> first class citizens in the CI process, as the SCM is. Hudson has pretty
> good support of project dependencies, but you still need to maintain them
> by
> hand as far as I know (at least it was the case when I started the
> xooctory
> project some months ago).
> 
> Xavier
> 
> - Stephan
> >
> > bhatia schrieb:
> > > On the xooctory site, I read this:
> > >
> > > "leveraging Ivy to manage the dependencies between the modules, and
> > rebuild
> > > exactly what is necessary, in the correct order, blocking builds when
> a
> > > dependency is currently building, and so on"
> > >
> > > Can someone provide more inputs/ideas on how to rebuild exactly what
> is
> > > necessary using Ivy ? What are the (best) practices you use to
> determine
> > > what has changed ?
> > >
> > > thanks
> > >
> >
> 
> 
> 
> --
> Xavier Hanin - Independent Java Consultant
> http://xhab.blogspot.com/
> http://incubator.apache.org/ivy/
> http://www.xoocode.org/


Mime
View raw message