STP Build Process and Procedures
This page is to collect general information and references about the STP build process and procedures. STP build process is refactored from [WTP Build Process and Procedures], so you can also use the information found in those pages.
Thanks, Naci Dai, 29 April 2006
STP builds are currently running on a trial basis. There is no build schedule.
However, a typical weekly I-Build needs contributions to be released by EOD Wednesday's, we smoke test that build on Thursday's, and to declare it by Friday's at noon (eastern time).
The platform's releng tool should be used to "release" projects to the map files. The release is done with:
- commiting changes to CVS.
- tagging the module (plugin or feature) using the versining standard described below
- release the tagged verion by modifying the corresponding map file in build/releng/maps
The releng module is monitored by cruisecontrol. Whenever there is change a new build will automatically trigger. Once teh build is complete, it is automatically delievered to: .
When a build is declared (i.e. becomes official), it is moved to . The declaration process is manual.
As projects are versioned, please use the "standard" format, in UTC time, following vYYYYMMDDHHMM. This is important as these cvs tags become the qualifier field of the plugin's version.
Note: do NOT use underscores in the CVS version, as there are some issues with Eclispe tooling when it finds an underscore in a plugin or version qualifier, see .
How to watch the builds
Do you enjoy watching screens of console logs fly by as much as I? Waiting for that joyous final result? Well then you too can do that with the following information.
We are currently doing our builds on build.eclipse.org. Any committer can logon to that server using their committer ID and password. I use something like
Once there the main work we do is in /shared/webtools/. If you want to "watch" the console log while the compiiler and ant files are running, you can use
tail -f /shared/stp/build/cruise/cruise.out -n200
to watch the last part of the main log (during compile, etc.). This is the fastest way to find out if the build failed. Once it does fail, there's some diagnostic messages that might be informative in the last 20 or 50 lines. (Do be careful, though, the build always says "Build Successful" as its very very last message, and that message just means all the ant scripts were any to completely execute (not that they did so successfully).
During tests, you can watch test results console at,
tail -f /shared/stp/test-stp-I/results/consolelogs/stptestlog.txt -n200
Background and Further Reading References
We in STP following the basic process and recommendations for versioning as the base Eclipse platform. Plugin Versioning
Very helpful guide to builds and automatic testing. Build and Test Automation for plug-ins and features
Good step-by-step on how to do updates. How To Keep Up To Date
We base our builds on the Eclipse platform's "basebuilder". Platform-releng
Our basic server configuration and cruise control triggers is handled by the STP project build/cruise directory.
And ... never forget Eclipse Help ... search for things related to update manager, PDE, features, site.xml, etc.