Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Sequoyah/Build Guide"

(Download page files to update after build)
(Build files in detail)
Line 55: Line 55:
  
 
= Build files in detail =
 
= Build files in detail =
Now we have a better detailed explanation on each folder and file:
+
Now we have a better detailed explanation on each folder and file (from /opt/public/dsdp/sequoyah/helios):
  
 
=== '''build''' folder ===
 
=== '''build''' folder ===
Line 75: Line 75:
 
* build.properties
 
* build.properties
 
Contains some build definitions, like the feature to be built, the build type, the build label, eclipse location, and some other important definitions, so be careful on what you change!
 
Contains some build definitions, like the feature to be built, the build type, the build label, eclipse location, and some other important definitions, so be careful on what you change!
<br>
 
 
=== '''repos''' folder ===
 
This folder contains the repositories to compile against.
 
<br>
 
 
=== '''transformed''' folder  ===
 
This folder contains the above mentioned repositories, transformed in a usable format.
 
 
<br>
 
<br>
  
Line 92: Line 84:
 
This is the standard place for the eclipse files.
 
This is the standard place for the eclipse files.
 
<br>
 
<br>
 
  
 
= Building locally =
 
= Building locally =

Revision as of 10:11, 27 May 2010

Sequoyah Releng Build Guide

On this page you will find the explanation on how to use our build system. If you have any questions/suggestions/criticisms, please write to our mailing list.

Quick building!

If you need to start a build right away, just follow this checklist and go build! :)

How do I start a build?

First of all, you should check whether or not you need to change the build files. Keep reading!

Where are the files?

You should use your committer account information and logon to build.eclipse.org.
The files are located on /opt/public/dsdp/sequoyah/helios/build.
If you are building Sequoyah, the files will be on the sequoyah folder.
If you are building Pulsar, the files will be on the pulsar folder.
Below is a checklist of the minimal stuff to fill in each file (change the "PUT_YOUR_BRANCH/FILESET/UPDATESITE_URL/DOWNLOADSITE_URL/FEATURE/BUILDTYPE/VERSION_HERE" field):

build.xml

  • <checkout url="${svnrepo}/PUT_YOUR_BRANCH_HERE" destPath="${SOURCE_DIR}" />:

this is the branch you want to checkout and build.

  • <fileset dir="${SOURCE_DIR}/org.eclipse.sequoyah.PUT_YOUR_FILESET_HERE/" includes="**" />:

the filesets to checkout from the above branch.

customTargets.xml

  • <property name="updateSite" value="/home/data/httpd/download.eclipse.org/sequoyah/PUT_YOUR_UPDATESITE_URL_HERE"/>
  • <property name="downloadSite" value="/home/data/httpd/download.eclipse.org/sequoyah/PUT_YOUR_DOWNLOADSITE_URL_HERE"/>

the paths of the folders for the update and download sites.

build.properties

  • topLevelElementId = org.eclipse.sequoyah.PUT_YOUR_FEATURE_HERE:

this is the feature to build.

  • buildType=PUT_YOUR_BUILDTYPE_HERE:

the build type to build.

  • buildId=PUT_YOUR_VERSION_HERE:

the version of the feature.

Now, how do I start a build?

Well, now you can run one of two build scripts that we have, located at /opt/public/dsdp/sequoyah, just replace PRODUCT for sequoyah or pulsar:

  • helios_PRODUCT_build.sh

or

  • helios_PRODUCT_publish.sh

What's the difference between them?
The first one fetches, compiles, signs and places a zip in the download site URL you provided before.
The other does all that and also publishes the files as an update site (in the update site URL you also provided).

Download page files to update after build

After a successfull build, you MUST update the downloads page.
It is hosted on CVS, inside the downloads folder. You should update two files:

  • index.php: update the LATEST DOWNLOADS section with the download information from this build.
  • <buildtype>.php: update the file corresponding to the build type you just built.

Build files in detail

Now we have a better detailed explanation on each folder and file (from /opt/public/dsdp/sequoyah/helios):

build folder

  • build.xml

This is the main build file. The SVN URL to checkout is defined here, in the 'init' target, inside 'svn' task. Here you can define which components will be checked out, in case you need to modify the build.

  • customTargets.xml

Auxiliary build file. The signing and update site copy processes are defined here, in the 'post build' target. Here we have the URL definitions for the update and download sites.

ATTENTION: the folder for the signing process MUST BE the staging site defined. The build won't be signed if any other folder is specified. This is the reason why we copy the build to it and from it after the signing process.

  • build.properties

Contains some build definitions, like the feature to be built, the build type, the build label, eclipse location, and some other important definitions, so be careful on what you change!

antcontrib and svnant folders

Contain the libraries that are used inside the build scripts. They provide the <for> command and the <svn> command.

eclipse folder

This is the standard place for the eclipse files.

Building locally

You can run a local build for your testing purposes, but remember: the generated build won't be signed!

To run a local build, you have to download all the files in the org.eclipse.sequoyah.releng project and open this project in your Eclipse. You will have to change the paths on build.xml and on build.properties. Also remove the signing process commenting its related lines on customTargets.xml.

Finally, start the build by right-clicking the build.xml file in the releng project inside Eclipse and choosing Run as > Ant Build.

Back to the top