gump-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Leo Simons <leosim...@apache.org>
Subject Re: Dedicated build machines?
Date Wed, 04 Jun 2003 14:53:04 GMT
Berin Loritsch wrote:
> How long does it take to have a GUMP run go?

on a desktop-class duron 1ghz / 256MB 266DDR / UDMA1000 7200rpm / red 
hat linux / 100mbit / sun jdk1.4.1 machine, it takes about 3 hours to 
rsync and copy over all the cvs modules, then it takes about 4 hours to 
perform all the builds.

> In an ideal world, I would like to be able to get GUMP build results
> every four hours.

yep. what would be better still would be having them available nearly 
instantly. Need to figure out whether a change in X affected Y?

---
ssh buildfarm.apache.org
gump update X
gump update Y
build X
build Y
---

and get near-instant results. The cocoondev machine currently sort-of 
provides functionality like this.

Imagine all you need to do is:

wget http://jakarta.apache.org/go-gump | sh

***********************************
* Setting up Gump on your machine *
***********************************

You need approximately 5GB to host a full gump install. Where should we 
install gump?

	~/gump

Would you like to schedule a daily gump run using crontab?

	yes

Would you like to publish the results of this run?

         yes

Gump uses rsync to upload these results to a central webserver. Please 
type the rsync url to upload to.

	rsync://cvs.apache.org/gump-results/

At what time should the gump run start?

	3 am

We are now ready to install. Hit enter to continue.

working...

Setup should take only a minute. After that, you can type `gump update 
all` to perform CVS checkouts of all materials managed by gump, and 
`gump get-binaries` to get all binary packages you will need to build 
those matierals. This process can take several hours.

...all done! See the file ~/gump/docs/get-started.html for basic usage 
instructions.

---

Something like this is far from impossible.

> The major problems with that approach are the
> major thrashing of the hardware (hard drive wear and tear) and access
> to hardware dedicated for the purpose.

yep.

> The major advantages are that
> the hardware does not need to be serving internet content, and can
> make connection only when it needs to rsync the results.

yep.

> I guess a corrolery to the question of how *long* the build takes is
> how much space do the builds take?

about 4GB on my machine atm.

> Such a continuous integration
> machine can save a lot of time and hardware thrashing if it used a
> RAM drive to do the actual builds--since we are only interested in
> the results anyway.  Perhaps use the /tmp directory bound to a RAM
> drive and do individual builds there, extracting all the important
> stuff and then clearing out all the build byproducts we don't need.

this requires knowledge of what is important stuff and what is not. At 
the moment, gump just leaves the results of running ant where you put 
them, sometimes copying some of those results if you tell it to. Note 
you'd need a lot of RAM -- some projects are quite big :D

> Of course this defeats the purpose of getting GUMP to work on any
> one person's machine.

I don't think so. It should be easy to get gump to run. It should then 
also be easy to make the results of your gump runs available :D

cheers!

- Leo



Mime
View raw message