You are viewing a plain text version of this content. The canonical link for it is here.
Posted to alexandria-dev@jakarta.apache.org by Nicola Ken Barozzi <ni...@apache.org> on 2002/08/14 12:54:55 UTC

[RT] Making G.U.M.P work for day2day builds

G.U.M.P - Global Unified Management Process  ;-)

I've started to integrate Gump in a normal Ant build process, for 
day2day work.
If projects use it this way, the descriptors would be always fresh.

Ok, I know Sam uses it regularly ;-) but it has to be made more simple.

So, what I have done it make a directory in my ant installation:

   anthome/tools/gump

And I put the descriptors there

    anthome/tools/gump/profile
    anthome/tools/gump/project (not needed, each project has his)
    anthome/tools/gump/repository
    anthome/tools/gump/server

And the workspace under anthome directly.

    anthome/workspace.xml

And the main Gump scripts (more on that later) here

    anthome/gump.xml

            <><><><><><><><><><>

Let me describe how a user might want to make Gump work

The user installs Ant+Gump, and wants to get build a project.

The user then does:

   cd directory/where/to/put/the/project
   ant /anthome/gump.xml get -Dmodule=jakarta-commons

gump.xml then looks in the workspace looking for a profile that has the 
module defined.
If it doesn't <new-proposed-feature>it goes on the net to a known gump 
URI, or to a specified use URL, and asks for the profile that contains 
it. It downloads it to the profiles dir, scans it for the module 
descriptor *URL* and downloads the whole module to 
disk.</new-proposed-feature>

At that point the user can build the project using the gump.xml ant file 
that works in a similar fashion to the usual gump.

The problem here is that once Gump finds that the project has a 
dependency, it goes to the profile and gets the descriptor... but it's 
from a remote URL, not the local version which it needs!

So it would seem that the module descriptor URL should be described in 
another file that lists all the remote URLs, from which GUMP can 
download them and put them locally.

Could this work, that we make a module-list.xml containing all the URLs 
of the projects, and have the profile(s) reference the local version?

How can there be multiple profiles in this vision?

And if a project like Avalon makes his own profile, I download the 
Avalon-framework module but the profile is missing... so this 
module-list.xml would need also that each module has the URL of the 
relative profile used.

Of course, there is a need of the repository info to be downloaded too...

So it would be:

   gump-main-profile.xml

containing

  <profile name="gump">

   <!-- Apache.Jakarta -->

   <module href="http://.../~checkout~/jakarta-ant-myrmidon/gump.xml"/>
   <module href="project/jakarta-avalon-cornerstone.xml"/>

...


   <!-- CVS Repository definitions -->
   <repository href="http://jakarta.apache.org/gump/repo/dbxml.xml"/>
   <repository href="http://jakarta.apache.org/gump/repo/devworks.xml"/>
...

   <!-- server definitions -->
   <server href="http://.../daedalus.apache.org.xml"/>
   <server href="http://.../icarus.apache.org.xml"/>

</profile>

And each Gump profile should have a reference to the suggested profile

   <profile name="XXX"/>

-- 
Nicola Ken Barozzi                   nicolaken@apache.org
             - verba volant, scripta manent -
    (discussions get forgotten, just code remains)
---------------------------------------------------------------------


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Why Antgump stopped and Vindico started?

Posted by Nicola Ken Barozzi <ni...@apache.org>.
I'm curious, why Antgump stopped and Vindico started?

-- 
Nicola Ken Barozzi                   nicolaken@apache.org
             - verba volant, scripta manent -
    (discussions get forgotten, just code remains)
---------------------------------------------------------------------


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>