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 )@[EMAIL PROTECTED] 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]