Leo Simons wrote:
Hi gang,

I've been experimenting with removing the Avalon-Excalibur ant-based dependency mechanism, and instead relying on gump to track the dependencies. This turns out to be pretty easy to do, but it leads to a dilemma: while I want my nightly builds to be done using the-latest-of-everything, I want my releases to be done using the-latest-release-of-everything.
Centipede uses the Gump descriptors to do it.
Centipede uses Krysalis Ruper, that's an Ant task that gets packages from remote repositories. ATM we are using also the MAven repository on ibiblio to minimize duplication.

Basically it checks the dependencies: if a version info is there, it uses that jar; if there is no info it gets the latest jar, unless the project is defined in the descriptor; in this case, it uses the compiled version by resolving compilation dependencies.

Centipede was made with this idea in mind.

This is also easily solved. You need 2 project/profile definition sets, where the new set is definitions where the-latest-release-of-everything is defined just like all the other binary packages. Downloading and installing the latest-release-of-everything prior to building can be rather painful in the java world (it's not like there's .deb files for each project), which is of course why the maven peeps are setting up http://www.ibiblio.org/maven/.

I'm wondering where to go next. Would it be a good idea to copy some of maven's auto-get-this-jar-from-repo functionality to gump, or should gump remain purely focused on integration builds?
If you want to go the Gump-only way, you can use the RuperTask to download that latest jars, set them in the classpath, and run Gump.

IMHO Gump should remain about integration builds, and Centipede used to build a single module. But this is just MHO.

--
Nicola Ken Barozzi [EMAIL PROTECTED]
- verba volant, scripta manent -
(discussions get forgotten, just code remains)
---------------------------------------------------------------------


--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>



Reply via email to