[OPEN-ILS-DEV] Announcing the OpenILS Buildbot
Shawn Boyette
sboyette at esilibrary.com
Tue Nov 24 17:51:03 EST 2009
It's alive! You can have a look-see at:
http://testing.esilibrary.com/
The web bits are pretty self-explanatory. From the front page, either
click on the "Last build" of a project to examine the full output
generated by that build, or click on "History" to see an overview of all
stored builds for a project. (And from there you can drill down to the
individual build of your choice.)
Note that the database this is running on at the moment is the same one
it was developed and tested on, so it contains a lot of duplicate data
at the beginning, and it will be emptied out in the near future.
JSON API
------------------------
The web front-end is ajaxy, and consumes JSON data. If you wish to write
yourself something that consumes the same data, it's easy to do via the
RESTful API.
The root of the URL for the JSON service is:
http://testing.esilibrary.com/bbdata/
after this comes:
COMMAND - What you wish to do
PROJECT - What you with to do it with
ARGS - Any number of command-specific arguments
There are currently 4 commands: lastbuild (basic info about the last
build), lastsuccess (basic info about the last *successful* build),
summary (basic info about *all* known builds), and build (full dump of
data for a specific build).
Each returns data in the same *basic* format, but varying in payload
(full API docs will be available on the testing site within 24 hours).
There are currently 2 projects: openils and opensrf.
So here are some sample URLs:
http://testing.esilibrary.com/bbdata/lastbuild/opensrf
http://testing.esilibrary.com/bbdata/summary/openils
http://testing.esilibrary.com/bbdata/build/openils/15020
Only "build" takes an argument: the desired build/revision number.
EMAIL NOTIFICATION
---------------------------
The back-end of the buildbot can send you email anytime a build for a
specific project succeeds or fails (or both). There is no way to sign
yourself up for this right now, so just let me know if you'd like to get
mail from the bot, which project you want it for, and whether you want
to know about successes or fails.
IRC NOTIFICATION
---------------------------
Still planned, but will be on a back burner.
NIGHTLY TARBALLS
---------------------------
Should be happening this week. Early ones might be not-quite-right;
feedback will be appreciated. Strictly speaking, these won't be
"nightly", they'll be "generated every night from the last successful
build",
BUILDBOT SOURCE
---------------------------
There is some light cleanup to be done, and then if anybody wants it,
they can have it.
There's nothing in this system which is particular -- or in fact, knows
anything about -- Evergreen. It's a complete generic, if perhaps
simplistic, continuous integration system.
The forthcoming docs will go into its design in some detail.
FUTURE PLANS
---------------------------
This is likely the only "push" the buildbot will ever get, but I do have
plans to refine and update it beyond its capabilities at this moment.
The database layer is abstracted, but at the moment has only one backend
(MongoDB). I plan to write a SQLite driver for it as well.
The VC layer is *not* abstracted, and should be. Once it is, at I'd like
to write a git module to accompany the existing SVN one.
Related to that, I'd really like to capture commit messages, but that
looks like a mildly hairy problem and I let it go for the time being.
I'd really like to make it be smarter about tests and have some
integration/processing of test output instead of just capturing that output.
Ideas (and, eventually, patches) welcome.
--
Shawn Boyette
<sboyette at esilibrary.com>
Testing and Reliability
Equinox Software, Inc.
More information about the Open-ils-dev
mailing list