Jump to: navigation, search

Tigerstripe Release Engineering

< To: Tigerstripe

Overview

The Tigerstripe Release Engineering was assembled based on the Eclipse Automated PDE build Environment. The process was extended to build a "Download Site" descriptor that will drive the content of the main Tigerstripe download page (.php page).

Cisco is hosting a build server that runs a Hudson build environment and builds a number of artifacts nightly.

The result of each build is optionally uploaded to either one of

  • the "Download Site", i.e. the main downloads page for Tigerstripe, using the Eclipse mirroring mechanism.
  • the "Tigerstripe Update Manager" [1] which contains the latest Tigerstripe releases.
  • the "Tigerstripe Interim Update Manager" [2] which contains stables builds.
  • the "Tigerstripe Un-stable Update Manager" [3] which contains nightly, and integration builds.

The Download Site

Similar to usual concept of an Update Manager site in Eclipse we have defined a "Download Site" descriptor that drives a set of .php pages automatically. The Download Site is specified through a "downloads.xml" file that resides on the Eclipse website (in the Tigerstripe project section) and contains all details about published builds.

The main features of our Download Site are the following:

  • A Download Site hosts a number of builds of multiple type (R, M, I, N) organized in multiple streams.
  • Each build optionally contains the following
    • a set of components, themselves containing a set of downloadable bundles. Components can be used for SDK vs. runtime, or any other arbitrary grouping.
    • a set of dependencies, such as required plugins, eclipse version requirement, etc.
    • a set of Build Details, where build logs, JUnit results can be made available.

Ultimately a build is uniquely identified by a triplet: {stream, type, timestamp}.

Ant integration

In order to create/update the download site descriptor (downloads.xml) automatically during builds, we have developed a set of Ant tasks that can be used from the Eclipse PDE build Ant scripts. This allows to assemble, update and publish builds automatically so that they can be picked up by the downloads .php page.

For more details about this check out our plugins/org.eclipse.tigerstripe.releng project in the technology/org.eclipse.tigerstripe CVS repository.