I have managed to get each individual project to build, so I feel like I am on my way :) Thanks for the help.
Thanks,
Geoffrey
Vincent Massol wrote:
Hi Geoffrey,
Hmm... No, I don't really have something complete and visible that would show you how to implement it. I have this example from 2003 though (http://blogs.codehaus.org/people/vmassol/archives/everest.zip), but bear in mind that this is a bit oldish and little things have been improved (like using multiproject instead of the reactor).
There is an example in upcoming Maven book (to be published early this summer by O'Reilly) but it's a webapp example not a full-fledged J2EE example. I could send it to you privately if you want.
WRT the container folder: - It contains complete container configuration to make the applications in that container runnable. For example, take WebLogic. It means that the weblogic subprojects in container/ has a goal that generates a weblogic domain from scratch (including config.xml, security files, etc). It also has goals to start weblogic and run functional tests on it. Of course it's better if these goals are provided by an existing plugin. I've done it for jboss by including a jboss plugin in the Maven distribution. It creates a jboss server configuration and can start/stop jboss. These container configuration builds should take into account the environment that is built as configuration for a developer platform is not the same as configuration for a pre-production platform that uses clusters, etc.
The node folder is the set of containers that are installed on a single machine type (I say type because machine can be in clusters). It should contain scripts to start/stop the different container on that physical machine type.
And last, I've now added a system folder that represents the full system. It can have goal that allow installing the full system on a set of machines. No, sorry there's no plugins right now for this, you'll have to write it yourself ;-) This is where I put and run end 2 end system tests.
For CC, you could use CC's multiproject's feature but I personally don't like it (I don't like how CC handles project dependencies) and I would recommend using the Maven multiproject to handle project deps. Yes, this means building the whole project when there's a change. However you could simplify this by not running things like the web sites, etc.
Thanks -Vincent
-----Original Message----- From: Geoffrey Dagley [mailto:[EMAIL PROTECTED] Sent: mercredi 13 avril 2005 00:01 To: [email protected] Subject: Enterprise Build Presentation sample
I have recently started using Maven and I am looking at the presentation on Enterprise Builds by Vincent Massol http://www.pivolis.com/pdf/Enterprise_Builds_V1.0.pdf
I am wondering if there exists a zip file with the sample application that could be used as a starting point for new applications? I am very impressed with the features of Maven, but I am having difficulty getting out of the Ant mindset. I am not looking for anything too complex, but I am interested in the integration and functional testing aspects. I would also like to ask about the purpose of the container folders in the file structure.
We are currently using CruiseControl for our continuous build, but it tries to build the ENTIRE project every time something is changed, so I would be interested in how a project like this might be setup for CruiseControl as well.
If there is a tutorial (beyond the intro on the Maven site), maybe I have missed it. Please feel free to point me in the right direction.
Thanks,
Geof
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
-- Geoffrey Dagley [EMAIL PROTECTED] ZMS Technologies
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
