geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hernan Cunico <hcun...@gmail.com>
Subject [Fwd: [CONF] Apache Geronimo Development: Genesis Overview (page edited)]
Date Tue, 13 Feb 2007 15:38:20 GMT
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: 	confluence@apache.org
To: 	hcunico@gmail.com



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>

Mime
View raw message