Common Build Infrastructure

The project has been approved and is awaiting provisioning.

Common Build Infrastructure

The Common Build Infrastructure (CBI) project is a proposed open source project under the Technology Project.

This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the Eclipse community. Please send all feedback to the Eclipse Proposals Forum.

Background

The Eclipse Foundation hosts a large number of projects. Historically, each project has implemented their own build system from scratch with mixed results. We believe collaboration around a common set of software production technologies such as build, testing, and similar can have a positive effect on Eclipse projects.

Scope

The Common Build Infrastructure (CBI) project maintains and develops software production technology common to multiple Eclipse projects.

Goals:

  • Make it really easy to build Eclipse projects
  • Make it easy to automate build and testing tasks
  • Make it really easy to sign jar files and other artifacts
  • Make it easier for new projects to set up their build
  • Continually improve the quality of builds at Eclipse

It is important to differentiate between common and universal. CBI does not abstract all build systems or rarely needed features. If something is used by one and only one project, it is unlikley to be included as part of CBI.

Once multiple projects are using a given technology something, then it may become a candidate for inclusion into CBI if doing so brings benefit to CBI and projects using it.

The following components are examples of technology that is within the scope of CBI:

  • Jar signing service
  • Operating system signing service
  • Common Maven plugins used for Eclipse builds
  • Common Eclipse license files

Description

The Eclipse Common Build Infrastructure (CBI) combines technologies and practices for building Eclipse Software.

Why Eclipse?

Given the Eclipse-focused background and scope, creating CBI as a project itself hosted at the Eclipse Foundation is very natural. CBI makes setting up and maintaining project builds easier. Creating the CBI project allows people to contribute to CBI on equal footing and hopefully will assist in growing a community for CBI over time.

Initial Contribution

CBI code is licensed under a mix of EPL and EDL code. For example:

  • Data, notably the pom.xml files are EDL
  • Code is EPL e.g. the jar signer

The headers in each file denote the license.

Copyright for the CBI project's initial contribution is held by the Eclipse Foundation, SAP, IBM, and Red Hat.

The initial contribution is hosted by the Eclipse Foundation already at the following URL:

Legal Issues

We do not believe there are any legal issues lurking in CBI.

Committers

The following individuals are proposed as initial committers to the project:

Thanh Ha, Eclipse Foundation
Thanh is a committer on the CBI project where he has made significant contributions over the past year. He will be developing and maintaining: the signing service; the operating system signing service; and Maven plugins.
Paul Webster, IBM
Paul Webster is a power user and periodic contributor to CBI. He was a significant contributor to the efforts to deploy CBI for The Eclipse Platform project.
Krzysztof Daniel, Red Hat
Krzysztof is a power user and periodic contributor to CBI. He was a significant contributor to the efforts to deploy CBI for The Eclipse Platform project and the Fedora Linux distrubution's Eclipse build.
David Williams, IBM
David is a power user and periodic contributor to CBI. He was a significant contributor to the efforts to deploy CBI for The Eclipse Platform project.
Denis Roy, Eclipse Foundation
Denis was the original author of the signing service and plans to continue developing it.

We welcome additional committers and contributions.

Mentors

The following Architecture Council members will mentor this project:

  • Gunnar Wagenknecht
  • John Arthorne

Interested Parties

The following individuals, organisations, companies and projects have expressed interest in this project:

  • Andrew Ross, Eclipse Foundation
  • Gunnar Wagenknecht, Tasktop
  • Lars Vogel, vogella GmbH
  • Alexander Kurtakov, Red Hat
  • Mickael Istria, JBOSS by Red Hat
  • Toni Menzel, rebaze GmbH
  • Wim Jongman, Remain Software
  • Stephan Leicht Vogt, Business Systems Integration AG
  • Pat Huff, IBM
  • Jutta Bindewald, SAP
  • Jochen Krause, EclipseSource
  • Paul Lipton, CA Technologies

Project Scheduling

Changes to this Document

Date Change
DD-Month-YYYY Document created