Martin Taal's Blog

About EMF, Teneo, CDO, Texo, Hibernate, Open-Source ERP and other topics

Archive for March 2010

Teneo: documentation moved to http://wiki.eclipse.org/Teneo and convenience update sites

leave a comment »

This post is to ‘broadcast’ some changes in the Teneo docs location and some convenient update sites for Teneo.

The Teneo documentation has been moved completely to the eclipse wiki: http://wiki.eclipse.org/Teneo
The Hibernate specific part can be found here: http://wiki.eclipse.org/Teneo/Hibernate
The EclipseLink specific part can be found here: http://wiki.eclipse.org/Teneo/EclipseLink

The latest successful build can be retrieved from this update site:
https://build.eclipse.org/hudson/job/emf-teneo-nightly/lastSuccessfulBuild/artifact/build/result/p2site/

There is a new update site which provides the Teneo dependencies: http://www.elver.org/eclipse/update/

The tutorials have been revisited and a new examples project for Hibernate has been created to facilitate starting with Teneo:
http://wiki.eclipse.org/Teneo/Hibernate/Download_and_Install#Download_Example_Project_for_Tutorials

Written by martintaal

March 4, 2010 at 5:00 pm

Posted in Teneo

Building (Teneo) with Buckminster and Hudson

with 3 comments

Recently I had to make a decision on how to setup a new continuous build environment for Teneo. After some studying I came to the conclusion that there where two main options: Athena and Buckminster. In both cases I wanted to make use of Hudson to trigger the builds and collect build results.

For Teneo I chose Buckminster because:

  • I liked the way it auto-retrieves dependencies from cvs, update sites (local and remote) and many other source formats.
  • Dependencies are mostly derived automatically from the MANIFEST.MF and feature.xml files in the plugin/feature projects.
  • Buckminster creates workspaces with target platforms, the main other steps (building, testing) are done from these. This is a quite understandable process as it is very similar to a setup in the IDE itself.
  • Buckminster has good documentation and an active forum/newsgroup with very responsive committers/developers.

The Teneo build is done by an ant script which calls Buckminster to execute specific steps. The build consists of two parts: build/create update site and build test plugins/run test cases.  For a detailed description of the Teneo build setup (Buckminster and Hudson) see this wiki page.

With the new build setup it is very easy to do a local Teneo build:

cvs -d :pserver:anonymous@dev.eclipse.org:/cvsroot/modeling co -d \

org.eclipse.emf.teneo.releng.buckminster \

org.eclipse.emf/org.eclipse.emf.teneo/releng/org.eclipse.emf.teneo.releng.buckminster

cd org.eclipse.emf.teneo.releng.buckminster

ant

This executes the same steps as with a hudson-hosted build: download buckminster, check out all the projects from cvs, do a build of the core Teneo plugins, download the test projects from cvs, build them and run the tests. The output of the build can be found in the build folder which is created next to the org.eclipse.emf.teneo.releng.buckminster folder. The workspaces (build/workspace and test/workspace) can be opened in Eclipse.

The build is setup as a job in Hudson hosted at eclipse.org, Hudson takes care of the following:

  • watches cvs for changes
  • triggers a build when a cvs change is detected, triggering a build means for Teneo starting an ant script.
  • collects the build result (failure/success) and test results, Hudson reads defined output folders/locations and parses test result xml files.

To see the build running live on Hudson hosted at eclipse.org see this page (note link can require login).

I have written a fairly detailed description on how the Teneo build has been setup (using Buckminster and Hudson). I think/hope that it can be useful for other eclipse.org projects to look at when setting up their build using Buckminster/Hudson.

PS: for those interested in build systems, it is interesting to follow the b3 developments. B3 is an incubating EMFT project which aims to simplify software build and assembly.

Written by martintaal

March 2, 2010 at 6:02 am

Posted in Teneo