Jump to: navigation, search

Gyrex/Contributor Guide/Releng

Please read through the following to get a better understanding of how releases are done.

Publishing Builds on download.eclipse.org

Builds get published automatically on download.eclipse.org. However, only I-Builds run automatically once per week. All other builds must be triggered manually.

Hudson: gyrex-latest

For producing development, milestone and major or minor release builds (no service releases).
https://hudson.eclipse.org/gyrex/job/gyrex-latest/

Parameter Description Integration Builds Milestone Builds Release Builds
BUILD_TYPE The type of a build. I S R
BUILD_IDENTIFIER A specific identifier to label the build or empty to generate a default one. (leave empty) upcoming minor release (eg. 1.3) plus suffix (eg. M1, M2, ... RC1, RC2...) without space (eg. 1.3M1, 2.0RC1, ...) major.minor for minor and major releases (eg. 1.3, 2.0); note: see below for service releases
BUILD_BRANCH The branch to build from. should always be master (until instructed/discussed otherwise)
PUBLISH_STREAM The stream this gets published to on download.eclipse.org/gyrex/$PUBLISH_STREAM/... should be the upcoming minor release (eg. 1.3) without last version component, just major.minor


Hudson: gyrex-maintenance

For producing service releases and maintenance builds out of the maintenance branch.
https://hudson.eclipse.org/gyrex/job/gyrex-maintenance/

Parameter Description Integration Builds Milestone Builds
BUILD_TYPE The type of a build. M R
BUILD_IDENTIFIER A specific identifier to label the build or empty to generate a default one. (leave empty) major.minor.service, i.e. exact release version of service releases (eg. 1.3.1, 2.0.1, 2.1.4)
BUILD_BRANCH The branch to build from. should be the "current" maintenance branch (eg. "maintenance/1.3" for 1.3.x builds)
PUBLISH_STREAM The stream this gets published to on download.eclipse.org/gyrex/$PUBLISH_STREAM/... should be the current minor release stream (eg. 1.3 for 1.3.x builds) without last version component, just major.minor


Performing a Release

The following outlines the steps necessary for producing a release.

Pre-Release Steps

  1. Publish a few milestone builds as release candidates (RC1, RC2, RC3 ...)

Release Maven Parent and Target Platform

  1. Update Maven pom.xml and remove -SNAPSHOT version suffix from:
    • gyrex-releng/mavenparent/pom.xml:
      • project -> version
      • project- > properties -> gyrex-target-platform.version
      • Important: if you find any other *.version property in project- > properties containing a -SNAPSHOT suffix you MUST abort here! Revert any changes, then update those versions to the release versions and start again with publishing and testing at least one additional RC (release candidate) build!
    • gyrex-releng/targetplatform/pom.xml:
      • project -> parent -> version
  2. Trigger build of the following Hudson jobs:
    1. gyrex-maven-parent - build and deploy
    2. gyrex-target-platform - build and deploy