Jump to: navigation, search

Difference between revisions of "Corona/Releng/Build"

< Corona‎ | Releng
(Results of successful build process)
(Stages of the build process)
Line 46: Line 46:
 
*process - compiling sources, coping results to build output directory or creating jar files containing the build output
 
*process - compiling sources, coping results to build output directory or creating jar files containing the build output
 
*assemble - creating zip archive containg all build results
 
*assemble - creating zip archive containg all build results
 +
 +
== Useful links concerning eclipse build process ==
 +
*[http://www.eclipse.org/articles/Article-PDE-Automation/automation.html Build and Test Automation for plug-ins and features]
 +
*[http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.releng.basebuilder/readme.html?rev=HEAD Automating Builds with PDE BUILD]
 +
*[http://wiki.eclipse.org/index.php/Platform-releng-faq RelEng FAQ]

Revision as of 04:57, 24 May 2006

Eclipse Home Wiki Home Development

Installation and configuration of headless automated build process for Corona

For headless build the infrastructure provided by the PDE and the RelEng (Release Engineering) plugins is needed. To create an environment needed for the build process the seperate org.eclipse.releng.basebuilder plugin is sufficient however the Eclipse SDK can be used as well (Corona requires 3.2 version of Eclipse environment).

Build prerequisities

  • CVS client version 1.10 or higher on system path
  • Info-Zip zip and unzip executables on system path
  • JDK 1.4.x (or newer) installation

Steps required for setting headless build platform

  • checkout Corona build scripts and configuration:
   cvs -d :pserver:anonymous@206.191.52.50:/cvsroot/technology export -r HEAD org.eclipse.corona/build

 after running cvs command the following files are fetched to ${baseDirectory}/org.eclipse.corona/build directory:

  1. run.bat/run.sh - script starting an Eclipse instance as AntRunner
  2. buildCorona.xml - build script file controling the build sequence
  3. customTargets.xml - build script file enabling customization of the build process, defines the map files to be fetched and the features to be built
  4. build.properties - contains the properties needed for fetching and building the sources
  • set the properties in the run script (run.bat file) to reflect the build environment:
  1. set eclipseDir regarding the Eclipse installation to be used for the build
  2. set buildDirectory
  3. set pluginAutomaticBuildDir to the absolute path of the bootstrap directory (${baseDirectory}/org.eclipse.corona/build)
  4. if java (1.4.x or 1.5.x) is not available on the classpath, set vm to the location of java (1.4.x or 1.5.x) executable
  5. set buildType to receive server or/and client corona distribution, supported values for this property: client, server, full
  • set bootclasspath property in the build.properties file to rt.jar location
  • execute the run.bat/run.sh file to build Corona project

Results of successful build process

${buildDirectory}/buildResults directory (buildResults name is a value of buildLabel property defined inside the build.properties) contains zip archive(s) with corona distribution. For 'buildType=full' two archives are created: org.eclipse.corona.client-DEMO.zip and org.eclipse.corona.server-DEMO.zip (DEMO name is a value of buildId property defined inside the build.properties).

Stages of the build process

  • preBuild - fetching and concatenating map files (in corona.map dynamic setting of cvs tag name is made on the basis of fetchTag property value defined inside build.properties)
  • fetch - retrieving project resources on the basis of the map files definition
  • generate - generating build scripts for fetched resources
  • process - compiling sources, coping results to build output directory or creating jar files containing the build output
  • assemble - creating zip archive containg all build results

Useful links concerning eclipse build process