Hey Jason,
I saw your update on this page, is there anything in this article still valid? 
should we update it or get rid of it?

http://cwiki.apache.org/GMOxDEV/genesis-overview.html

Cheers!
Hernan

-------- Original Message --------
Subject:        [CONF] Apache Geronimo Development: Genesis Overview (page 
edited)
Date:   Tue, 13 Feb 2007 01:29:00 -0800 (PST)
From:   [EMAIL PROTECTED]
To:     [EMAIL PROTECTED]



Page Edited : GMOxDEV <http://cwiki.apache.org/confluence/display/GMOxDEV> : Genesis Overview <http://cwiki.apache.org/confluence/display/GMOxDEV/Genesis+Overview>

Genesis Overview <http://cwiki.apache.org/confluence/display/GMOxDEV/Genesis+Overview> has been edited by Jason Dillon <http://cwiki.apache.org/confluence/display/~jdillon> (Feb 13, 2007).

(View changes) <http://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=19864&originalVersion=5&revisedVersion=6>

Content:
        

This content is very old...


   Genesis Overview

Genesis is a simple project that contains modules that help in the creation of other projects. It is nothing fancy, just a collection of modules to provide shared/common configuration and a place to put G-related plugins.

The idea is to keep all of the common bits in one place, so that we can easily reuse that configuration across projects.

Currently there are 2 trees: config and plugins

The config tree contains modules which provide the shared/common configuration, and plugins provide support modules (like plugin- support) and custom plugins.


     config/checkstyle-config

This module contains the Checkstyle configuration, taken from etc/ geronimo_checks.xml. It is installed as a build extension, so that its contents are available to be loaded as resources. This allows the Checkstyle plugin to be configure with just this (no need to use ../../ which won't work when building with Continuum, or to duplicate the config in each module):

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-checkstyle-plugin</artifactId>
   <version>2.1</version>
   <configuration>
       <!-- Pulled as resource from checkstyle-config plugin -->
       <configLocation>org/apache/geronimo/checkstyle.xml</ configLocation>
   </configuration>
</plugin>

While it is possible to use a URL for this configuration, to keep the build in sync with the SVN repo I do not recommend using remote resources whenever possible.


     config/logging-config

This provides the common log4j.properties used by all modules when running tests. This is a normal dependency, included in the test scope.

The key thing that this provides is that all tests will create a ${basedir}/target/test.log file that has the full logging detail for surefire tests.

IMO tests by default should produce no output so that it is easy for folks to see what is passing and what is failing on the build console. For failure details, the log file + surefire reports can be used.

We can also add a few properties to control the default level that goes to console for easy development, but I have yet to implement that.

There is no need to add per-module log4j.properties configuration files anymore.


     config/project-config

This module contains the common m2 build configuration that most every G-related project needs to produce builds, generate sites, run tests, etc.

This is the /parent/ of each projects /root/ pom.

Have a look yourself, but it basically sets up the default mailing lists, issue tracking, etc.

Here you will find where the other config modules are included into the build.

Also, this is where plugin versions are controlled, so that we don't run into problems in the future when plugin vendors release new versions that are incompatible with the build configuration that is checked in to SVN. This is key to support building projects that are pulled from older branches.


     plugins/plugin-support

This is a jar module, that contains common code that our plugins use. Right now that is simply MojoSupport, which handles setting up logging and provides exception handling at the root so that extensions do not need to worry about that.

As we add more plugins expect more commonly used code to move here.

Powered by Atlassian Confluence <http://www.atlassian.com/software/confluence/default.jsp?clicked=footer> (Version: 2.2.9 Build:#527 Sep 07, 2006) - Bug/feature request <http://jira.atlassian.com/secure/BrowseProject.jspa?id=10470>

Unsubscribe or edit your notifications preferences <http://cwiki.apache.org/confluence/users/viewnotifications.action>

Reply via email to