ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Turner <j...@socialchange.net.au>
Subject Re: Help getting started with GUMP
Date Tue, 16 Apr 2002 06:43:35 GMT
The alexandria-dev list is more appropriate for Gump questions, but
anyway..

Gump is good for things like nightly runs, but not something you'd want
to run before every commit. When running Gump, you can't just type
"./build.sh foo" and expect that all foo's dependencies will be first
checked. The nearest approximation you can make is to trim down the Gump
profile to just one project and it's deps, and then do "./build.sh all".
Tracking down all the dependencies, and pointing Gump to their files if
you don't want them downloaded via CVS, is a slow error-prone process.

Alternatively, you could use the system in Avalon's Excalibur project
(http://jakarta.apache.org/avalon/excalibur/). There, you can type 'ant'
in any project, and that project's dependencies will be recursively
built (if a build is needed). Each project has a "dependencies" target
listing it's dependencies:

<target name="dependencies" description="Check dependencies">
  <ant antfile="../depchecker.xml" target="checkPool"/>
  <ant antfile="../depchecker.xml" target="checkLogger"/>
  <ant antfile="../depchecker.xml" target="checkJUnit"/>
  ...
</target>

The depchecker.xml file contains a library of dependency checks. The
'checkPool' check might see if the ${excalibur-pool.jar} variable points
to a real jar, and otherwise build the ../pool project (which in turn
checks/builds it's deps). The 'checkJUnit' check might just print a
message saying "download junit". You can even do HTTP GETs of jars :)
depchecker.xml is self-contained and mostly reusable; see:

http://cvs.apache.org/viewcvs/~checkout~/jakarta-avalon-excalibur/depchecker.xml?rev=1.15&content-type=text/plain

Eventually, I hope the Maven project
(http://jakarta.apache.org/turbine/maven/) will include recursive build
functionality like this.

HTH,


--Jeff

On Mon, Apr 15, 2002 at 04:58:41PM -0500, Dominique Devienne wrote:
> Hi,
> 
> I would like (need!) to integrate multiple projects using GUMP, and I'm
> having trouble getting started from just the GUMP page of Alexandria. And
> Jakarta is so big, it's daunting to try starting from this (unique as far as
> I know) example / implementation of GUMP.
> 
> Most of these projects are Java, with an ANT build running, and a very few
> of them have CruiseControl going. Inter-dependencies of the projects is
> ad-hoc though, with some projects using a (sometimes old) release of their
> dependencies, others using the latest, and running into trouble 'cause
> broken by their dependencies, etc... In short, it's a mess quickly getting
> out of hand (IMHO). At least the dependency tree as no loops...
> 
> Before I'm kindly asked to RTFM, I would appreciate any experiences,
> insights, advises, or whatever you could tell me regarding implementing a
> GUMP build. Things I'm pondering include:
> *	Should each developer do a full gump build before commits?
> *	What do individual projects use to compile dialy wrt their
> dependencies? Nightly build, fixed version?
> *	What's the status of ANTGUMP vs. GUMP?
> *	Am I crazy to even attempt this?
> 
> Thanks, --DD

--
To unsubscribe, e-mail:   <mailto:ant-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-dev-help@jakarta.apache.org>


Mime
View raw message