Termite

From Apache OpenOffice Wiki
Revision as of 00:17, 8 November 2006 by Smsm1 (Talk | contribs)

Jump to: navigation, search

Termite is the going to be the successor to both the Tinderbox and the buildbot. The best of both world into the new system. There will be a cluster and community builders. This page is to gather requirements for Termite. The requirements will be put under headings for each user group.

Requirements Gathering

User Groups

Who is going to use Termite?

What are their needs?

Cluster Users

A large array of machines that repeatedly build ooo from dirty CWSes.

Community Builders

Have their own machines for the more exotic build setups or testing of new Termite features.

  • Have a list of available CWSes that can be built on the build page
  • Build pages like http://ooo-staging.osuosl.org:8010/MacPort1/builds/50 should have the times that each part of the process was started/finished
  • The ability to get the mean, max, min, mode, median and and other daft statistical measures for the build times of the induvidual buildbots.
  • Be able to tell you which module is currently being compiled. n of m, where n is the current module and m is the total number of modules to be compiled.
  • Be able to say why a buildbot is offline (software update, machine in use for something else)
  • Better detection of connection and disconection
  • Ability to queue builds (when a machine is off-line)
  • Ability to apply a specific patch, without it being included in on a specific CWS (primarily for initial testing before a commit)
  • Ability to see information about a buildbot when it is off-line)

Testers

Checks if builds work properly

  • needs to get a hold of builds when they are unable to create builds themselves.
  • when a build has failed, the ability to attach notes to the build, such as why the build failed and related issue numbers in the issuezilla, would prove beneficial when the Termite network get put in to full use.

Coders

Write code which is usually placed into a CWS

  • needs to check that their code will compile/run on other OSes.
  • run the test suite on any platform.

Feature Wishlist

  • should not depend on permanent connection to a buildmaster
    • should allow for self-contained buildslaves (slave decides what to build & when to build)
    • should allow to just send the buildlogs via email
    • should allow the use of rsync or similar to send the log information, thus allowing a drop in the connection, whilst allowing the live logs when there is a connection.
  • should offer a way to manage buildclusters
    • should allow to remotely start builds on a set of buildslaves
    • should offer a way to specify additional configure/build flags
  • should present the build-results on a per cws-basis
    • should be easy to tell whether a cws was built successfully or not and on what hosts it failed/succeeded
    • should be able to flag CWSs as "dirty" (i.e. commit was made after the build was started)
    • should optionally offer a CVS/Bonsai integration for a commit-history for that cws (similar to tinderbox)
  • should present the buildlogs in a summarized way
  • should offer to display statistics about a build (buildtime, ...)
  • Ability to add notes about a build
  • Ability to attach issues to a build
  • Ability to see what the pending build(s) is/are

UML/Images

File:TermiteUML.png File:TermiteDataTransfer.png

Personal tools