Date: 2004-03-07T09:36:20 Editor: AdamJack <[EMAIL PROTECTED]> Wiki: Gump Wiki Page: GumpInternals URL: http://wiki.apache.org/gump/GumpInternals
no comment Change Log: ------------------------------------------------------------------------------ @@ -1,25 +1,39 @@ = GumpInternals = -Processing Steps: += Processing Step #1: Constructing Memory Structures = + * The GumpMetadata is loaded (via file/HTTP) and 'completed' into the GumpModel * The GumpModel is a tree of a workspace containing modules, which contain projects - * Projects in the tree are linked (bi-directionally) via dependencies + * Projects in the tree are linked (bi-directionally) via dependencies. + * A GumpRun is build using a pattern match expression against project names, which contains the build sequence [of modules/projects]. + += Processing Step #2 : Performing the Work = + +== Packages == + * ["Packages"] are determined (and their state set to 'complete' or 'failed'). - * For updates, the build sequence of modules is traversed, any in a good state are cvs|svn updated. Any failures are propogated (see below). + +== Updating from Source Control == + + * For updates, the build sequence of modules is traversed, any in a good state are cvs|svn updated. Any failures are propogated (see StatePropogation). + + +== Build == + * The build sequence of projects is traversed, any in a good state have the following: - ** The pre-build steps are: - *** Create directories for <mkdir + 1. The pre-build steps are: + a. Create directories for <mkdir *** Delete directories for <delete Note: Currently disabled for security. ** Build using script or ant (or maven). Classpath is determined/set. ** State is set/propogated based of exit code. - ** The post-build stesp are: + ** The post-build steps are: *** Check all outputs (jars/licenses) exist, or set state to failed. *** Copy outputs to Jar repository *** 'List' certain files (maven log, junit reports, etc.) -= State Propogation = -If a project's "state" is set to smething bad (e.g. failed) then that propogates "up" to all "dependees" of that project that do not already have a bad state. When state propogates it changes (from whatever negative) to "prerequisite failed", and the originating project becomes the ["Cause"] for these projects. += Processing Results = -If a module's state is set to something bad (failed) then that propogates down to all it's projects, and in turn 'up' (to dependees of those projects). A module can be a ["Cause"]. + * RSS and Atom feeds are generated be walking the tree. + * A results.xml is generated, by walking the tree. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
