You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gump.apache.org by sa...@apache.org on 2005/09/02 19:28:42 UTC
svn commit: r267234 -
/gump/branches/Gump3/pygump/python/gump/engine/mavenizer.py
Author: sanders
Date: Fri Sep 2 10:28:40 2005
New Revision: 267234
URL: http://svn.apache.org/viewcvs?rev=267234&view=rev
Log:
documentation as a docstring in mavenizer.py, contributed by Justin Merz (jrmerz at ucdavis.edu)
Modified:
gump/branches/Gump3/pygump/python/gump/engine/mavenizer.py
Modified: gump/branches/Gump3/pygump/python/gump/engine/mavenizer.py
URL: http://svn.apache.org/viewcvs/gump/branches/Gump3/pygump/python/gump/engine/mavenizer.py?rev=267234&r1=267233&r2=267234&view=diff
==============================================================================
--- gump/branches/Gump3/pygump/python/gump/engine/mavenizer.py (original)
+++ gump/branches/Gump3/pygump/python/gump/engine/mavenizer.py Fri Sep 2 10:28:40 2005
@@ -22,8 +22,67 @@
def _parse_maven_file( project, download_func, get_vfs, maven_build_goal ):
- #TODO: implement this!
-
+ """
+ /****************************\
+ | MAVEN PLUGIN FOR GUMP3 |
+ \****************************/
+
+ This version of gump will directly bootstrap maven so that a maven
+ project file is added to the gump workspace. There are still several
+ open issues in this project.
+
+
+ ***setting up a maven project***
+
+ In your module description you need to add type=.maven. to the end of
+ that tag.
+ EX:
+ <module name="db-torque">
+ <url href="http://db.apache.org/torque/"/>
+ <description>
+ Java based build tool
+ </description>
+ <project href="project.xml" type="maven"/>
+ </module>
+ If any specific maven goals need to be added to the build a
+ goal=.maven_goal. may also be added.
+ EX:
+ <project href="maven_test.xml" type="maven" goal=.jar./>
+ Of course you will need ant and maven in the project build.
+
+
+ ***Setting up maven gump id dependencies***
+
+ Currently there is a mismatch between maven and gump ids(see
+ wiki.apache.org/gump). The fix right now is a mapping between these
+ mismatches that can be found in gump/util/mavenToGump.conf. When new
+ mismatches are discovered they should be added to this file(follow
+ format already in file).
+
+
+ ***How it works***
+
+ When loader.py is creating the dom tree from the workspace, it checks
+ for the type=.maven. flag. If one is found mavenizer.py is called.
+ First the maven file will be opened using _resolve_maven_imports.
+ Once the dom is created, a check is made for any extend file included
+ in the maven project(maven projects may be defined over more than one
+ project). _parse_maven_file goes through the maven project descriptor
+ gathering all the information needed/given to create a gump descriptor.
+ Once completed a new gumped_maven_project.xml file is created. This
+ may eventually be all internal but for now it is a visible file that
+ you can check once the gump run is complete. During the creation of
+ this file any ID mismatch's are handled. Once creation is complete the
+ file is saved and closed, with the file location being passed back to
+ loader.py. Loader.py then uses that file instead of the original maven
+ descriptor to create the gump tree. When .do-builds is passed by
+ command line the maven-plugin (similar to the ant plugin) is called to
+ build any maven project.
+
+ *Note: mavenizer.py and the maven plugin for gump3 were originally
+ implemented by Justin Merz as the Google 2005 summer of code project.
+ """
+
#deal with extended maven projects
extend = 0;
hasExtend = _find_element_text(project, "extend")