Jump to: navigation, search

Difference between revisions of "E4/Builds"

< E4
(Milestone Builds)
(Milestone Builds)
Line 10: Line 10:
  
 
<tr>
 
<tr>
<td>Tuesday, 08:30 EDT</td>
+
<td>Every night, 19:30 EDT</td>
<td>M3 Candidate</td>
+
<td>M4 prep build</td>
</tr>
+
 
+
<tr>
+
<td>Tuesday, 19:30 EDT</td>
+
<td>M3 Candidate</td>
+
</tr>
+
 
+
<tr>
+
<td>Wednesday, 08:30 EDT</td>
+
<td>M3 Candidate</td>
+
</tr>
+
 
+
<tr>
+
<td>Wednesday, 19:30 EDT</td>
+
<td>M3 Candidate</td>
+
</tr>
+
 
+
<tr>
+
<td>Thursday, 08:30 EDT</td>
+
<td>M3 Candidate</td>
+
</tr>
+
 
+
<tr>
+
<td>Thursday, 19:30 EDT</td>
+
<td>M3 Candidate</td>
+
 
</tr>
 
</tr>
  
  
 
<tr>
 
<tr>
<td>Friday, 08:30 EDT</td>
+
<td>Friday, June 19th, 08:30 EDT</td>
<td>Final build towards M3 - we'll need a go on this build</td>
+
<td>Final build towards M4 - we'll need a go on this build</td>
 
</tr>
 
</tr>
  

Revision as of 12:04, 8 June 2009

Builds

Milestone Builds

Date Build
Every night, 19:30 EDT M4 prep build
Friday, June 19th, 08:30 EDT Final build towards M4 - we'll need a go on this build

Integration Builds

E4 Integration Builds
Date Time Frequency
Thursdays 19:30 EST Weekly

e4 Downloads Page

Submitting For the Build

In General:

Checking in code: The checkin comment should at a minimum include "bug #", and preferably be of the form "bug # summary"

For the build:

Tool: Teams should use the "Eclipse Releng Tools" to update their releng project for each build. The releng tools can be installed from the update sites already included in 3.5.

Install-Releng-Tools.png

Tags: tags should be of the form v<date>, so v20081120 or v20081120-1300

Procedure:

  1. check out your team releng project from e4/releng
  2. use the psf files to check out your core plugins, tests, and examples
  3. Run Team>Release from the context menu:
    1. Select your team's releng project, like org.eclipse.e4.ui.releng.
      Release-1.png
    2. Select the projects you want to release from your map file.
      Release-2.png
    3. You can review the changed projects in this pane. Make sure 'Generate Build Notes' is selected.
      Release-3.png
    4. Copy out the build note changes so you can send an email to e4-dev@eclipse.org, with a subject that starts with [releng]. You don not have to select a build notes file to continue.
      Release-4.png
    5. Enter the release tag for you build. This would normally be the build time and date with a v in front, v20090101-1930
      Release-5.png
    6. You can review the changes to your map file here, or simply continue.
      Release-6.png
    7. Commit the changes so they will be picked up by the I-build


Versioning Plugins: Teams should try and follow the standard versioning rules posted at Version_Numbering. If you need to copy over an existing eclipse project to make changes, please increment the minor number by 100. i.e. 3.5.0 becomes 3.105.0. When you need to break API, then update the major number. i.e. 3.105.0 becomes 4.0.0

Build Infrastructure

We run our builds on build.eclipse.org with a local userid, e4Build.

The builds run and publish tests results.

Build Scripts

The main build project is in e4/releng/org.eclipse.e4.builder. We use 2 main bash scripts for building. start.sh will build a feature and generate repo data if necessary. runBuild.sh controls the build. It checks out the eclipse basebuilder and the e4 builder project. It requests the building of all of the e4 features, and starts the testing, and publishes the results to http://download.eclipse.org/e4/downloads/

