harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geir Magnusson Jr. <g...@pobox.com>
Subject [build-test-infra] Build Test Infrastructure
Date Mon, 10 Jul 2006 15:25:11 GMT
Aside from being distracted by my new macbook pro dual core intel  
wonderbox, I was playing with seeding a build/test/ci infrastructure,  
and want to solicit comments before I check in something.

I call this a seed because I know there's a lot of interest in a  
richer framework for perf/stabillity/unit testing, code coverage,  
etc, and the key is to make it easy for anyone to get, and propose  
additions to...

The top-level goal was to have something that anyone can checkout, do  
some minor configuration, and get running, so we can have a rich  
platform matrix for Harmony testing that's community-based.  Sure,  
we'll run it on Apache hardware too at some point, but it must be  
community owned, community created, etc, with the Apache instance  
just one in the matrix.

I figure that we'll have :

1)  some infrastructure you can checkout and run

2) a target mail address/list for result/status messages that we  
accept from anyone in the community that "registers" with us (IOW,  
people write in and say they are doing it on platform XYZ, and we add  
them....)

3) Some kind of system that gathers the info and presents a status  
page on the website so people can review history and such.

I had a few soft 'requirements' in my head when I started....

1) I wanted to be able to build a system so that for the most part

      svn co https://......./enhanced/buildtestinfra

will get you everything you need to run.

2) I wanted to  be able to parameterize the ci/test run  via some  
kind of  external properties  in order that everyone is running the  
same test config.  Examples of these parameters include the platform  
you are testing on (RedHat Fedora Core v1.1), mail information like  
return address, mail server to send through, etc...

3) I want it to be flexible so whatever comes down the pike can be  
incorporated.

I looked at both continuum and cruise control.  Both seem to be  
glorified CRON programs, with the point of just running a set of  
tasks over and over and reporting on them.  I went back and forth and  
decided that for what I wanted to do, cruise control seemed a better  
fit.  It let me do things like create dependencies between projects  
(only run B if A completes successfully), and seemed to be easier to  
run our projects  as they are, w/o needing special kick-off scripts  
and such.

My goal is to check in later today after some nips and tucks.  It's  
simple, it's primitive, and because I don't know cruise control very  
well, it's probably wrong.    But it's been working all weekend, and  
aside from the fact that my )@#!@# ubuntu box is under enough weird  
memory stress that fork() fails, it's cute to watch.

So first, does this sound reasonable?

Second, what approach should we take for recording and summarizing  
across a whole range of people running this?  I'd like to keep the  
mail stream coming, as I think that's a great way to permanently  
track.  But  based on that... maybe a little impl of James or  
something running on a solaris zone that eats email and writes to a db?

geir


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message