New Build Process (M5)

For any type of build, you must do the initial configuration step below. There are 3 styles of builds, the full build as done on the build server, a component build and a module build.

Configuration

  1. Extract BUILD/zero.build
  2. Copy into ant-deps
    1. JSCH 0.1.29 (ssh & scp) from http://www.jcraft.com/jsch/index.html
    2. Emma 2.0+ (zero repo_update emma:emma:2.0+)
    3. Emma_Ant 2.0+ (zero repo_update emma:emma_ant:2.0+)
Comment (JDO): Is Emma optional (ie just wanting to do a doc build)?
Comment (JDO): 
repo_update Requires either a built or downloaded cli from a recent M5
should be noted in a prior step?
  1. Copy into prereqs
    1. jms.jar - svn co http://xdsource.rtp.raleigh.ibm.com/svn/zeroprivate/trunk/CALICO/zero.messaging.externalclient/lib/jms.jar
    2. messaging.connections prerequisites (place in zero.messaging.connection.dependencies folder in prereqs) - svn co http://xdsource.rtp.raleigh.ibm.com/svn/zeroprivate/branches/b_messaging/zero.messaging.connection.dependencies/lib
    3. messaging.broker prerequisites (place in zero.messaging.broker.dependencies folder in prereqs) - svn co http://xdsource.rtp.raleigh.ibm.com/svn/zeroprivate/branches/b_messaging/zero.messaging.broker.dependencies/lib
  2. Build zero.build
    1. cd BUILD/zero.build
    2. ant

The Build aka BUILD/zero.build

The complete build only requires BUILD/zero.build. As part of the configuration above, you already have the minimum amount of code to begin.

Next modify cc.properties and insert your svnuser id. This will be used to checkout code from SVN.

Also, if you JDK is not located at /opt/ibm/java2-i386-61/bin/java then you should add test.jdk.path to cc.properties and set the value to the full path to your Java executable.

To run a build including a checkout

  1. ant -Drelease=trunk -f cc-build.xml BUILD
  2. ant -Drelease=trunk -f cc-build.xml TEST

To run a build without checkout

  1. ant -Drelease=trunk -Dskip.checkout=true -f cc-build.xml BUILD
  2. ant -Drelease=trunk -f cc-build.xml TEST

Run clean, ant -Drelease=trunk [-Dsvn.location={path to the root}] -f cc-build.xml clean to wipe out build artifacts

To run a build against code already checked out on disk in a specific location

Note
Make sure you set the {path to root} to a fully qualified directory location and do not use ~ for your home folder
  1. ant -Drelease=trunk -Dsvn.location={path to the root} -Dskip.checkout=true -f cc-build.xml BUILD
  2. ant -Drelease=trunk -Dsvn.location={path to the root} -Dskip.checkout=true -f cc-build.xml TEST


Component build e.g. CORE/zero.core.build

To build a component, you first follow the configuration steps above.

You either have a command line that you have downloaded or you have a command line that you have built.

To perform any of the build commands, issue

  • ant build
  • ant publish
  • ant test
  • ant clean

Defaults

zerohome
{tmpdir}/zerocli
repository
{zerohome}/zero-repository
prereqs.dir
{zero.build}/prereqs
zero.build
../../BUILD/zero.build

Build a module

A module build is similar to a component build except you must specify where zero.build is located.

ant -Dzero.build={zero.build} {command}

Defaults

zerohome
{tmpdir}/zerocli
repository
{zerohome}/zero-repository
prereqs.dir
{zero.build}/prereqs


Building the command line

  1. Extract CORE/zero.core.build, zero.cli, zero.cli.tasks and zero.kernel
  2. From CORE/zero.core.build
    1. ant -Dzero.build=../../BUILD/zero.build cli-build

You will now have a bootstrapped CLI installed at zerohome.

You can change the install location by adding a -Dzerohome={zerohome dir}

Defaults

zerohome
{tmpdir}/zerocli


Common errors

Using the wrong repository

You can dictate the repository to use by adding a -Drepository={path to repository} to the command line.

A repository that does not exist

  • If you were using a downloaded Command Line, it will rebuild the repository for you as needed.
  • If you were using a built Command Line, you will need to re-install the CLI or hand build the repository.
    • To re-install the CLI, just go to CORE/zero.core.build, and type ant install-cli.
    • To build the repository by hand, see the build target in BUILD/zero.build/ant/component.xml.


Tasks
  • build
    • resolve
    • compile
  • publish
  • test
  • clean

r1 - 30 Mar 2008 - 01:14:40 - fraenkel
Syndicate this site RSS ATOM
Copyright 2007 © IBM Corporation | Privacy | Terms of Use | About this site