MySQL Build Farm Initiative

The MySQL Build Farm Initiative is a community-driven project which aims to facilitate a distributed, automated testing environment which takes advantage of community member's local machines in order to provide a robust testing envinroment for the MySQL Server and GUI Tools.

If you are interested in participating in the build farm, please take the time to vote on features below, and also sign up on the BuildFarmInventory page to enlist hardware for use in the farm.

Contents

[edit] Benefits

Benefits of a distributed build and testing farm include:

All are welcome to contribute ideas to this document and participate in the process of designing the build farm system.

[edit] Build Farm Scripts

Ronald Bradford has created the initial build farm scripts which pulls the latest snapshots to the host computer and run the build and tests the build. See the below two files:

[edit] Skoll Build Farm Scripts

To participate in the Skoll build farm, get the Skoll community client at [1]. Results are available on [2].

[edit] Needed/Wanted Features

Please signal your vote on features priorities by attaching your login name or full name next to each bulleted point below. Also, please note ideas you have on implementation complexity and/or whether you have experience developing similar features for another project, or whether you know of other projects that have a source code base that can be built upon.

  1. Community Inventory
    1. Web page in Forge in order to have community members register details of boxes which can perform the automated testing pulls
    2. Web page in Forge showing status of the testing on various inventoried machines (see pgBuildFarm Status page as an example)
  2. Script which manages the "pull" from the Farm build server
    1. This should be configurable to accept a simple configuration file and connect to a generic build process running on the farm server.
    2. Farm server should respond with a simple authentication and a status of whether new snapshots are avilable to pull down for testing
  3. Script for running the build process and running the testing framework
    1. Should store results of test in a local file, and upload this file via a web-service call to the farm machine
    2. Recommend an XML file for storing build results; this will encourage generic reuse of the script and allow us to use existing XML parsers instead of writing our own parser for sent data
  4. Script to send results file to farm server
    1. Encryption needed? Authentication definitely needed.
  5. Ability to complete Cluster and/or Replication environment and testing
    1. Would need configuration file to allow build script to use other local machines in the Cluster or Replication scheme
    2. See Ronald Bradford's comment here: [3]


[edit] Overview of the Current Build System

To be filled in as I get more information on pushbuild.

[edit] Thoughts on a Generic Build Farm Project

Sebastian had some thoughts that we should strive to produce a build farm system that is generic enough that other open source projects can use the same distributed system in order to manage automated distributed testing for their own projects. JayPipes think this is a great idea, and any coding we do should have this thought in mind: make the code as modular as possible to encourage flexibility and reuse. This is simply good programming practice.

Ronald agrees, was going to suggest the same thing.

Philip Stoev would also appreciate a compile farm that can be used with distcc.

[edit] Resources

[edit] Software

[edit] OSS Projects using Build Farms

Retrieved from "http://forge.mysql.com/wiki/MySQL_Build_Farm_Initiative"

This page has been accessed 10,109 times. This page was last modified 09:43, 1 November 2007.

Find

Browse
MySQLForge
Main Page
Current events
Recent changes
Random page
Help
Edit
Edit this page
Editing help
This page
Discuss this page
Post a comment
Printable version
Context
Page history
What links here
Related changes
My pages
Special pages
New pages
File list
Statistics
Bug reports
More...