start.sh runs the PDE builder using org.eclipse.e4.builder/builder/general as the ${builder} property, and builds the different features requested by runBuild.sh.

Machine Setup

There are a number of directories that need to be available to run a build.

  • /opt/public/common: the java installs can be appropriate for your architecture.
    apache-ant-1.7.0/         ibm-java2-ppc-50@      ibm-java-jdk-ppc-60@
    flex_sdk_3.2.0.3794_mpl/  ibm-java2-ppc-50-old@  ibm-java-ppc-60@
    ibm-java2-142@            ibm-java2-ppc64-50@
    
  • /shared/eclipse/e4/flex_sdk_3.2.0.3794_mpl
  • /shared/eclipse/e4/build/e4

To run the tests, we need a virtual X server on :8:

Xvfb :8 -screen 0 1280x1024x24 -auth auth.cfg

Where auth.cfg contains at least:

localhost


TODO

  • sign the build.
  • generate a zip with 2 projects, org.eclipse.swt.e4 and org.eclispe.swt.e4.jcl, that can be imported into a workspace in an eclipse with the ActionScript tools installed.
  • Work with the Common_Build_Infrastructure to host our builds.
  • Teams need to generate source features
  • Update the build email to include
    • did the tests pass or fail, and
    • for a compile error, where should people look

CVS

The resources, ui, and swt teams now have plugins in their team area in the e4 project. Our project is under :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse


Resources

The resources CVS structure is:

  • e4
    • org.eclipse.e4.resources
      • bundles
      • doc
      • examples
      • features
      • tests
    • releng
      • org.eclipse.e4.resources.releng

The org.eclipse.e4.resources.releng contains the map files for building as well as Team Project Sets that should be used for checking out the projects to be worked on.

Resources currently has 4 features. 2 feature patches for the plugins (one for rcp, one for platform), a feature that contains the 2 patches, and a test feature for the tests.

Setup/Restrictions

Resources can currently update a 3.5 SDK I build and run.

UI

The UI CVS structure is:

  • e4
    • org.eclipse.e4.ui
      • bundles
      • doc
      • examples
      • features
      • tests
    • releng
      • org.eclipse.e4.ui.releng

The org.eclipse.e4.ui.releng contains the map files for building as well as Team Project Sets that should be used for checking out the projects to be worked on.

UI currently has one main feature for the modelled workbench and one feature for the demos. The build master feature, org.eclipse.e4.master, is also in UI for now.

Setup/Restrictions

UI currently requires EMF 2.4.1 or 2.5.0 in installed on 3.5 in order to run. They can be installed from the update site included with the I builds.

SWT

The SWT CVS structure is:

  • e4
    • org.eclipse.e4.swt
      • bundles
      • doc
      • examples
      • features
      • tests
    • releng
      • org.eclipse.e4.swt.releng

The org.eclipse.e4.swt.releng contains the map files for building as well as Team Project Sets that should be used for checking out the projects to be worked on.

SWT has 2 features, one for the ActionScript tools and another for the ActionScript tests.

Setup/Restrictions

To update to the ActionScript tools you must first download and install the Open Source Flex SDK.

Setup Flex environment:

  1. Download and install the Adobe Open Source Flex SDK (available from http://opensource.adobe.com). NOTE: The path where you install the Flex SDK must contain no spaces. This is due to a bug in FCSH.
  2. update your eclipse.ini file and add another line at the end, -Dflex.sdk=<your path to the installed sdk>

Then you can update to the ActionScript tools. To work on the tools themselves, you must also set the FLEX_SDK classpath variable in Window>Preferences>Java>Build Path>Classpath Variables to point to the sdk location.


To work on org.eclipse.swt, org.eclipse.swt.e4.jcl, org.eclipse.swt.e4.examples, and org.eclipse.swt.examples you need to create a Linked Resource variable, WORKSPACE, that points to your current workspace root, from Window>Preferences>General>Workspace>Linked Resources. Also if .classpath_flex exists it must be copied to the .classpath entry.