Difference between revisions of "RAP/Build"

From Eclipsepedia

< RAP
Jump to: navigation, search
(Milestone/Release Build Check List)
m (Milestone/Release Build Check List)
Line 52: Line 52:
  
 
==Milestone/Release Build Check List==
 
==Milestone/Release Build Check List==
* tag CVS: tag everything contained in the technology/org.eclipse.rap module. You may need to increase the CVS connection timeout in Preferences -&gt; Team -&gt; CVS -&gt; Connection tab (120 Sec seem to work)
+
* tag CVS: tag everything contained in the rt/org.eclipse.rap module. You may need to increase the CVS connection timeout in Preferences -&gt; Team -&gt; CVS -&gt; Connection tab (120 Sec seem to work)
 
* update help
 
* update help
 
* update default target path in intro plug-in
 
* update default target path in intro plug-in

Revision as of 07:32, 21 January 2009

Contents

Release Engineering

With RAP we have two different builds in place: one for the target and one of the tooling. The build for the tooling heavily relies on the other build as we need to bundle the target into in the intro plugin and also need the sources for generating the help contents (like javadoc or extension point documentation).

Setup the build

The target build script resides in the org.eclipse.rap.releng bundle which can be found in CVS. What you need to do to setup a new target build is to checkout the releng plugin, download the eclipse sdk (at least platform+pde) for 3.2 and 3.3 and unzip them into a directory. Furthermore you need to modify the build.properties to point it to the right directories of your eclipse installations.

Starting the build

In order to start the build, you need to execute the pde build antscript by providing different parameters like which releng project to use and other options to control the output name (build type, version, etc). A sample script could look like this:

#!/bin/bash
export buildbase=/home/rapbuild/releng
cd /home/rapbuild/releng/build-platforms/3.3/plugins/org.eclipse.pde.build_3.3.0.v20070612/scripts
java -cp ../../org.eclipse.equinox.launcher_1.0.0.v20070606.jar:../../org.junit_3.8.2.v200706111738/junit.jar \
org.eclipse.core.launcher.Main -application org.eclipse.ant.core.antRunner \
-Dbuilder=`echo $buildbase`/org.eclipse.rap.releng/ -DbuildId=`date +%Y%m%d-%H%M`\
-Dbuild.base=`echo $buildbase` -DtargetVersion=1.0.1 -DbuildType=N \
-DoutputDirectory="`echo $WORKSPACE`/targets" $1
Name Description
builder Which Builder to use (releng project in our case)
buildId build id to identify the builds
buildType which type the build is (N/I/R) - only used for labeling the output
build.base path to the root of our build. will be used for building and output of the build

After executing the script you'll find a new build of the target platform in the build.base/targets directory.

Building new version

  • update targetVersion paramter of the build script
  • update bundle manifest with the new versions

Adding new bundles

  • add them to one of the features
  • update the map file with the name and path to the plugin

Help

Adding new packages to javadoc

  • add reference in toc.xml of the help plugin

Adding new extension point description

  • add reference in toc.xml of the help plugin

Milestone/Release Build Check List

  • tag CVS: tag everything contained in the rt/org.eclipse.rap module. You may need to increase the CVS connection timeout in Preferences -> Team -> CVS -> Connection tab (120 Sec seem to work)
  • update help
  • update default target path in intro plug-in
  • update release train files (e.g. Ganymede/Signoffs)
  • notify newsgroup and mailing list
  • finalize new & noteworthy
  • update web site: new & noteworthy, download
  • scan Bugzilla for bugs that are still open but solved, verify target version of closed bugs
  • update infocenter content and links to infocenter from project home page (release versions only)