technology project infrastructure (aka "Barn Raising")


This proposal has been withdrawn.

This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process document) and is written to declare the intent and scope of a proposed Technology PMC Project called the Eclipse Technology Project Infrastructure Project (TPI), also know as the "Barn Raising" project. In addition, this proposal is written to solicit additional participation and inputs from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the http://www.eclipse.org/newsportal/thread.php?group=eclipse.technology.tpi newsgroup.

Overview

TPI's focus is to provide an easy to use common infrastructure for Eclipse Technology Projects so that each technology project can focus more on developing and delivering their unique aspects and less on the common tasks of actually delivering Eclipse based technology. This should reduce the sysadmin overhead for each project allowing more technology projects to be better served with fewer resources. Our first goal is to provide hardware and software for a continuous build environment for technology projects. There may be other goals that arise as we proceed or it may turn out that this is the only goal and the project is terminated when the goal has been achieved.

Details

Currently, each Eclipse Technology Project must spend time and energy developing their own infrastructure for building and testing their code. Much of this infrastructure is similar from project to project and should only need to be developed once and reused by all technology projects. Properly configured technology projects would automatically participate in this continuous build process. Our first goal is to configure a continuous build environment including:
  • Cruise Control 
  • an Ant based build infrastructure 
  • a schema based process for validating build scripts 
  • an Eclipse machine for building and testing technology projects 
  • a web, xml, and/or email based interface for reviewing build and test results 
  • an automated process for moving successful builds to the eclipse download server 
  • an example project containing and utilizing all elements of the build infrastructure to continuously "prove" the build system and provide a sample for others to follow

We want this process as "hands-off" as possible, so there are several challenges we face including

  • how technology projects need to be configured to "automatically" participate 
  • what build script validation is necessary before a build 
  • how to detect and recover from runaway builds 
  • how do smaller and larger projects participate together so that larger projects do not dominate the build machine.

Organization

If you are interested in participating, please take part in the newsgroup discussions or ask to be added to the list of interested parties. So far we have:

Naci Dai, Eteration
Bjorn Freeman-Benson, Eclipse Foundation
Mik Kersten, UBC
Pete Mackie, Seaquest
Dan Rubel, Instantiations