See my comments inline.

--------------------------------------------------
From: "ant elder" <[email protected]>
Sent: Wednesday, September 30, 2009 11:52 PM
To: <[email protected]>
Subject: Making the 2.x build more modular

This has come up in a few places recently and having just spent a bit
of time building in 1.x for the 1.5.1 release i think we really do
need to do something to prevent the 2.x build becoming as big an
unwieldy as the 1.x one, so how about discussing various options for
things to try?

One recent thing was the "More selective building option" thread and
having maven profiles for building subsets of modules. That seems like
a quite non-invasive way to start trying as profiles can be added and
tested without impacting anyone, but in the long term it would get
quite complicated and require lots of profiles replicated around many
pom.xml's so it may not be a long term solution.

No matter how many maven profiles are added, I want to make sure people do a full clean build before
committing code.


Restructuring the directory locations is another - so separate folders
for core modules/samples/itests and other foders for each extension-
that makes it quite simpler to see whats going on and easy to build
smaller pieces, but its harder as it needs more upfront consensus.

-1.


Another consideration is how things get distributed and released - one
big distribution or several, releases of all parts in step or
independent? From past discussions that cold be quite hard to get
agreement on so i wonder if build/distribution/releases could be kept
as separate discussions?

I feel strongly that we should align the maven profiles with the packages that we distribute. The basic idea is to provide pre-bundled offerings that are composed out the Tuscany modules to fit different needs. Allowing maven to build a set of modules is consistent with the goal to have various package options to download Tuscany distribution. We already have the features folder (some people call them profiles too, so feature == profile to avoid term confusion) to define a set of poms that group modules by functions. We should create maven profiles that point to such feature pom projects as well as the module projects that make up the feature.


Comments?

...ant

Reply via email to