Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [pde-build-dev] Re: [osgi-dev] Continuous Integration of OSGi Bundles



On 5/1/07, Jeremy Volkman <jvolkman@xxxxxxxxx> wrote:
I'm including pde-build-dev in the To: list in hopes of moving this to a more proper place. Please send replies to that list. :)

Jeff,

I think for optimal performance, the build server would keep a local copy of the repository and simply perform an update on it, instead of checking out projects each time.  Our current system keeps local checkouts of each project, but it does so in a way that requires per-project updating.  The optimal way would be to tell the builder to checkout a particular subversion path ( e.g. ,http://svn.company.com/osgi-project/bundles) which contains some or all of the bundles within subdirectories ( e.g., http://svn.company.com/osgi-project/bundles/com.company.somebundle), and then determine which bundles are contained within, if any. If the bundles path contained 150 bundle subdirectories, it would be much faster to update the root bundles path than to update each of the 150 bundles paths individually.

Perhaps our SVN environment is slow for some reason, or JavaSVN is slow, I haven't investigated very closely.  At any rate, I would imagine an extended PDE Build would allow stuff like this to be configurable.


I am successfully using Maven to build my pde projects in a continuous integration environment (CruiseControl). Maven is calling pde build via Ant to do the actual work.

However the biggest benefit of Maven is gained by locating the built bundle artifacts in Maven's repository so that the built artifacts can be shared easily.  This makes creating an Eclipse PDE target very simple and reproducible.

Each plugin (or product, or feature, etc) is isolated from each other in the build process to make continuous integration possible.  Most of this is written up at http://docs.codehaus.org/display/MAVENUSER/Building+Eclipse+RCP+and+RCP-based+Applications

Something which be of benefit is the exporting of the base Eclipse bundles (+Callisto) into the central maven repository (which I understand there is some discussion underway to organise).

Barrie

Back to the top