Jump to: navigation, search

Common Build Infrastructure/Build Types

Generally, there are 4 types of builds run at Eclipse.

These are:

  • Nightly (N) - run continuously as SVN or CVS changes; generally run from trunk or head.
Continuously really means "will check repository every X minutes and build if required."
See also Snapshot Dependencies
  • Integration (I) - run weekly on schedule
If you are building from a mapfile, you can have Hudson monitor your releng project for changes and only run a build if the maps change; thus these builds will only run when changes are released from HEAD into the map (eg., using the Eclipse Releng Tools plugin to Team > Release).
Or, set Hudson to just run a build once a week from HEAD.
  • Stable (S) - including Milestones and Release Candidates, these are run every 4-6 weeks at the start of a cycle, then weekly as needed at the end of a cycle.
  • Release (R) - once at the end of the cycle.

There is also a 5th type, the Maintenance (M) build, which is essentially a weekly Integration build, but done as maintenance on a branch rather than as integration from trunk or head.

To create these different types of builds, input the following variables into and Athena build / Hudson job:

Nightly

Set the build type to "N", which will disable signing to save time and server resources.

If you want to build from HEAD (or another branch/tag) instead of respecting the values in the map file, use the option below:

BUILDTYPE = N
EXTRAFLAGS = -forceContextQualifier -fetchTag HEAD

Integration or Maintenance

Set build type to "I" or "M", as appropriate.

If you want plugins to all be timestamped with the build's timestamp instead of the unique values from the tags in the map files, set -forceContextQualifier. Generally, this is NOT recommended unless your maps contain "HEAD" or "trunk"

BUILDTYPE = I
EXTRAFLAGS = -forceContextQualifier 

Stable or Release

Set build type to "S" or "R", as appropriate.

Since these builds are stable, they should be built from tags and thus -forceContextQualifier should not be needed.

BUILDTYPE = S
EXTRAFLAGS = -buildAlias 0.2.0M3
 or 
BUILDTYPE = R
EXTRAFLAGS = -buildAlias 0.2.0