Sequoyah/Build Guide

From Eclipsepedia

Jump to: navigation, search

Contents

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/tools/sequoyah/indigo/build/sequoyah.
For the above folder, you will find subfolders for the code you want to build (trunk or some branch). For the trunk and SR branches, the files are already edited. ;)
Below is a checklist of the minimal stuff to fill in each file (change the "PUT_YOUR_WHATEVER_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. (The default is to checkout android, device,localization and vnc)

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?

Under /opt/public/tools/sequoyah there are some build scripts:

  1. For Indigo packages: indigo_sequoyah_build.sh

Tagging builds (under development)

Before the build server death, there was a script that gave you the option to tag your build: sequoyah.sh.
Just call it using ./sequoyah.sh <branch_to_checkout> [publish] [-tag <tagName>]
It will be restored as soon as possible, but in the meanwhile, consider tagging builds manually, since it would help to keep track of the project status.

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/tools/sequoyah/indigo):

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.