Jump to: navigation, search

Difference between revisions of "CDO/Release Engineering"

< CDO
(The Releng Component)
(Adding dependencies to the target platform)
Line 15: Line 15:
 
[[Image:releng-files.png|640px]]
 
[[Image:releng-files.png|640px]]
  
=== Adding dependencies to the target platform ===
+
=== Adding components to the build ===
  
Buckminster deduces the overall set of the needed dependencies
+
Buckminster calculates the overall set of the needed components through the ''buckminster.cspec'' file. The ''org.eclipse.emf.cdo.site'' feature defines the content of the produced p2 repository (build output). This top-level feature in turn includes all the other CDO and Net4j features and their included bundles. The remainder of the dependencies list specifies additional components that are to be materialized in the workspace or the target platform but that are not meant to become part of the build result (i.e. the site feature and the related p2 repository).
 +
 
 +
Hence there are two ways of adding components. Either add them directly to an existing source feature or bundle in the workspace (no need to update a releng file then) or add them to the ''buckminster.cspec'' file in the releng component.
 +
 
 +
If you add to either one make sure that the new component is found with the specifications in the ''build.rmap'' file!
  
 
== The Hudson Jobs ==
 
== The Hudson Jobs ==

Revision as of 08:23, 6 May 2010

Introduction

The CDO project produces consumable builds for two separate streams. The integration stream build relates to the HEAD development and the maintenance stream build relates to the CVS branch (currently R2_0_maintenance) that always gets forked from HEAD after the yearly GA release. The builds are defined in terms of a Buckminster releng component and are executed by two Hudson CI build jobs.

This article is not meant to be a complete description of the various used concepts from Buckminster and Hudson. It's rather supposed to be an ongoing work to record the experiences with these builds and the actions taken to address particular issues.

The Releng Component

The CDO releng component is the org.eclipse.emf.cdo.releng project in your workspace if you followed CDO Source Installation. There are versions for both streams in CVS. The HEAD version looks roughly like this:

Releng-component.png

The remainder of this section lists some typical releng tasks that lead to modification of one or several of the files in the releng component. Here is an overview of how they relate to each other:

Releng-files.png

Adding components to the build

Buckminster calculates the overall set of the needed components through the buckminster.cspec file. The org.eclipse.emf.cdo.site feature defines the content of the produced p2 repository (build output). This top-level feature in turn includes all the other CDO and Net4j features and their included bundles. The remainder of the dependencies list specifies additional components that are to be materialized in the workspace or the target platform but that are not meant to become part of the build result (i.e. the site feature and the related p2 repository).

Hence there are two ways of adding components. Either add them directly to an existing source feature or bundle in the workspace (no need to update a releng file then) or add them to the buckminster.cspec file in the releng component.

If you add to either one make sure that the new component is found with the specifications in the build.rmap file!

The Hudson Jobs